-
Notifications
You must be signed in to change notification settings - Fork 92
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
separate the host parameters file from the fates parameter file #155
Comments
@bandre-ucar and I checked in on this. I will work on generating the first dedicated fates netcdf file. After that generating the host-fates api and the pre-processor are orthogonal units of work. |
Here is the current list of FATES parameters that are pulled from the parameter file. The parameters are associated with four different structures:
Variable List: (broken into groups, and after each variable it lists the files it is called from)
|
I uploaded three files involved in creating a stand-alone netcdf file. Aside from the script and the list (explained below), you need the base netcdf parameter file (clm_params_ed.c160808.nc) and nco installed on your computer. Specifically, you need the "ncks" binary that is part of that package. This file is a bash script that loops through a list of variables that are copied from the default hlm-fates parameter file, into the stand-alone fates parameter file. This file is the parameter name list that is read from the bash script (second argument). This is the result netcdf file I generated from the above mentioned script and transfer list. |
Merge remote-tracking branch 'pr/andre-ed-params' Introduce an interface to pass parameter information from the host to fates. Fates registers a set of parameters that it needs read in, and indicates if they are fates only parameters, or need to be synced with values from the host. The host reads the parameters and returns them to fates. This refactor attempted to be as minimally invasive as possible to the fates science code. All existing storage and conventions for fates parameters were left in place. The only exception was the consolidation of all pft dimensioned parameters into the EDpftvarcon type. Fates no longer uses variables from the host pftcon type. This introduces dynamic allocation of pft level parameter in preparation for setting the number of pfts at run time, but still requires a hard coded number of pfts until the host code can be modified. Note that the default clm and old clm-ed parameter files have diverged before this work began. To do this development in a bit for bit way, the clm-ed parameter file was updated to agree with the clm default parameter file. This is answer changing compared to the fates master branch, but code was refactored in a bit for bit way. No netcdf variables were added or removed in this PR. Fixes: #155, #156 User interface changes?: Yes. 1. Users will need to update custom parameter files. This introduces a new namelist variable, fates_paramfile. The fates parameters are **always** read from the netcdf file pointed to by fates_paramfile. All host parameters are **always** read from the netcdf file pointed to by paramfile. The host paramfile and fates paramfile **may** point to the same netcdf file. 2. All fates parameters and dimensions are now name spaced by 'fates_'. The variable names have remained the same, but the dimension 'param' is now 'fates_scalar'. A new default parameter file with the required changes is available. See fates_params.c170308.nc in the input data repo. Code review: self. Discussion with clm-cmt, code walk through with ckoven, rgknox, rosie Testing: andre: 2017-03-14 Test suite: ed - yellowstone gnu, intel, pgi hobart nag Test baseline: 0ea3fed Test namelist changes: addition of fates_paramfile Test answer changes: bit for bit Test status: all tests pass Test suite: clm_short - yellowstone gnu, intel, pgi Test baseline: clm4_5_12_r195 Test namelist changes: none Test answer changes: bit for bit Test status: all tests pass
The fates parameter file is now specified via a separate namelist fates_paramfile. This variable may or may not point to the same netcdf file as the host parameter file. All fates parameters are read from this file, including the pft level variables, which are now stored in EDpftvarcon instead of pftcon. Note that some parameters are shared between the host and fates. These are 'host' parameters, not fates parameters and are read from the host file. Work for NGT-ED Github issue #155 User interface changes?: Yes. Users who have custom parameter files will need to set namelist varible 'fates_paramfile' to point to their file instead. Host parameters are still read from the file specified by namelist variable 'paramfile'. If users have modified host parameters in addition to fates parameters, they will need to update both namelist variables. Code review: andre Test suite: clm_short Test baseline: clm4_5_12_r195 Test namelist changes: none Test answer changes: bit for bit Test summary: all tests pass Test suite: ed - yellowstone gnu, intel, pgi Test baseline: a651a4f Test namelist changes: yes, new namilest var fates_paramfile Test answer changes: bit for bit Test summary: all tests pass
The fates parameter file is now specified via a separate namelist fates_paramfile. This variable may or may not point to the same netcdf file as the host parameter file. All fates parameters are read from this file, including the pft level variables, which are now stored in EDpftvarcon instead of pftcon. Note that some parameters are shared between the host and fates. These are 'host' parameters, not fates parameters and are read from the host file. Work for NGT-ED Github issue #155 User interface changes?: Yes. Users who have custom parameter files will need to set namelist varible 'fates_paramfile' to point to their file instead. Host parameters are still read from the file specified by namelist variable 'paramfile'. If users have modified host parameters in addition to fates parameters, they will need to update both namelist variables. Code review: andre Test suite: clm_short Test baseline: clm4_5_12_r195 Test namelist changes: none Test answer changes: bit for bit Test summary: all tests pass Test suite: ed - yellowstone gnu, intel, pgi Test baseline: a651a4f Test namelist changes: yes, new namilest var fates_paramfile Test answer changes: bit for bit Test summary: all tests pass
Summary of Issue:
Separate the host parameters file from the fates parameter file.
Requirements or design considerations:
TBD
The text was updated successfully, but these errors were encountered: