E3SM-Project / E3SM

Energy Exascale Earth System Model source code. NOTE: use "maint" branches for your work. Head of master is not validated.
https://docs.e3sm.org/E3SM
Other
332 stars 334 forks source link

Incorrect C:N ratios and C:P causing balance errors in transient simulations #6368

Open dmricciuto opened 3 weeks ago

dmricciuto commented 3 weeks ago

This was noticed in the v2 offline feature simulations. It seems to be related to the bolded section in the code below from components/elm/src/biogeochem/ComputeSeedMod.F90 dealing with allocating seed C, N and P to display, storage and xfer components of the leaf. pleaf, pstorage, and pxfer are computed for C,N and P separately. If tot_leaf is very small these proportions may be different for C,N,P, causing C:N and C:P ratios to diverge from the expected fixed values in the parameter file. In rare cases, this leads to negative N or P and eventual balance errors. Removing the bolded code and always allocating 100% to either leaf or storage seems to fix this issue.

if (tot_leaf == 0._r8 .or. ignore_current_state) then if (veg_vp%evergreen(pft_type) == 1._r8) then pleaf = 1._r8 else pstorage = 1._r8 end if else pleaf = leaf /tot_leaf pstorage = leaf_storage/tot_leaf pxfer = leaf_xfer /tot_leaf end if