Skip to content
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

Migrate fates parameter file switches to HLM namelist #1295

Open
glemieux opened this issue Dec 4, 2024 · 3 comments · May be fixed by #1300
Open

Migrate fates parameter file switches to HLM namelist #1295

glemieux opened this issue Dec 4, 2024 · 3 comments · May be fixed by #1300
Assignees
Labels
host land model parameter file Pertaining to changes to the FATES parameter file

Comments

@glemieux
Copy link
Contributor

glemieux commented Dec 4, 2024

In an effort to avoid having to modify the fates parameter file when attempting to run with different fates modes, we should move parameter "switches" into the host land model namelist. The list of parameter file switches as of API37 appears to be:

fates_daylength_factor_switch
fates_hydro_solver
fates_leaf_photo_tempsens_model
fates_leaf_stomatal_assim_model
fates_leaf_stomatal_model
fates_maintresp_leaf_model
fates_mort_cstarvation_model
fates_rad_model
fates_regeneration_model

Given that the fates_hydro_htftype_node switch is at the organ level, this is probably best left at the parameter file level currently.

@glemieux
Copy link
Contributor Author

@bishtgautam do you have any concerns with us pursuing this with elm-fates?

@bishtgautam
Copy link

@glemieux , Pursuing changes like ESCOMP/CTSM#2904 within ELM is fine.

Btw, why not change the following

        if(use_fates_photosynth_acclimation) then
           pass_photosynth_acclimation_switch = 1
        else
           pass_photosynth_acclimation_switch = 0
        end if
        call set_fates_ctrlparms('use_photosynth_acclimation',ival=pass_photosynth_acclimation_switch)

        if(use_fates_daylength_factor) then
           pass_daylength_factor_switch = 1
        else
           pass_daylength_factor_switch = 0
        end if
        call set_fates_ctrlparms('use_daylength_factor_switch',ival=pass_daylength_factor_switch)
       ...
        if (trim(fates_hydro_solver) == '1D_Taylor') then
           pass_hydro_solver = 1
        else if (trim(fates_hydro_solver) == '2D_Picard') then
           pass_hydro_solver = 2
        else if (trim(fates_hydro_solver) == '2D_Taylor') then
           pass_hydro_solver = 3
        end if
        call set_fates_ctrlparms('hydr_solver',ival=pass_hydro_solver)

to

        call set_fates_ctrlparms('use_photosynth_acclimation',pass_photosynth_acclimation_switch)
        call set_fates_ctrlparms('use_daylength_factor_switch',use_fates_daylength_factor)
        call set_fates_ctrlparms('hydr_solver',fates_hydro_solver)

This way, if you in the future you stop supporting 2D_Picard, you don't have to make changes in the host driver and FATES.

@glemieux
Copy link
Contributor Author

Thanks @bishtgautam for the quick response. I'll generate an equivalent e3sm-side PR in the next day or so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
host land model parameter file Pertaining to changes to the FATES parameter file
Projects
Status: ❕Todo
Development

Successfully merging a pull request may close this issue.

2 participants