-
Notifications
You must be signed in to change notification settings - Fork 77
release-noresm2.0.11: Capability to run the SST pacemaker experiments #737
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
base: noresm2
Are you sure you want to change the base?
Conversation
|
Just as a brief comment: since the BLOM code development has moved/is moving fast, it would be at least good to refer to a certain git-sha (and/or tag) in the README.md for which this code is suitable (both, BLOM and NorESM tags/shas). |
|
@jmaerz, note that this PR is going into the noresm2 branch since these experiments were done on the NorESM2.0 code base. These modifications will be merged and tagged there for publication purposes. |
TomasTorsvik
left a comment
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.
I suppose this should be OK. Do we require any testing or proof of concept for things that go in SourceMods? Maybe not critical, since I don't think we will have many such updates on the NorESM2 source code.
|
While we tried to make this experiment work using only SourceMods, we require two new namelist variables to specify the paths to the input files (SST and associated mask) so they can be added to the input data list. However, BLOM does not look for a SourceMods version of namelist_definition_blom.xml so I think we need to make a modification of BLOM. I have some approaches in mind:
Are any of these acceptable? Do you have a preference or a different suggestion? |
|
@gold2718 - I think I would go for option (1) in this case, as I am also not a fan of adding support for SourceMods. I think it is not very likely that we will have a large number of future experiments with NorESM2 that need SourceMods, so maybe just treat this as an exceptional case. We should make a warning in the log and comments that these variables require the specific pacemaker SourceMods. |
gold2718
left a comment
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.
I do not understand why some files are in src.drv and not in src.blom.
Can you explain why they need to be there and how it works? I thought BLOM only looked for src.blom when compiling SourceMods.
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.
This is a BLOM file, why is it in src.drv instead of src.blom? Is it even being compiled by BLOM?
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.
This is a BLOM file, why is it in src.drv instead of src.blom? Is it even being compiled by BLOM?
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.
These are the files under drivers in BLOM: noresm/components/blom/drivers/cpl_mct/. I am actually not modifying anything in BLOM (I think), but I am overriding the BLOM SST passed on to the coupler with the pacemaker SST over the pacemaker region.
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.
This code is part of the BLOM cap (code that connects NorESM with BLOM internals). This code is compiled as part of BLOM, are you sure your changes are compiled into BLOM?
I do see BLOM changes to geoenv_file.F and mod_grid.F90. I am curious as to whether or not the changes to ocn_comp_mct.F90 and sumsbuff_mct.F are compiled as part of your experiment. Do you have a build log available?
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.
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.
My point is that BLOM will build in the files in <NorESM2>/cime_config/usermods_dirs/n1850_SST_pacemaker_Kuroshio/SourceMods/src.blom but not the files in <NorESM2>/cime_config/usermods_dirs/n1850_SST_pacemaker_Kuroshio/SourceMods/src.drv.
Thus, I think you are getting the original ocn_comp_mct.F90 from <NorESM2>/components/blom/drivers/mct/ocn_comp_mct.F90
You will get the modified files from src.blom (geoenv_file.F and mod_grid.F90).
geoenv_file.F seems to be reading the pacemaker mask (diff the source mod with the version in blom/phy).
Is there a case directory run with this code base I can look at? I do not see how the SST file is even getting read in this version.
|
|
||
| Location of the file: | ||
|
|
||
| /cluster/work/users/hra063/So_t/pacemaker_mask.nc |
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.
This should be updated to point to its inputdata location.
Added entries for Kuroshio Current SST pacemaker experiments In order to run SST experiments in the Kurosio Current region, two input files are required. See NorESMhub/NorESM#737 for details. This PR adds namelist entries for these two files. No tests run, however, namelist_definition_blom.xml validated against schema, cime_config/ParamGen/xml_schema/entry_id_pg.xsd
gold2718
left a comment
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.
Oops, I just realized my comments were not getting published to this page.
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.
This code is part of the BLOM cap (code that connects NorESM with BLOM internals). This code is compiled as part of BLOM, are you sure your changes are compiled into BLOM?
I do see BLOM changes to geoenv_file.F and mod_grid.F90. I am curious as to whether or not the changes to ocn_comp_mct.F90 and sumsbuff_mct.F are compiled as part of your experiment. Do you have a build log available?
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.
My point is that BLOM will build in the files in <NorESM2>/cime_config/usermods_dirs/n1850_SST_pacemaker_Kuroshio/SourceMods/src.blom but not the files in <NorESM2>/cime_config/usermods_dirs/n1850_SST_pacemaker_Kuroshio/SourceMods/src.drv.
Thus, I think you are getting the original ocn_comp_mct.F90 from <NorESM2>/components/blom/drivers/mct/ocn_comp_mct.F90
You will get the modified files from src.blom (geoenv_file.F and mod_grid.F90).
geoenv_file.F seems to be reading the pacemaker mask (diff the source mod with the version in blom/phy).
Is there a case directory run with this code base I can look at? I do not see how the SST file is even getting read in this version.
|
The results of Hari's analysis of the simulation output clearly suggest that the SSTs are applied. I can confirm, however, that BLOM's build script only looks for source code in SourceMods/src.blom. @gold2718 Could it be that the ocn_comp_mct.F90 module from SourceMods/src.drv is compiled during the driver compilation and then skipped during BLOM compilation? This could be the case if all components are compiled in the same directory (though it is not clear that the driver compilation would pick up ocn_comp_mct.F90 if it does not use any of its contents). Another explanation could be that @hra063 directly modified components/blom/drivers/cpl_mct/ocn_comp_mct.F90 without going through SourceMods in his work. @hra063 Could you could point us to a relevant case directory and buildlog-files? |
I certainly believe this, however, my understanding is that the experiments were done on a different branch and the experiment modifications were copied to SourceMods in this branch after the fact (at my suggestion so we could get to this PR). My first question is: Were the experiments done with the same SourceMods format (i.e., using src.drv)?
I created a case and see no evidence that the driver is building these files. Unfortunately, I did not get all the way through the build because of a compile error in BLOM. The mod_grid.F90 in SourceMods/src.blom is missing variables that are in the v1.4.4 version of phy/mod_grid.F90. These variables are used by geoenv_test. |

Added the Source modifications needed to run the SST pacemaker experiments
This configuration enables running SST pacemaker experiments with NorESM2. The SST pacemaker configuration allows Sea surface temperature (SST) to be prescribed over selected regions while maintaining interactive coupling elsewhere. The pacemaker region is currently set for the Kuroshio region; can be modified by updating the mask file. The SST data used here is from the coupled MX run of NorESM2 (0.125° ocean and 1° atmosphere).
This work was done under my PhD project, supervised by Camille Li, Aleksi Nummelin, and Ingo Bethke.