E3SM icon indicating copy to clipboard operation
E3SM copied to clipboard

Add parametrized tidal mixing effects to ice shelf basal melt

Open irenavankova opened this issue 1 year ago • 6 comments

An implementation of prescribed tidal effect on ice shelf basal melting following (Jourdain et al., 2019):

https://doi.org/10.1016/j.ocemod.2018.11.001

The tidal flow speeds used to produce a forcing data file are calculated from the CATS 2008 (an update of Padman et al., 2002). When the file is available and compset TMIX on, the Jourdain formula is used. The main change is that what used to be a constant config_land_ice_flux_rms_tidal_velocity is now a spatially variable (horizontal) field.

Related Ocean Discussion is here:

https://github.com/E3SM-Ocean-Discussion/E3SM/pull/76

[NML] [BFB]

irenavankova avatar Mar 26 '24 20:03 irenavankova

@jonbob, I've marked this as "Stealth" but I'm not sure if that is correct. Let me know what you think. I'm going to run an Icos G-case with this configuration for 10 years and see what we get. I'll compare with the same configuration without tidal mixing. Hopefully, that's sufficient as a test of this capability as a stealth feature. I'm also going to figure out where to add an appropriate test.

xylar avatar Mar 28 '24 13:03 xylar

@jonbob, what do you think of adding:

            "SMS_P480_Ld5.TL319_IcoswISC30E3r5.GMPAS-JRA1p5-DIB-PISMF-TMIX.mpaso-jra_1958",

to either e3sm_ocnice_stealth_features or e3sm_ocnice_extra_coverage?

xylar avatar Mar 28 '24 13:03 xylar

@xylar -- I don't think it's exactly a stealth feature since it's more like a new separate configuration, unless the goal is to make this default behavior

jonbob avatar Mar 28 '24 14:03 jonbob

@jonbob, it's certainly conceivable that we could make this the default behavior for Polar runs. That's the sense in which I was thinking of it as a stealth feature.

xylar avatar Mar 28 '24 15:03 xylar

I think in our current definition, this is a separate configuration and we can remove the stealth label and add a new test to extra coverage. But it's still important to document what impact it has as part of the PR

jonbob avatar Mar 28 '24 15:03 jonbob

@irenavankova, I hope you don't mind that I pushed a test.

xylar avatar Mar 28 '24 17:03 xylar

@irenavankova -- I ran the scripts that make the bld files consistent with Registry and they came up with some differences in namelist_definition_mpaso.xml:

--- a/components/mpas-ocean/bld/namelist_files/namelist_definition_mpaso.xml
+++ b/components/mpas-ocean/bld/namelist_files/namelist_definition_mpaso.xml
@@ -1608,25 +1608,25 @@ Default: Defined in namelist_defaults.xml
 
 <entry id="config_land_ice_flux_tidal_Jourdain_alpha" type="real"
        category="land_ice_fluxes" group="land_ice_fluxes">
-Constant in parameterization of tidal velocity used in computing the sub-ice-shelf friction velocity
+alpha from parameterization of tidal velocity by Jourdain et al., 2019 - Equation 9, alpha = 0.777 when TMIX compset on
 
-Valid values: Any positive real number
+Valid values: Any non-negative real number
 Default: Defined in namelist_defaults.xml
 </entry>
 
 <entry id="config_land_ice_flux_tidal_Jourdain_A0" type="real"
        category="land_ice_fluxes" group="land_ice_fluxes">
-Constant in parameterization of tidal velocity used in computing the sub-ice-shelf friction velocity
+A0 from parameterization of tidal velocity by Jourdain et al., 2019 - Equation 9, A0 = 0.656 when TMIX compset on
 
-Valid values: Any positive real number
+Valid values: Any non-negative real number
 Default: Defined in namelist_defaults.xml
 </entry>
 
 <entry id="config_land_ice_flux_tidal_Jourdain_U0" type="real"
        category="land_ice_fluxes" group="land_ice_fluxes">
-Constant in parameterization of tidal velocity used in computing the sub-ice-shelf friction velocity
+U0 from parameterization of tidal velocity by Jourdain et al., 2019 - Equation 9, U0 = 0.003 m/s when TMIX compset on
 
-Valid values: Any positive real number
+Valid values: Any non-negative real number
 Default: Defined in namelist_defaults.xml
 </entry>

Can you please help me resolve the differences?

jonbob avatar May 15 '24 19:05 jonbob

passes:

  • ERS_Ld5.T62_oQU120.CMPASO-NYF.chrysalis_intel
  • SMS_D_Ld1.TL319_IcoswISC30E3r5.GMPAS-JRA1p5-DIB-PISMF.chrysalis_intel.mpaso-jra_1958

with expected NML DIFFs. Also passes:

  • SMS_P480_Ld5.TL319_IcoswISC30E3r5.GMPAS-JRA1p5-DIB-PISMF-TMIX.chrysalis_intel.mpaso-jra_1958

which is the new test introduced by this PR

merged to next

jonbob avatar May 28 '24 21:05 jonbob

verified that all new files are available on the inputdata repo and have correct permissions

jonbob avatar May 28 '24 22:05 jonbob

@irenavankova and @xylar -- it looks like this PR was non-BFB on pm-cpu using the gnu compiler. From looking at the changes, it can only be order-of-operations level though of course with the model any little change becomes larger. How do you want to handle this? It is only the one machine and one compiler. I tested it on chrysalis with gnu and did not see any DIFFs and overnight testing with intel passed

jonbob avatar May 29 '24 19:05 jonbob

Oh, that's odd. I guess since you merged this, you think it's okay. I guess we'll need to update baselines for pm-cpu? I think that's likely okay since it was BFB on other machines.

xylar avatar May 29 '24 19:05 xylar

Thanks for the help with this, @jonbob and thanks for working so hard on it, @irenavankova!

xylar avatar May 29 '24 19:05 xylar

I did go ahead and merge it because it passed on our production platforms and compilers -- it seems like a one-off. I can just bless those DIFFs, or if you want we can rework the code section that actually does the work and try to get it BFB on pm-cpu_gnu? I'm guessing it would be possible using the new configs that were added? Or decrease the level of optimization for the affected file?

jonbob avatar May 29 '24 19:05 jonbob

I think we should just bless the difference. The only simulations where this is going to have any impact at all (apart from ensemble variability) are those with prognostic ice-shelf melting and we don't have any production simulations going like that right now.

xylar avatar May 29 '24 19:05 xylar

OK, I blessed the DIFFs for the PISMF tests on pm-cpu. There is another new DIFF that doesn't make sense to me:

ERS_Ld5.TL319_oQU240wLI_ais20.MPAS_LISIO_JRA1p5.pm-cpu_gnu.mpaso-ocn_glcshelf

jonbob avatar May 29 '24 21:05 jonbob

That's also PISMF, but through the coupler so it makes sense to me. The friction velocity, modified by this PR, will be used there as well.

xylar avatar May 30 '24 08:05 xylar

Thanks @xylar -- I'll bless that test as well

jonbob avatar May 30 '24 15:05 jonbob