Skip to content
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

Eval SIS2 and MOM6 nml params #42

Open
PaulSpence opened this issue May 1, 2023 · 14 comments
Open

Eval SIS2 and MOM6 nml params #42

PaulSpence opened this issue May 1, 2023 · 14 comments

Comments

@PaulSpence
Copy link

PaulSpence commented May 1, 2023

SIS_parameter_doc.all vs MOM_parameter_doc.all at /scratch/x77/akm157/mom6/archive/panan-01-zstar-rivermix/output000

A few important fixed constant diffs:
SIS2 vs MOM6
RHO_OCEAN = 1030.0 vs RHO_OCEAN = 1035.0
OMEGA = 7.292E-05 vs OMEGA = 7.2921E-05
RHO_ICE = 905.0 vs SEA_ICE_MEAN_DENSITY = 900.0

@PaulSpence PaulSpence changed the title Diffs between ice and ocean nml params Eval SIS2 and MOM6 nml params May 1, 2023
@PaulSpence
Copy link
Author

PaulSpence commented May 1, 2023

I also note in stocks.out that initially the model extracts salt from the ocean to create sea ice .... maybe this balances in time.

output000:

Initial Stock S(0)
water[Kg] heat[Joules] salt[Kg]
ATM 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
LND 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
ICE 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
OCN 3.379152299616624E+20 2.683084202555849E+24 1.170034438037154E+19

output001:
Initial Stock S(0)
water[Kg] heat[Joules] salt[Kg]
ATM 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
LND 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
ICE 7.312539621643358E+15 -2.461715084779031E+21 2.164840921446200E+13
OCN 3.378481982617620E+20 2.675527663630672E+24 1.169817644846271E+19

output010:
Initial Stock S(0)
water[Kg] heat[Joules] salt[Kg]
ATM 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
LND 0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
ICE 5.553062793310460E+15 -1.752058640405980E+21 1.331122461447168E+13
OCN 3.378502878608644E+20 2.715322917140153E+24 1.169793568478934E+19

@aekiss
Copy link

aekiss commented May 1, 2023

Thanks Paul, well spotted. In contrast, in a cold start ACCESS-OM2 starts with an assumed sea ice initial condition based on SST, so there isn't much of an initial adjustment. But given that sea ice mostly disappears in summer I wouldn't think this would make a long-term difference.

@PaulSpence
Copy link
Author

Diffs between ACCESS-OM2 and mom6:
PEN_SW_FRAC = 0.0 in MOM6
DO_RIDGING = False is SIS2 ... I think we used a ridging param in ACCESS-OM2?

@aekiss
Copy link

aekiss commented May 1, 2023

Yes, in ACCESS-OM2 we use the Lipscomb et al. (2007) ridging scheme (krdg_partic=1), with an e-folding scale parameter mu_rdg=3 m1/2. maxraft (the maximum thickness of rafted ice) takes the default value of 1.0 m.

We use the NCAR CCSM3 shortwave distribution method (shortwave=‘default’), which I understand allows shortwave penetration through the ice.

@aekiss
Copy link

aekiss commented May 7, 2023

re. point 5 here, it does seem logical to set

ICE_BULK_SALINITY = 5.0         !   [g/kg] default = 4.0
                                ! The fixed bulk salinity of sea ice.

in SIS2 to match

ICE_SALT_CONCENTRATION = 0.005  !   [kg/kg] default = 0.005
                                ! The assumed sea-ice salinity needed to reverse engineer the melt flux (or
                                ! ice-ocean fresh-water flux).

in MOM6, to be consistent with the way the MOM6-SIS2 fluxes are calculated. This would also require ICE_RELATIVE_SALINITY=0.0 in SIS2. FYI this value of 5g/kg is also what ACCESS-OM2 uses.
It may not make much difference though, since the flux calculation may actually be independent of the salt that SIS2 carries around internally. This is the situation in ACCESS-OM2.

@aekiss
Copy link

aekiss commented May 7, 2023

re. point 4 here, the mismatch between SEA_ICE_MEAN_DENSITY in MOM6 and RHO_ICE in SIS2 probably doesn't matter, as SEA_ICE_MEAN_DENSITY is just used for ice rigidity.

But why aren't we using the default values here?

USE_RIGID_SEA_ICE = True        !   [Boolean] default = False
                                ! If true, sea-ice is rigid enough to exert a nonhydrostatic pressure that
                                ! resist vertical motion.
SEA_ICE_MEAN_DENSITY = 900.0    !   [kg m-3] default = 900.0
                                ! A typical density of sea ice, used with the kinematic viscosity, when
                                ! USE_RIGID_SEA_ICE is true.
SEA_ICE_VISCOSITY = 1.0E+09     !   [m2 s-1] default = 1.0E+09
                                ! The kinematic viscosity of sufficiently thick sea ice for use in calculating
                                ! the rigidity of sea ice.
SEA_ICE_RIGID_MASS = 100.0      !   [kg m-2] default = 1000.0
                                ! The mass of sea-ice per unit area at which the sea-ice starts to exhibit
                                ! rigidity

I suggest we use the default USE_RIGID_SEA_ICE = False, which means SEA_ICE_MEAN_DENSITY would be ignored.
With our current setting SEA_ICE_RIGID_MASS = 100.0 sea ice starts behaving rigidly with thickness ~11cm, which seems unrealistic over length scales of a grid cell.

@aekiss
Copy link

aekiss commented May 8, 2023

Why not use the default -1.0 for this SIS2 parameter?

CONSTANT_COSZEN_IC = 0.0        !   [nondim] default = -1.0
                                ! A constant value to use to initialize the cosine of the solar zenith angle for
                                ! the first radiation step, or a negative number to use the current time and
                                ! astronomy.

@aekiss
Copy link

aekiss commented May 8, 2023

The ACCESS-OM2 shortwave radiation scheme is more sophisticated than our current MOM6 settings

VAR_PEN_SW = False              !   [Boolean] default = False
                                ! If true, use one of the CHL_A schemes specified by OPACITY_SCHEME to determine
                                ! the e-folding depth of incoming short wave radiation.

In ACCESS-OM2 this is done using a monthly climatology of chlorophyll with different exponential penetration scales for 2 shortwave wavelength bands (see sec 3.5 here). Not sure if we can do exactly the same thing in MOM6 or even if we want to.

@aekiss
Copy link

aekiss commented May 8, 2023

NCAT_ICE = 5 matches ACCESS-OM2, but where are the thickness categories specified? In ACCESS-OM2 they are 0, 0.6445072, 1.391433, 2.470179 and 4.567288 m (see NCAT in CICE output files). Probably not the best choice for the Antarctic, as there's not much in the thicker categories.

@aekiss
Copy link

aekiss commented May 8, 2023

The ratio DT_ICE_DYNAMICS/DT_RHEOLOGY = 180/50=3.6 is too small, and it would be better to use the default DT_RHEOLOGY = -1.0 to save adjusting DT_RHEOLOGY whenever we change DT_ICE_DYNAMICS. This will then use the ratio NSTEPS_DYN, which defaults to the much larger value 432 - see #35 (comment).
NSTEPS_DYN = 432 might be slow though. ACCESS-OM2 uses 120.

DT_RHEOLOGY = 50.0 is not a factor of DT_ICE_DYNAMICS = 180.0 but this is not a problem as DT_RHEOLOGY is effectively rounded to 45 in the code:
https://github.com/NOAA-GFDL/SIS2/blob/c565ec390aba0346b26b8c0acedda99386008aad/src/SIS_dyn_cgrid.F90#L776-L781

@aekiss
Copy link

aekiss commented May 8, 2023

It looks like the SIS2 ice strength parameterisation is similar to CICE5 with kstrength=0. ACCESS-OM2 uses kstrength=1 which is physically more realistic but tied to the ridging scheme.

@aekiss
Copy link

aekiss commented May 8, 2023

ICE_CDRAG_WATER = 0.00324       !   [nondim] default = 0.00324
                                ! The drag coefficient between the sea ice and water.

ACCESS-OM2 uses a larger ice-ocean drag coefficient of dragio=0.00536.

@aekiss
Copy link

aekiss commented May 8, 2023

SIS_TRACER_ADVECTION_SCHEME = "PPM:H3" ! default = "UPWIND_2D"
                                ! The horizontal transport scheme for tracers:
                                !   UPWIND_2D - Non-directionally split upwind
                                !   PCM    - Directionally split piecewise constant
                                !   PLM    - Piecewise Linear Method
                                !   PPM:H3 - Piecewise Parabolic Method (Huyhn 3rd order)

differs from SIS_THICKNESS_ADVECTION_SCHEME and SIS_CONTINUITY_SCHEME which are both PCM. Not sure if this matters. Advection schemes might play a role in checkerboarding #35.

@aekiss
Copy link

aekiss commented May 8, 2023

ACCESS-OM2 uses the NCAR CCSM3 shortwave distribution method (shortwave=‘default’), but we're using delta-Eddington in SIS2:

! === module SIS_optics ===
! This module calculates the albedo and absorption profiles for shortwave radiation.
DO_DELTA_EDDINGTON_SW = True    !   [Boolean] default = True
                                ! If true, a delta-Eddington radiative transfer calculation for the shortwave
                                ! radiation within the sea-ice.
ICE_DELTA_EDD_R_ICE = 1.0       !   [nondimensional] default = 0.0
                                ! A dreadfully documented tuning parameter for the radiative propeties of sea
                                ! ice with the delta-Eddington radiative transfer calculation.
ICE_DELTA_EDD_R_SNOW = 1.0      !   [nondimensional] default = 0.0
                                ! A dreadfully documented tuning parameter for the radiative propeties of snow
                                ! on sea ice with the delta-Eddington radiative transfer calculation.
ICE_DELTA_EDD_R_POND = 1.0      !   [nondimensional] default = 0.0
                                ! A dreadfully documented tuning parameter for the radiative propeties of
                                ! meltwater ponds on sea ice with the delta-Eddington radiative transfer
                                ! calculation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants