Incorrect solution method was returned by opSplittin, resulting in an incorrect error message in the soil balance check in coupled_em.
Also addresses #441 because this fix uses the stateTypeSplit variable, inside what was previously called the stateTypeSplit DO loop. The loop construct is renamed to stateTypeSplitLoop.
Solution method 3 does not exist; only 1 (fullyCoupled) and 2 (stateTypeSplit) are currently available in opSplittin.f90. opSplittin returns solution method 3 because the splitting is handled inside a DO loop, and the loop's index variable is used to report the solution method. Fortran increments the loop index at the end of each iteration and terminates the loop if index > stop_value. In the case of solution method 2, the loop is not terminated early if a solution is found and the index is thus incremented to 3. This stops the DO loop stops because 3 > 2 but the index stays at the incremented value and thus no longer matches the solution method. This fix prevents this from happening.
Incorrect solution method was returned by
opSplittin
, resulting in an incorrect error message in the soil balance check incoupled_em
.Also addresses #441 because this fix uses the
stateTypeSplit
variable, inside what was previously called thestateTypeSplit
DO loop. The loop construct is renamed tostateTypeSplitLoop
.Error message before fix:
Solution method
3
does not exist; only1
(fullyCoupled) and2
(stateTypeSplit) are currently available inopSplittin.f90
.opSplittin
returns solution method 3 because the splitting is handled inside a DO loop, and the loop's index variable is used to report the solution method. Fortran increments the loop index at the end of each iteration and terminates the loop if index > stop_value. In the case of solution method2
, the loop is not terminated early if a solution is found and the index is thus incremented to3
. This stops the DO loop stops because 3 > 2 but the index stays at the incremented value and thus no longer matches the solution method. This fix prevents this from happening.Error message after fix: