Skip to content

Commit 454e742

Browse files
authored
Review Sea-Ice Mapping for CMIP7 (#156)
* s02i308 (large scale liquid fraction) + s02i310 (convective liquid fraction) for Amon.clw (total cloud liquid fraction) * s02i309 (large scale ice fraction) + s02i311 (convective ice fraction) for Amon.cli (total cloud ice fraction) * s30i405 (total column liquid) + s30i406 (total column ice) for Amon.clwvi (total column liquid + ice) * This is for AERmon.zg which is requested on model levels. The spreadsheet suggests using fld_s30i207: GEOPOTENTIAL HEIGHT ON P LEV/UV GRID, however CMIP7 requests this on model levels and so I've instead added fld_s16i201: GEOPOTENTIAL HEIGHT ON THETA LEVELS. * Initial work on seaice variables * Add new sea ice variables and their calculations to ACCESS-ESM1.6 mappings * Update sea ice variable dimensions to use TLAT and TLON or ULAT ULON for consistency * Update sea ice variable units and add new mass growth variable * Add CF standard name and update calculation for surface upward mass flux of carbon dioxide "ra" * Add ocean area calculation function and update mappings for areacello * Add global average ocean calculation function and update mappings * Add sea ice component to model mappings in load_model_mappings function * Remove unimplemented calc_line_transport function and its documentation * Remove unused calc_line_transport function from imports and custom functions * Add sea ice calculation functions and update mappings in ACCESS-ESM1.6 * Update sea ice calculation functions to return values in 10⁶ km² and 10³ km³ * Refactor calculation method for siareaacrossline to use direct formula * Refactor sidmassgrowthsi calculation to use direct formula * Refactor sidmassgrowthbot calculation to use direct formula * Refactor sidmassgrowthwat calculation to use direct formula * Refactor sidmassmeltbot calculation to use direct formula * Refactor sidmasssi mapping to use direct calculation method * Refactor simass calculation to use direct method * Refactor sisnthc calculation to use direct method * Refactor sidmassmelttop calculation to use direct method * Missing import * Remove unused 'average_tile' function from custom_functions mapping * Refactor imports and improve calc_global_ave_ocean function for lazy evaluation * Clean merge * Add SeaIce_CMORiser class for handling sea-ice variables in CMORisation * Add SImon variable mappings for filtering in integration tests * Pre-commit * Add support for sea ice variables in load_filtered_variables and integration tests * Add new surface upwelling shortwave flux variables and update simass calculation method
1 parent 3459ed2 commit 454e742

8 files changed

Lines changed: 1739 additions & 32 deletions

File tree

src/access_moppy/derivations/__init__.py

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
import operator
22
from functools import reduce
33

4-
import numpy as np
5-
import xarray as xr
6-
74
from access_moppy.derivations.calc_aerosol import optical_depth
85
from access_moppy.derivations.calc_atmos import (
96
calculate_areacella,
@@ -35,6 +32,18 @@
3532
calc_zostoga,
3633
ocean_floor,
3734
)
35+
from access_moppy.derivations.calc_seaice import (
36+
calc_hemi_seaice,
37+
calc_seaice_extent,
38+
calc_siarean,
39+
calc_siareas,
40+
calc_siextentn,
41+
calc_siextents,
42+
calc_sisnmassn,
43+
calc_sisnmasss,
44+
calc_sivoln,
45+
calc_sivols,
46+
)
3847
from access_moppy.derivations.calc_utils import (
3948
calculate_monthly_maximum,
4049
calculate_monthly_minimum,
@@ -84,6 +93,16 @@
8493
"calc_vmo_corrected": calc_vmo_corrected,
8594
"ocean_floor": ocean_floor,
8695
"calc_areacello": calc_areacello,
96+
"calc_seaice_extent": calc_seaice_extent,
97+
"calc_hemi_seaice": calc_hemi_seaice,
98+
"calc_siarean": calc_siarean,
99+
"calc_siareas": calc_siareas,
100+
"calc_sivoln": calc_sivoln,
101+
"calc_sivols": calc_sivols,
102+
"calc_sisnmassn": calc_sisnmassn,
103+
"calc_sisnmasss": calc_sisnmasss,
104+
"calc_siextentn": calc_siextentn,
105+
"calc_siextents": calc_siextents,
87106
}
88107

89108

0 commit comments

Comments
 (0)