Skip to content

Support for single process single cell standalone test cases - #5117

Merged
jonbob merged 3 commits into
E3SM-Project:masterfrom
akturner:akturner/mpas-seaice/idealized-single-cell-testcase
Nov 22, 2022
Merged

Support for single process single cell standalone test cases#5117
jonbob merged 3 commits into
E3SM-Project:masterfrom
akturner:akturner/mpas-seaice/idealized-single-cell-testcase

Conversation

@akturner

@akturner akturner commented Aug 9, 2022

Copy link
Copy Markdown
Contributor

Added several options for controlling which thermodynamic processes are active
Added option for conservation AM to include ocean heat, mass, energy content in analysis with mixed layer model
Added another mixed layer ocean model that mimics ocean model in E3SM for standalone testing
Added another forcing option to support idealized single cell test case

Fixes #5118
Fixes #5119

[NML]
[BFB]

@akturner akturner added MPAS-seaice Concerning the MPAS-seaice model BFB PR leaves answers BFB labels Aug 9, 2022
case ("ncar")
call init_oceanic_forcing_ncar(domain)
case ("ncar_free_surface")
call init_oceanic_forcing_ncar_free_surface(domain)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the nomenclature here is incorrect. POP is a free-surface ocean model, although it is constant volume. So the original ncar forcing data is usable for a "free surface" ocean model.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, I have renamed the option to som_varying_thickness

!> \details Representation of ocean processes and coupling in e3sm. This
!> routine mimics the ocean/sea ice coupling in e3sm using MPAS-Ocn,
!> including updates to ocean thickness, temperature and salinity from
!> interactions with sea ice and frazil formation.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a (design) document somewhere that explains these differences in true detail? We will need that for the Icepack documentation.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No design document. This is an additional subroutine in MPAS rather than the column package so doesn't necessarily need to be in icepack. Making this proxy was a good way to understand how frazil is currently done and I plan to try a better formulation so this may change soon anyway.

config_use_prescribed_ice, &
config_use_congelation_basal_melt, &
config_use_lateral_melt, &
config_use_latent_processes)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the computational burden of adding 'if' conditionals for all of these individual processes? They have to be parsed for each category, on each grid cell with ice, perhaps multiple times per timestep.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eclare108213: Good point. I have recoded this so that there are no conditionals now, just multiplication by a real flag taking values (0,1). I will test performance of these changes as well

@rljacob

rljacob commented Aug 25, 2022

Copy link
Copy Markdown
Member

@akturner please respond to review comments.

@akturner

Copy link
Copy Markdown
Contributor Author

Single cell test case for idealized processes added here: MPAS-Dev/MPAS-Seaice_standalone_framework#13

@eclare108213 eclare108213 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for getting rid of the conditionals - this is a more elegant approach in my opinion and perhaps not as computationally impactful. The title of this pull request does not fully represent what is in it -- the new conservation checks are particularly important. I'm curious to know whether these tests have turned up anything surprising or needing to be fixed, but answering that question is not necessary for this PR. Approving.

@rljacob

rljacob commented Oct 6, 2022

Copy link
Copy Markdown
Member

telecon: waiting on review from @alicebarthel who is out of town.

@alicebarthel

Copy link
Copy Markdown
Contributor

I ran a G-case 1-year test with this code. It ran successfully and the sea ice fluxes look consistent visually (see attached plots). My automated check technically failed but I think it may be an issue with the test itself. Looking into this now.
seaice-ocean_fluxcomparison_cpl_am 20221016 test GMPAS-JRA singlecellsiPR TL319_EC30to60E2r2 anvil_hbudget_NH_1-1
seaice-ocean_fluxcomparison_cpl_am 20221016 test GMPAS-JRA singlecellsiPR TL319_EC30to60E2r2 anvil_hbudget_SH_1-1
seaice-ocean_fluxcomparison_cpl_am 20221016 test GMPAS-JRA singlecellsiPR TL319_EC30to60E2r2 anvil_hbudget_GL_1-1

@alicebarthel

Copy link
Copy Markdown
Contributor

My only suggestion at this stage would be to change the streams.seaice file to replace:
clobber_mode="append" with clobber_mode="truncate"
to match other streams (and avoid errors popping up when restarting/overwriting output files)

@eclare108213

Copy link
Copy Markdown
Contributor

What are the units on the y-axes? E.g. I'd expect the radiative fluxes to be ~50x larger in magnitude.

@alicebarthel

Copy link
Copy Markdown
Contributor

@eclare108213 These fluxes are all in W/m2. Note that these are only the sea-ice ones. The atm/ocn radiative fluxes are much bigger (~+/-150 for net SW and ~+/-200-300 for LW).
@akturner Can you remind us if there is area scaling: e.g. are we summing over the sea ice area then dividing by the whole hemisphere area? That could explain the order of magnitude difference. I have vague memories of discussing this with you a while back.

@akturner

Copy link
Copy Markdown
Contributor Author

@alicebarthel: Which streams file are you referring to?

@akturner

Copy link
Copy Markdown
Contributor Author

@eclare108213, @alicebarthel : I believe these are fluxes over whole earth surface?

@eclare108213

Copy link
Copy Markdown
Contributor

But they are for a single-cell column configuration. Can they be made consistent with that view of the "world"?

@alicebarthel

Copy link
Copy Markdown
Contributor

@akturner I meant the conservationCheck AM in streams.seaice. The code I checked out had them in "append" mode instead of "truncate" mode which means errors popped up when trying to overwrite the AM output files. Looking at the files, it does not seem to be something introduced by your changes, so I am happy to approve the PR.
@eclare108213 The test case I ran here is a "normal" (global) G-case, not the single-column mode. Adrian had asked me to check introducing these changes did not modify the standard e3sm flux check I have worked on.
@eclare108213 does that address your concern or do we need to double-check what a "hemispheric scaling" would look like in single-column mode? Is the idea to have the same sea-ice vs. coupler check for flux consistency in a single-column test? In that case, I don't know how the coupler would handle writing out the SH and NH fluxes...

@alicebarthel alicebarthel left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was asked to check that these changes did not impact the standard e3sm fluxes. I ran a G-case and checked the consistency of sea-ice heat fluxes between the Seaice AM and the coupler log. These match to <e-8.

@eclare108213

Copy link
Copy Markdown
Contributor

I see, thanks for the clarification @alicebarthel. Eventually we would like to look at MPAS-SI output in realistic magnitudes for at least one sea ice grid point in each hemisphere, but others are working on that problem now.

@rljacob

rljacob commented Nov 3, 2022

Copy link
Copy Markdown
Member

telecon notes: needs a rebase and build system fixes.

Added several options for controlling which thermodynamic processes are active
Added option for conservation AM to include ocean heat, mass, energy content in analysis with mixed layer model
Added another mixed layer ocean model that mimics ocean model in E3SM for standalone testing
Added another forcing option to support idealized single cell test case
Active column processes now toggled with multiplication by real rather than conditional for performance
Renamed ncar_free_surface forcing type to som_varying_thickness
Removed trailing whitespace from Registry namelist options
@akturner
akturner force-pushed the akturner/mpas-seaice/idealized-single-cell-testcase branch from 3083180 to c28aeff Compare November 18, 2022 17:43
@jonbob

jonbob commented Nov 21, 2022

Copy link
Copy Markdown
Contributor

@akturner - the rebase and bld updates look good. I'll test today and hopefully merge soon

@jonbob jonbob added the NML label Nov 21, 2022
jonbob added a commit that referenced this pull request Nov 21, 2022
…to next (PR #5117)

Merge branch 'akturner/mpas-seaice/idealized-single-cell-testcase' into next (PR #5117)

Support for single process single cell standalone test cases

Changes to the mpas-seaice standalone testing capabilities:
* Added several options for controlling which thermodynamic processes
  are active
* Added option for conservation AM to include ocean heat, mass, energy
  content in analysis with mixed layer model
* Added another mixed layer ocean model that mimics ocean model in E3SM
  for standalone testing
* Added another forcing option to support idealized single cell test case

Fixes #5118
Fixes #5119

[NML]
[BFB]
@jonbob

jonbob commented Nov 21, 2022

Copy link
Copy Markdown
Contributor

passes:

  • SMS_D_Ld1.T62_oEC60to30v3.DTESTM.chrysalis_intel
  • SMS_D_Ld1.ne30pg2_EC30to60E2r2.WCYCL1850.chrysalis_intel.allactive-wcprod
  • ERS.ne11_oQU240.WCYCL1850NS.chrysalis_intel

with expected NML DIFFs

merged to next

@jonbob
jonbob merged commit 9495ddd into E3SM-Project:master Nov 22, 2022
@jonbob

jonbob commented Nov 22, 2022

Copy link
Copy Markdown
Contributor

merged to master and expected NML DIFFs blessed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

BFB PR leaves answers BFB bug fix PR MPAS-seaice Concerning the MPAS-seaice model NML

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Sea ice conservation standalone tests dont mimic ocean interaction in E3SM MPAS-Seaice lacks single process idealized test cases

5 participants