-
Notifications
You must be signed in to change notification settings - Fork 26
add new mapping for woa18 input data #573
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
Conversation
@matsbn - I think if we want to still have 'icfile' denote the pre-mapped climatological conditions - then I would suggest that the following two files be merged into one: |
Indeed, this is what I have already done when testing offline regridded WOA climatology. As mentioned in #576, climatologies have been regridded for the tnx1v4 and tnx2v1 grids and are available on Betzy here:
Here in situ temperature and practical salinity are combined in one file. |
@matsbn - thanks - that makes sense. |
Thanks for the changes, @mvertens! I guess a namelist group for this mapping is a final required step. Will the routine
I'm mostly in favour of the first option, since I'm working intensely on #536 where the WOA initial condition is good to build on. |
@matsbn - yes -
I am definitely think the best way forwards is your first option as well: I think we need a new namelist for the hard-wired variables in ocn_map_woa.F90
What would you suggest for the new namelist group name - or should this go into an existing namelist group? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mvertens - should be fine, but I have left some comments to be addressed before merging.
woa_nuopc_provided = .true. | ||
icfile = "/cluster/shared/noresm/inputdata/ocn/blom/inicon/woa18_decav_ts13_01_tnx1v4_20250514.nc" | ||
sigref_spec = 'namelist' | ||
sigref = 0.0000000000000000, 11.649875000000000, 20.111499999999999, 25.384875000000001, 27.469999999999999, 27.960999999999999, 28.441500000000001, 28.919499999999999, 29.395000000000003, 29.867000000000001, 30.334499999999998, 30.796500000000002, 31.251500000000000, 31.698500000000003, 32.135999999999996, 32.561999999999998, 32.974000000000004, 33.370000000000005, 33.748000000000005, 34.105500000000006, 34.440500000000000, 34.750999999999998, 35.036000000000001, 35.294499999999999, 35.527000000000001, 35.734499999999997, 35.917500000000004, 36.078000000000003, 36.218499999999999, 36.341000000000001, 36.447500000000005, 36.540500000000002, 36.622000000000000, 36.694000000000003, 36.758499999999998, 36.816000000000003, 36.868000000000002, 36.915999999999997, 36.960499999999996, 37.001999999999995, 37.040999999999997, 37.078000000000003, 37.113500000000002, 37.148499999999999, 37.182499999999997, 37.215000000000003, 37.247500000000002, 37.279499999999999, 37.311000000000000, 37.342500000000001, 37.372999999999998, 37.403499999999994, 37.434500000000000, 37.465000000000003, 37.530000000000001, 37.689999999999998 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
user_nl_blom~
looks like a backup file that has made it into the commit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for catching this.
cesm/mod_cesm.F90
Outdated
character(len = 256) :: & | ||
woa_nuopc_icfile_mesh, & ! mesh for woa_nuopc_icfile_data, | ||
woa_nuopc_icfile_data ! woa file for temperature and salinity |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For consistency, when defining file names, we have introduced a character length parameter fnmlen
that is defined in mod_utility
.
character(len = 256) :: & | |
woa_nuopc_icfile_mesh, & ! mesh for woa_nuopc_icfile_data, | |
woa_nuopc_icfile_data ! woa file for temperature and salinity | |
use mod_utility, only: fnmlen | |
... | |
character(len = fnmlen) :: & | |
woa_nuopc_icfile_mesh, & ! mesh for woa_nuopc_icfile_data, | |
woa_nuopc_icfile_data ! woa file for temperature and salinity |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. I fixed this with your suggestion.
@matsbn - I think this PR is ready for your review and to be brought into master hopefully before June 15. |
@mvertens, thanks for the recent changes and sorry for responding slowly. I think it would be clean with a separate namelist group for this. A suggestion is:
Some comments:
|
@matsbn - I have implemented these changes with some minor modifications to the naming. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good now @mvertens, thanks!
New capability has been added to the BLOM nuopc cap code to use PIO and ESMF to read in and map input 3d or 2d data to the blom horizontal mesh. The input data vertical resolution is still kept.
You can see the output from the mapping in the directory
/cluster/work/users/mvertens/noresm/SMS_D_Ld1.T62_tn14.NOINYOC.betzy_intel.woa18/run
and the files
woa18_s_an.nc and woa18_t_an.nc
The output looks reasonable to me.
I will be adding a new option to mod_io_input.F90 that will address using mapping files for the mapping - and use this for the riverine input.
Notes:
! Valid values of vname are:
! 'pho' - WOA phosphate
! 'nit' - WOA nitrate
! 'sil' - WOA silicate
! 'oxy' - WOA dissolved oxygen
! 'alk' - GLODAP alkalinity
! 'dic' - GLODAP dissolved inorganic carbon
! 'C13' - Dissolved inorganic 13C carbon isotope
! 'd13' - delta13C of dissolved inorganic carbon
! 'C14' - Dissolved inorganic 14C carbon isotope
! 'd14' - delta14C of dissolved inorganic carbon
Currently BLOM reads in global 3d data and assigns regions. With the method that I am using for woa18 - no global data is ever read in.
@JorgSchwinger @matsbn - I would be happy to walk through this code to understand if there are new requirements that I could address that are not addressed in this PR.
Testing: Ran aux_blom_noresm test suite using noresm3_0_alpha03d with the following updates
BLOM - this PR
CDEPS - cdeps1.0.70_noresm_v6
CMEPS - cmeps1.0.39_noresm_v3
Compared to noresm3_0_alpha03d_dev1.9.0.17/