Skip to content

Commit e51feee

Browse files
anton-seaiceblimlim
authored andcommitted
CMIP7 style sea ice diagnostics (#269)
This switches to using all CMIP style diagnostics for sea ice in esm1.6 following the definitions in Notz et al 2016 (with name changes in the CMIP7 data request - https://airtable.com/appGoMZhCpkGESoVk/tblpo5L8maBIGlM1B/viwNNzrqK5oPL7zk2?blocks=hide)
1 parent 8f14082 commit e51feee

5 files changed

Lines changed: 177 additions & 5 deletions

File tree

config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ modules:
3030
use:
3131
- /g/data/vk83/modules
3232
load:
33-
- access-esm1p6/2025.09.002
33+
- access-esm1p6/2025.11.001
3434

3535
# Model configuration
3636
model: access-esm1.6

ice/cice_in.nml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@
3636
/
3737

3838
&tracer_nml
39+
tr_iage = .true. ! ice age
40+
restart_age = .true. ! ice age restart
41+
tr_FY = .true. ! first year ice
42+
restart_FY = .true.
3943
/
4044

4145
&thermo_nml
Lines changed: 168 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,168 @@
1+
&setup_nml
2+
histfreq = 'd','m','1','x','x'
3+
histfreq_n = 1, 1, 1, 1, 1
4+
hist_avg = .true.
5+
hist_file_freq = 'm','m','m','x','x'
6+
/
7+
8+
&icefields_nml
9+
f_tmask = .true.
10+
f_blkmask = .false.
11+
f_tarea = .true.
12+
f_uarea = .true.
13+
f_dxt = .false.
14+
f_dyt = .false.
15+
f_dxu = .false.
16+
f_dyu = .false.
17+
f_HTN = .false.
18+
f_HTE = .false.
19+
f_ANGLE = .false.
20+
f_ANGLET = .false.
21+
f_NCAT = .true.
22+
f_VGRDi = .true.
23+
f_VGRDs = .true.
24+
f_bounds = .false.
25+
!-----------------------------------
26+
! CMIP7 Core and High Variables
27+
!-----------------------------------
28+
f_siconc = 'md', ! Sea Ice Area Percentage (Ocean Grid), this needs to be requested at all frequencies
29+
! other CMIP variables (e.g. those with `si` prefix) are requested
30+
f_siage = 'md', ! Age of Sea Ice
31+
f_sicompstren = 'm', ! Compressive Sea Ice Strength
32+
f_sidconcdyn = 'm', ! Sea Ice Area Percentage Tendency Due to Dynamics
33+
f_sidconcth = 'm', ! Sea Ice Area Percentage Tendency Due to Thermodynamics
34+
f_sidivvel = 'm', ! Divergence of the Sea Ice Velocity Field
35+
f_sidmassdyn = 'm', ! Sea Ice Mass Change from Dynamics
36+
f_sidmassevapsubl = 'm', ! Sea Ice Mass Change Through Evaporation and Sublimation
37+
f_sidmassgrowthbot = 'm', ! Sea Ice Mass Growth from Congelation
38+
f_sidmassgrowthsi = 'm', ! Sea Ice Mass Growth from Snow Flooding
39+
f_sidmassgrowthwat = 'm', ! Sea Ice Mass Growth from Frazil Heat Exchange
40+
f_sidmassmeltbot = 'm', ! Sea Ice Mass Loss from Basal Melt
41+
f_sidmassmeltlat = 'm', ! Sea Ice Mass Loss from Lateral Melt
42+
f_sidmassmelttop = 'm', ! Sea Ice Mass Loss from Top Melt
43+
f_sidmassth = 'm', ! Sea Ice Mass Change Due to Thermodynamics
44+
f_sidmasstranx = 'm', f_sidmasstrany = 'm',
45+
! Sea Ice Mass Transport
46+
f_siflcondbot = 'md', ! Net conductive heat flux at base of sea ice
47+
f_siflcondtop = 'md', ! Net conductive heat flux at top of sea ice
48+
f_siflfwbot = 'm', ! Freshwater flux from sea ice
49+
! averaged only when sea ice is present
50+
f_siflsensbot = 'md', ! Net sensible heat flux at base of sea ice
51+
f_sihc = 'md', ! Heat content in sea ice
52+
f_simass = 'm', ! Sea ice mass
53+
f_sisndmassdyn = 'm', ! Snow mass change due to sea ice dynamics
54+
f_sisndmassmelt = 'm', ! Snow mass change due to snow melt
55+
f_sisndmasssi = 'm', ! Snow mass change due to flooding with sea water
56+
f_sisndmasssnf = 'm', ! Snow mass change due to snow fall
57+
f_sisndmasssubl = 'm', ! Snow mass change due to evaporation and sublimation,
58+
f_sisnhc = 'md', ! Heat content in snow on sea ice
59+
f_sisnmass = 'm', ! Mass of snow on sea ice
60+
f_sispeed = 'md', ! Sea ice speed (non directional)
61+
f_sistrxdtop = 'm', f_sistrydtop = 'm',
62+
! Atmospheric surface stress on sea ice
63+
! averaged only when sea ice is present
64+
f_sistrxubot = 'm', f_sistryubot = 'm',
65+
! Ocean surface stress on sea ice
66+
! averaged only when sea ice is present
67+
f_sithick = 'md', ! Sea ice thickness
68+
! averaged only when sea ice is present
69+
f_sitimefrac = 'md', ! Fraction of averaging interval when there is sea ice
70+
f_siu = 'md', f_siv = 'md',
71+
! Sea ice velocity
72+
f_sivol = 'm', ! Sea ice volume per grid-cell area
73+
74+
!-----------------------------------
75+
! CMIP7 other variables which are available
76+
!-----------------------------------
77+
f_sifb = 'md', ! Sea ice freeboard
78+
f_sitempbot = 'md', ! Sea ice basal temperature
79+
! averaged only when sea ice is present
80+
f_siforcecoriolx = 'md', f_siforcecorioly = 'md',
81+
! Force on sea ice due to coriolis
82+
! averaged only when sea ice is present
83+
f_siforceintstrx = 'md', f_siforceintstry = 'md',
84+
! Force on sea ice due to internal stress
85+
! averaged only when sea ice is present
86+
f_siforcetiltx = 'md', f_siforcetilty = 'md',
87+
! Force on sea ice due to sea surface tilt
88+
! averaged only when sea ice is present
89+
f_sisaltmass = 'md', ! Mass of salt in sea ice
90+
f_siitdconc = 'md', ! Sea ice area fraction in thickness categories
91+
92+
!-----------------------------------
93+
! Some CICE variables
94+
!-----------------------------------
95+
f_dvsdtt = 'md', f_dvsdtd = 'md',
96+
f_aice = 'md', ! we need this to calculate time-weighted averages
97+
98+
99+
!-----------------------------------
100+
! These fields are on by default but lets turn them off
101+
!-----------------------------------
102+
f_hi = 'x', f_hs = 'x',
103+
f_Tsfc = 'x',
104+
f_uvel = 'x', f_vvel = 'x',
105+
f_uatm = 'x', f_vatm = 'x',
106+
f_fswdn = 'x', f_flwdn = 'x',
107+
f_fswup = 'x',
108+
f_snow = 'x', f_snow_ai = 'x',
109+
f_rain = 'x', f_rain_ai = 'x',
110+
f_sst = 'x', f_sss = 'x',
111+
f_uocn = 'x', f_vocn = 'x',
112+
f_sice = 'x', f_frzmlt = 'x',
113+
f_fswfac = 'x',
114+
f_fswabs = 'x', f_fswabs_ai = 'x',
115+
f_albsni = 'x',
116+
f_alvdr_ai = 'x', f_alidr_ai = 'x',
117+
f_alvdf_ai = 'x', f_alidf_ai = 'x',
118+
f_albice = 'x', f_albsno = 'x',
119+
f_albpnd = 'x', f_coszen = 'x',
120+
f_flat = 'x', f_flat_ai = 'x',
121+
f_fsens = 'x', f_fsens_ai = 'x',
122+
f_flwup = 'x', f_flwup_ai = 'x',
123+
f_evap = 'x', f_evap_ai = 'x',
124+
f_evap_ice_ai = 'x', f_evap_snow_ai = 'x',
125+
f_Tair = 'x',
126+
f_Tref = 'x', f_Qref = 'x',
127+
f_congel = 'x', f_frazil = 'x',
128+
f_snoice = 'x', f_dsnow = 'x',
129+
f_meltt = 'x', f_melts = 'x',
130+
f_meltb = 'x', f_meltl = 'x',
131+
f_fresh = 'x', f_fresh_ai = 'x',
132+
f_fsalt = 'x', f_fsalt_ai = 'x',
133+
f_fhocn = 'x', f_fhocn_ai = 'x',
134+
f_fswthru = 'x', f_fswthru_ai = 'x',
135+
f_strairx = 'x', f_strairy = 'x',
136+
f_strtltx = 'x', f_strtlty = 'x',
137+
f_strcorx = 'x', f_strcory = 'x',
138+
f_strocnx = 'x', f_strocny = 'x',
139+
f_strintx = 'x', f_strinty = 'x',
140+
f_strength = 'x',
141+
f_divu = 'x', f_shear = 'x',
142+
f_sig1 = 'x', f_sig2 = 'x',
143+
f_dvidtt = 'x', f_dvidtd = 'x',
144+
!f_dvsdtt = 'x', f_dvsdtd = 'x',
145+
f_daidtt = 'x', f_daidtd = 'x',
146+
f_dagedtt = 'x', f_dagedtd = 'x',
147+
f_mlt_onset = 'x', f_frz_onset = 'x',
148+
f_iage = 'x', f_FY = 'x',
149+
f_hisnap = 'x', f_aisnap = 'x',
150+
f_trsig = 'x',
151+
f_fsurf_ai = 'x', f_fcondtop_ai= 'x',
152+
f_fmeltt_ai = 'x',
153+
f_Tn_top = 'x', f_keffn_top = 'x',
154+
f_icepresent = 'x',
155+
/
156+
157+
&icefields_mechred_nml
158+
!-----------------------------------
159+
! These fields are on by default (in ice_history_mechred.F90) but lets turn them off
160+
!-----------------------------------
161+
f_ardg = 'x', f_vrdg = 'x',
162+
f_alvl = 'x', f_vlvl = 'x',
163+
f_dardg1dt = 'x', f_dardg2dt = 'x',
164+
f_dvirdgdt = 'x', f_opening = 'x',
165+
/
166+
167+
&icefields_pond_nml
168+
/

ice/ice_history.nml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
diagnostic_profiles/ice_history_standard.nml
1+
diagnostic_profiles/ice_history_cmip_high.nml

manifests/exe.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ work/atmosphere/um_hg3.exe:
77
binhash: 6f8b323ac3b87cc25dce32cf14b90188
88
md5: 5580604dab9ed80b2f869fde88bb3603
99
work/ice/cice_access-esm1.6_360x300_12x1_12p.exe:
10-
fullpath: /g/data/vk83/apps/spack/0.22/restricted/ukmo/release/linux-rocky8-x86_64_v4/oneapi-2025.2.0/cice5-git.access-esm1.6-2025.09.000_access-esm1.6-nlh32pdhysi5qlht7mk3revvjk4hn3un/bin/cice_access-esm1.6_360x300_12x1_12p.exe
10+
fullpath: /g/data/vk83/apps/spack/0.22/restricted/ukmo/release/linux-rocky8-x86_64_v4/oneapi-2025.2.0/cice5-git.access-esm1.6-2025.11.000_access-esm1.6-c6osiyxy5znfhfg4ygg5of74omdzd6wh/bin/cice_access-esm1.6_360x300_12x1_12p.exe
1111
hashes:
12-
binhash: e6f0aa66a4e6e6c67686294496e25129
13-
md5: 19575002899af412795b2eb26a0d5696
12+
binhash: 48540f5cfa500592d394363d74274e3d
13+
md5: 41f61ad8db6ed4c43d9477de54ab5877
1414
work/ocean/mom5_access_cm:
1515
fullpath: /g/data/vk83/apps/spack/0.22/restricted/ukmo/release/linux-rocky8-x86_64_v4/oneapi-2025.2.0/mom5-git.2025.05.000_access-esm1.6-q7acqikepkutcdxofim77qzjbul2lkc7/bin/mom5_access_cm
1616
hashes:

0 commit comments

Comments
 (0)