Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'extra_precision_control' into release-clm5.0
Add CN prec. control call to fix problems related to small neg. values Small negative values (roughly roundoff-level different from zero) in frootc (and possibly other quantities) were occasionally creating problems with carbon isotope fluxes and FPI in the first time step of the year, at the time of transient landcover change. This tag fixes the problem by introducing an extra call to SoilBiogeochemPrecisionControl in between computing the patch-level transient landcover fluxes and moving these to column-level. In particular, this truncates small negative values of decomp_cpools_vr_col to zero, which prevents the previous blow-ups. For most of the problematic fields, the explanation seems to be: frootc can sometimes be negative; this is intentional. Negative frootc causes negative dwt_frootc_to_litter if the patch in question is shrinking. The resulting negative fluxes cause problems in the ciso calculation. This can be worked around by inserting an extra precision control call between the calculation of the dwt fluxes and the ciso fluxes, so that small negative dwt fluxes are set to 0. This does not necessarily fully explain the issue with FPI, but the insertion of the extra precision control call fixes that issue, too. For more details, see the discussion in ESCOMP#741 Resolves ESCOMP#741
- Loading branch information