-
Notifications
You must be signed in to change notification settings - Fork 435
Adjust MALI SMB in G-cases and update hist fields #7463
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
This commit adds the ability for MALI to use a data surface mass balance field from the MALI input file in compsets where ELM is not active. This is done by adding a new namelist option in MALI called config_smb_source and making its value controlled by the CIME variable GLC_TWO_WAY_COUPLING which is only true when both ELM and MALI are active.
Diagnostic/debugging fields that had been added previously have been removed to reduce file size. Output frequency has been reduced to 5 days.
70b890c
to
5e7fc9f
Compare
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.
@matthewhoffman, these changes look correct to me. Is there anything you'd like me to test before I approve?
@trhille , no, I just wanted you to look over the implementation and naming choices for |
lines.append(' <var name="ismip6shelfMelt_zOcean"/>') | ||
lines.append(' <var name="ismip6shelfMelt_zBndsOcean"/>') | ||
lines.append(' <var name="faceMeltSpeed"/>') | ||
lines.append(' <var name="faceMeltingThickness"/>') |
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.
It's a little odd to have faceMeltingThickness, but not calvingThickness. Do we intend to eventually create a face-melting flux variable analogous to avgCalvingFlux?
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 pointing that out - we do actually have the time-averaged facemelting flux already available. I've pushed a new commit that replaces faceMeltingThickness with that.
@trhille , I've pushed a commit further adjusting the MALI history file contents to include your suggestion, remove a few fields I don't think are necessary, and add the 2d TF field that facemelting uses. In principle, we don't need either of the TF fields included right now, as we have the fields for the resulting fluxes calculated from them. At the same time, it might be useful to have the full 3d TF field that comes from MPAS-Ocean for visualization and possible debugging. But that field alone is bigger than the rest of the contents of this file (by a few times) because of the (standard) 30 vertical levels. So I am taking the approach of leaving it out by default, and one can modify their streams file if they want to have it available. That is probably something we will want to do frequently while evaluating ocn/glc TF coupling, but I want to avoid the default MALI hist file being too big. If you (or others) have a different preference, let me know. |
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.
No suggested changes but a few comments to look at (responses on slack are fine too).
<value compset="_DATM.*_CICE.*_DOCN">24</value> | ||
<value compset="_DATM.*_DOCN%US20">24</value> | ||
<value compset="_MPASO">48</value> | ||
<value compset="_DLND.*_MALI">1</value> |
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.
If the base coupling interval for MALI is set to 1 year, does the above value for "_DLND.*_MALI" compsets also need to be updated? Even if only for consistency? Or, does this compset really only couple w/ the atmos. once per year?
<value compset="_DATM.*_SLND.*MPAS" grid="oi%oQU240">12</value> | ||
<value compset="_DATM.*_SLND.*MPAS" grid="oi%oQU240wLI">12</value> | ||
<value compset="_DATM.*_SLND.*MPAS.*_MALI" grid="oi%oQU240wLI">4380</value> | ||
<value compset="_DATM.*_SLND.*MPAS" grid="oi%oQU120">24</value> |
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 one ("_DATM.*_SLND.MPAS._MALI" grid="oi%oQU240wLI") and line 523 below are diff. (default coupling once every 2 hrs versus once every 30 mins) on purpose because of the low-res ocean mesh?
<config_rk_order>2</config_rk_order> | ||
<config_rk3_stages>3</config_rk3_stages> | ||
<config_adaptive_timestep>.false.</config_adaptive_timestep> | ||
<config_adaptive_timestep>.true.</config_adaptive_timestep> |
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'm wary of turning this on by default without pretty extensive testing first, but I guess that can be part of this PR.
lines.append(' type="output"') | ||
lines.append(' filename_template="{}.mali.hist.$Y-$M-$D_$S.nc"'.format(casename)) | ||
lines.append(' filename_interval="0001-00-00_00:00:00"') | ||
lines.append(' filename_interval="0000-01-00_00:00:00"') |
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.
Do we really want to write a new output file every month?
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.
That's how the ocean and sea ice history files are. But they don't include the mesh in every file. So maybe we should remove that.
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.
After discussion, I pushed an update to go back to annual history files that include mesh fields and have daily output. A shake-up to that can wait for a future PR after we have more simulations tested.
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 think I mis-read this in my review to be 1 day. Given the relatively shorter timescales we are working at right now, and the (default) monthly history files from other components, I think 1 month is a decent compromise.
Include all time-averaged coupling fields, remove temperature field because it is 3d and will be in restart files, remove vertical coordinate fields (they are tiny but rarely used and included in input and restart files), add ismip6_2dThermalForcing for reference
487dd4c
to
a69161e
Compare
I separated out the change to the coupling interval into a new PR: #7496 |
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 taking care of this, @matthewhoffman!
Adjust MALI SMB in G-cases and update hist fields This branch updates a number of details about MALI coupling in preparation of production runs: * When ELM is not active (e.g. G-cases), MALI will now use a data SMB from the MALI initial file * The data volume of MALI history files is vastly reduced [NML] only for configurations with MALI [non-BFB] only for configurations with MALI
Testing shows expected NML DIFFs for e3sm_landice_developer using gnu on chrysalis plus:
Passes:
merged to next |
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.
Approved based on visual inspection and testing
merged to master and expected NML and baseline DIFFs blessed except:
|
@jonbob , FYI, I fixed the download issue after a head's up from @amametjanov . I had placed the new input files in the local mirror on Chrysalis instead of the primary public inputdata location. That has now been corrected. |
Thanks @matthewhoffman. And that makes sense -- I went and checked the inputdata repo and the new files were there, so I was a little confused. By the way, you might want to cleanup the permissions, which currently look like:
|
Thanks, I took care of that too now. |
blessed on mappy and pm-cpu |
This branch updates a number of details about MALI coupling in preparation of production runs:
[NML] only for configurations with MALI
[non-BFB] only for configurations with MALI