-
Notifications
You must be signed in to change notification settings - Fork 321
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Switched parameters for non-mycorrhizal N uptake costs in FUN #2120
Comments
Thanks for filing this bug report @ecaas . Could you list here what the default parameter were and what you switched them too. I also wonder if you can let us know more about the simulation you ran. Notably,
We may want to explore this more broadly with a variant of the PPE infrastructure to start understanding potential global impacts of this change. |
Hi, Sorry, here is some more information about the simulation: I did not run a full spinup, just an 1850-2014 historical simulation starting from a restart file (the restart file was created from a cold start using the default parameters, let me know if you want this file). The site is located at Hidden Lake, Canada, and is one of the sites included in the CIDET decomposition experiment. The default parameters are: kn_nonmyc = 0, 0.012, 0.012, 0.0012, 0.012, 0.012, 0.0012, 0.012, 0.012, The modified parameters are: kn_nonmyc = 0, 0.72, 0.72, 0.72, 0.72, 0.72, 0.072, 0.72, 0.72, 0.72, 0.72, kc_nonmyc = 0, 0.012, 0.012, 0.0012, 0.012, 0.012, 0.0012, 0.012, 0.012, Attached is a figure with panels of different pools and fluxes (yearly means). The green lines are from the simulation with modified parameters, while the blue lines are from a simulation with default parameters. Let me know if I can provide anything else to help! |
@rosiealice confirmed through an email exchange with the FUN developers that values for these parameters were inadvertently switched in the FUN2.0 (Brzostek et al., Table S2; see #2098). To start quantifying the effects of this bug on our results, I wanted to follow up here and ask @linniahawkins to run a sparse grid simulation in 1850 from a cold start that flips the values of I'd assume this bug will increase total AR fluxes from FUN, with downstream impacts on the rest of the C-cycle, but hopefully the impact is relatively minimal? If that's the case with sparse grid simulations, we should likely try with a full 1-degree run and correct this on the default parameter file... |
FUNbug_CLM-PPE.pdf |
Thanks to @ecaas for digging into this issue and @rosiealice for following up with FUN developers. I'm including the global time series of states & fluxes that Linnia generated here. My assessment from this plot is that N uptake is higher after fixing the FUN parameter bug for non-mycorrhizal uptake, which reduces global C stocks and GPP. The bug doesn't seem to influence global trajectories over the historical period, just the initial conditions. I'd be interested to see how our spatial patterns of C fluxes and pools change with the bug fix? This isn't something you can easly assess with the sparse grid, is it? If not, maybe it's worth doing a full global spinup @olyson or @slevis-lmwg, with a new issue on the LMWG-dev repository? |
Looks good. In the sense that the main output are broadly similar but the N uptake fluxes are switched round. Nice find @ecaas! |
I ran a small parameter sensitivity experiment with the FUN parameters after swapping the kc_nonmyc and kn_nonmyc parameter values. The perturbations were large: divide by 10 (min) and multiply by ten (max). Most simulations were performed changing parameters one at a time, except for 'KCN' where I perturbed all of the FUN parameters in tandem. With the corrected parameter values, sensitivity to KCN perturbation is larger. Also the most influential FUN parameters have changed from kn_nonmyc (buggy version) to akn_active and ekn_active (fixed version). As mentioned before the corrected version reduced default GPP by ~5% analysis code: https://github.com/djk2120/oaat_clm5_ppe/blob/main/pyth/FUNbug.ipynb ![]() ![]() |
this is excellent. Thanks Daniel. I can't remember if you included KCN in your Latin-hypercube experiments before? Will you now? |
Given plots above, and the simulations done by @slevis-lmwg it seems like we need to fix this bug and move forward with evaluating / calibrating the model. It's still worth looking at PFT survival as we move forward with PPE calibration, but may as well get this bug fix into the default parameter files. @slevis-lmwg or @olyson can you open a PR to do this? |
The param file change in my directory |
New params files for Meier roughness, MIMICS, SNICAR, and with changes to leafcn and k*_nonmyc 1) Start using existing new params file for Meier roughness: /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/paramdata/ctsm51_params.RMz0.c231011.nc and include bug-fix ESCOMP#2219 2) Update forcing heights per ESCOMP#2071. 3) Update params file for MIMICS per ESCOMP#1845. 4) Make leafcn for pfts 15 and 16 the same per ESCOMP#2184. 5) Switch the values of params kc_nonmyc and kn_nonmyc per ESCOMP#2120. 6) Move SNICAR parameters to params file per ESCOMP#2247. Changes answers. Details in PR ESCOMP#2258 and in the ChangeLog.
Brief summary of bug
Switched parameters for non-mycorrhizal N uptake costs in FUN
General bug information
CTSM version you are using: ctsm5.1.dev113-1-g979c71f
Does this bug cause significantly incorrect results in the model's science? No
Configurations affected: Configurations with use_fun = true
Details of bug
As mentioned in discussion #2098 I found that most active N uptake happens through the non-mycorrhizal pathway in FUN in my single-site runs, even at sites where EcM uptake is expected to dominate. It seems like the cost of the non-mycorrhizal pathway is too cheap compared to the mycorrhizal pathways.
I suspect that the reason is a mix-up of the parameters "kn_nonmyc" and "kc_nonmyc" in the parameter file. Switching them seems to give higher cost for the non-mycorrhizal pathway, more in line with what is reported in literature. A quick test run with a single site setup (input data produced with the subset_data script) using a modified parameter file where the values of kn_nonmyc were switched with the values of kc_nonmyc gave dominance of the EcM pathway, as expected. However, I have not tested this on global scales, so I don't know what consequences this will have on larger scales, and if it in fact is the solution to the problem.
Important details of your setup / configuration so we can reproduce the bug
Parameter file: ctsm51_params.c211112.nc (stored on the Norwegian cluster FRAM)
The text was updated successfully, but these errors were encountered: