ismip6_forcing¶
The landice/ismip6_forcing
test group processes (i.e., remaps and renames)
the atmospheric and ocean forcing data of the Ice Sheet Model Intercomparison for CMIP6
(ISMIP6) protocol. The processed data is used to force MALI in its simulations
under a relevant ISMIP6 (either the 2100 or 2300) experimental protocol.
The test group includes five test cases:
atmosphere
, ocean_basal
, ocean_thermal_obs
, ocean_thermal
and
shelf_collapse
. The atmosphere
test case has two steps:
process_smb
and process_smb_racmo
; the ocean_basal
and shelf_collpase
test cases each have one step, process_basal_melt
and process_shelf_collpase
(respectively); the ocean_thermal_obs
and ocean_thermal
share one step, process_thermal_forcing
. (For more details on the steps of
each test case, see atmosphere,
ocean_basal,
ocean_thermal_obs and
ocean_thermal,
shelf_collapse.)
Approximated time for processing a single forcing file
on Cori (single core) is 2 and 7 minutes for the atmosphere and ocean basal
testcases, and less than a minute for ocean thermal obs and ocean thermal
testcases, respectively.
Before providing the details of necessary source data of the ISMIP6 protocols, we provide a summary of instructions of an overall process of this test group: To start off, users need to provide a MALI mesh onto which the source data will be remapped and renamed. More information about obtaining these meshes will be provided as soon as they are publicly available. Then, for a given MALI mesh,
1. run ocean_basal once, independent of the model, scenario and end year.
2. run ocean_thermal_obs once, independent of the model, scenario and end year, to process the thermal forcing from the observational climatology (used for control runs).
3. run ocean_thermal for each model, scenario and end year.
4. run atmosphere with
process_racmo_smb = True
once, independent of the model, scenario and
end year.
5. run atmosphere for each model,
scenario and end year. Users can keep process_racmo_smb = False
as long as
the RACMO SMB has been processed once in Step 4, but it is harmless to leave
process_racmo_smb = True
as it does nothing if data is already
available, and the processing is very quick (less than a minute).
There are six different of input data sets other than the MALI mesh that users need in order to use this package: (#1) atmospheric surface mass balance (SMB) anomaly forcing and (#2) ocean thermal forcing for projection runs, modern climatology files for (#3) atmospheric and (#4) ocean forcing, (#5) ISMIP6 basin number file, and (#6) the ocean basal-melt parameter files.
Except for the file #3, The ISMIP6 source data (files #1, 2, 4-6) can be obtained by contacting the ISMIP6 steering
committee as described here.
Once the users get access to the data on Globus,
and within the base path directory that the user specifies in the config file
(i.e., the config option base_path_ismip6
;
see config options), they
need to manually download the files following the directory structure
and names provided in the GHub endpoints (named GHub-ISMIP6-Forcing
for the 2100 CE projection protocol and ISMIP6-Projections-Forcing-2300
for the 2300 CE projection protocol). That is, the directory paths and the file
names must exactly match (even the letter case) those that are provided by the
GHub endpoints.
Note
It is important to emphasize that a base_path_ismip6
value with a bottom
level directory name of GHub-ISMIP6-Forcing
will only work for the
2100 CE projection protocol (period_endyear
config option below). The
same applies for a bottom level directory of ISMIP6-Projections-Forcing-2300
and the 2300 CE projection protocol.
For example, if a user wants to process the atmosphere (SMB)
forcing representing the SSP585
scenario from the UKESM1-0-LL
model
provided by the ISMIP6-2100 protocol (i.e., from the GHub-ISMIP6-Forcing
Globus endpoint), they must create the directory path
AIS/Atmosphere_Forcing/UKESM1-0-LL/Regridded_8km/
in their local system
where they will download the file UKESM1-0-LL_anomaly_ssp585_1995-2100_8km.nc
.
Note that the users only need to download SMB anomaly files in 8km resolution
(the climatology file is not needed) that cover the period from 1995 to
period_endyear
(either 2100 or 2300, defined in the config file;
see config options).
Equivalently, for the
ocean forcing in this example, users should create the directory path
AIS/Ocean_Forcing/ukesm1-0-ll_ssp585/1995-2100/
and download the file
UKESM1-0-LL_ssp585_thermal_forcing_8km_x_60m.nc
from the same endpoint.
Users do not need to download the thermal
forcing files for the years previous to 1995 as only the files downloaded from
1995-{period_endyear}
will be processed. Users also do not need to download
the temperature and salinity files, as these will not be used by MALI.
Also note to be aware that unlike those in the GHub-ISMIP6-Forcing
endpoint,
the directory names in the ISMIP6-Projections-Forcing-2300
endpoint have a
lower case “f” for the AIS/Atmospheric_forcing/
and AIS/Ocean_forcing/
.
In addition to atmospheric and ocean thermal forcing files that
correspond to specific climate model (e.g., UKESM1-0-LL, CCSM4) and scenarios
(e.g., SSP585, RCP85, RCP26-repeat), modern
climatology files are needed. For the atmosphere
testcase,
RACMO2.3p2_ANT27_smb_yearly_1979_2018.nc
will be automatically downloaded
from the MALI public database when the testcase is being set up and saved
to a subdirectory of the root directory that users define in the config option
database_root
(defined automatically on supported machines).
The RACMO file is used to correct the ISMIP6 the surface mass balance (SMB)
data with the modern climatology. For the ocean_thermal
case, users need to
download the modern ocean thermal forcing climatology file named
obs_thermal_forcing_1995-2017_8km_x_60m.nc
in the directory
AIS/Ocean_F{f}orcing/climatology_from_obs_1995-2017/
(the salinity and temperature files do not have to be downloaded).
For the ocean_basal
testcase, users need to additionally download
the basin number file imbie2_basin_numbers_8km.nc
in the directory
AIS/Ocean_Forcing/imbie2/
(or AIS/Ocean_forcing/imbie2/
, if from the
ISMIP6-Projections-Forcing-2300
endpoint); all of the files that
start their name with coeff_gamma0_DeltaT_quadratic_local
in the directory
‘’AIS/Ocean_F{f}orcing/parameterizations/’’, which contain parameter values needed
for calculating the basal melt underneath the ice shelves in MALI simulations.
Note that both the RACMO SMB data and ocean basal-melt parameters not associated with any climate models and scenarios and thus can be processed only once and can be applied to MALI with any set of processed climate forcing data.
In the next section (ref:landice_ismip6_forcing_config), we provide
instructions and examples of how users can configure necessary options including
paths to necessary source files and the output path of the processed data
within which the subdirectories called atmosphere_forcing/
, basal_melt/
and ocean_thermal_forcing/
(and further subdirectories that match the source
file directory structure) are created if the directories do not already exist)
and where processed files will be saved.
config options¶
All five test cases share some set of default config options under the section
[ismip6_ais]
and have separate config options for each test case:
[ismip6_ais_atmosphere]
, [ismip6_ais_ocean_thermal]
,
[ismip6_ais_ocean_basal]
, and [ismip6_ais_shelf_collapse
]. In the
general config section ([ismip6_ais]
), users need to supply base paths to
input files and MALI mesh file, and MALI mesh name, as well as the model name,
climate forcing scenario and the projection end year of the ISMIP6 forcing data,
which can be chosen from the available options as given in the config file
(see the example file below). In the ismip6_ais_atmosphere
section,
users need to indicate True
or False
on whether to process the RACMO
modern climatology (True
is required to run the process_smb_racmo
step,
which needs to be run before the process_smb
step).
The [ismip6_ais_atmosphere]
and [ismip6_ais_ocean_thermal]
config sections allow users to choose the interpolation scheme among
bilinear
, neareststod
and conserve
methods. The exception is that
the ocean basal
test case will always use the neareststod
method
because the source files have a single valued data per basin. Futhermore, the
[ismip6_ais_atmosphere]
and [ismip6_ais_shelf_collpase]
config sections
support a data_resolution
config option, which allows the user to pick the
source data resolution most appropriate for the MALI mesh the data is being
interpolated onto. The [ismip6_ais_ocean_thermal]
config section does not
support the data_resolution
config option, because the source datasets are
only provided at a single resolution.
Below are the default config options:
# config options for ismip6 antarctic ice sheet data set
[paths]
# The root to a location where data files for MALI will be cached
database_root = /Users/hollyhan/Desktop/RESEARCH/MALI/database/
[ismip6_ais]
# Base path to the input ismip6 ocean and smb forcing files. User has to supply.
base_path_ismip6 = /Users/hollyhan/Desktop/ISMIP6_2300_Protocol/ISMIP6-Projections-Forcing-2300/
# Base path to the the MALI mesh. User has to supply.
base_path_mali = /Users/hollyhan/Desktop/RESEARCH/MALI/mesh_files/
# Forcing end year of the ISMIP6 data. User has to supply.
# Available end years are 2100 and 2300.
period_endyear = 2300
# Base path to which output forcing files are saved.
output_base_path = /Users/hollyhan/Desktop/ISMIP6_2300_Protocol/Process_Forcing_Testcase/
# Name of climate model name used to generate ISMIP6 forcing data. User has to supply.
# Available model names for the 2100 projection are the following: CCSM4, CESM2, CNRM_CM6, CNRM_ESM2, CSIRO-Mk3-6-0, HadGEM2-ES, IPSL-CM5A-MR, MIROC-ESM-CHEM, NorESM1-M, UKESM1-0-LL
# Available model names for the 2300 projection are the following: CCSM4, CESM2-WACCM, CSIRO-Mk3-6-0, HadGEM2-ES, NorESM1-M, UKESM1-0-LL
model = NorESM1-M
# Scenarios used by climate model. User has to supply.
# Available scenarios for the 2100 projection are the following: RCP26, RCP26-repeat, RCP85, SSP126, SSP585 (SSP585v1 and SSP585v2 for the CESM2 model)
# Available scenarios for the 2300 projection are the following: RCP26, RCP26-repeat, RCP85, RCP85-repeat, SSP126, SSP585, SSP585-repeat
scenario = RCP26-repeat
# name of the mali mesh. User has to supply. Note: It is used to name mapping files
# (e,g. 'map_ismip6_8km_to_{mali_mesh_name}_{method_remap}.nc').
mali_mesh_name = Antarctica_8to30km
# MALI mesh file to be used to build mapping file (e.g.Antarctic_8to80km_20220407.nc). User has to supply.
mali_mesh_file = AIS_8to30km_r01_20220607.nc
# config options for ismip6 antarctic ice sheet SMB forcing data test cases
[ismip6_ais_atmosphere]
# resolution of CMIP6 model data to be used; supported options are [8km, 4km]
data_resolution = 8km
# Remapping method used in building a mapping file. Options include: bilinear, neareststod, conserve
method_remap = bilinear
# Set True to process RACMO modern climatology
process_smb_racmo = True
# config options for ismip6 antarctic ice shelf collpase forcing test cases
[ismip6_ais_shelf_collapse]
# resolution of CMIP6 model data to be used; supported options are [8km, 4km]
data_resolution = 8km
# config options for ismip6 ocean thermal forcing data test cases
[ismip6_ais_ocean_thermal]
# Remapping method used in building a mapping file. Options include: bilinear, neareststod, conserve
method_remap = bilinear
# Set to True if the want to process observational thermal forcing data. Set to False if want to process model thermal forcing data.
process_obs_data = True
Below is the example config options that users might create in running the test group. This example is for processing the NorESM1-M RCP2.6 repeat forcing to the year 2300 onto the 8-80km Antarctic Ice Sheet MALI mesh. The example is configured to perform the atmosphereprocess_smb_racmo step to process the RACMO modern SMB climatology but not the modern thermal forcing.
# config options for ismip6 antarctic ice sheet data set
[paths]
# The root to a location where data files for MALI will be cached
database_root = NotAvailable
[ismip6_ais]
# Base path to the input ismip6 ocean and smb forcing files. User has to supply.
base_path_ismip6 = NotAvailable
# Base path to the the MALI mesh. User has to supply.
base_path_mali = NotAvailable
# Forcing end year of the ISMIP6 data. User has to supply.
# Available end years are 2100 and 2300.
period_endyear = NotAvailable
# Base path to which output forcing files are saved.
output_base_path = NotAvailable
# Name of climate model name used to generate ISMIP6 forcing data. User has to supply.
# Available model names for the 2100 projection are the following: CCSM4, CESM2, CNRM_CM6, CNRM_ESM2, CSIRO-Mk3-6-0, HadGEM2-ES, IPSL-CM5A-MR, MIROC-ESM-CHEM, NorESM1-M, UKESM1-0-LL
# Available model names for the 2300 projection are the following: CCSM4, CESM2-WACCM, CSIRO-Mk3-6-0, HadGEM2-ES, NorESM1-M, UKESM1-0-LL
model = NotAvailable
# Scenarios used by climate model. User has to supply.
# Available scenarios for the 2100 projection are the following: RCP26, RCP26-repeat, RCP85, SSP126, SSP585 (SSP585v1 and SSP585v2 for the CESM2 model)
# Available scenarios for the 2300 projection are the following: RCP26, RCP26-repeat, RCP85, RCP85-repeat, SSP126, SSP585, SSP585-repeat
scenario = NotAvailable
# name of the mali mesh. User has to supply. Note: It is used to name mapping files
# (e,g. 'map_ismip6_8km_to_{mali_mesh_name}_{method_remap}.nc').
mali_mesh_name = NotAvailable
# MALI mesh file to be used to build mapping file (e.g.Antarctic_8to80km_20220407.nc). User has to supply.
mali_mesh_file = NotAvailable
# config options for ismip6 antarctic ice sheet SMB forcing data test cases
[ismip6_ais_atmosphere]
# resolution of CMIP6 model data to be used; supported options are [8km, 4km]
data_resolution = 8km
# Remapping method used in building a mapping file. Options include: bilinear, neareststod, conserve
method_remap = bilinear
# Set True to process RACMO modern climatology
process_smb_racmo = True
# config options for ismip6 antarctic ice shelf collpase forcing test cases
[ismip6_ais_shelf_collapse]
# resolution of CMIP6 model data to be used; supported options are [8km, 4km]
data_resolution = 8km
# config options for ismip6 ocean thermal forcing data test cases
[ismip6_ais_ocean_thermal]
# Remapping method used in building a mapping file. Options include: bilinear, neareststod, conserve
method_remap = bilinear
# Set to True if the want to process observational thermal forcing data. Set to False if want to process model thermal forcing data.
process_obs_data = True
atmosphere¶
The landice/ismip6_forcing/atmosphere
test case
performs processing of the surface mass balance (SMB) forcing data provided by
the ISMIP6 and RACMO. Processing data includes regridding the SMB forcing data
SMB data from the native grid (polarstereo grid for the ISMIP6 files and
rotated pole grid for the RACMO file) to MALI’s unstructured grid, renaming
variables, and correcting the ISMIP6 SMB anomaly field for the base SMB
(modern climatology) provided by RACMO.
ocean_basal¶
The landice/tests/ismip6_forcing/ocean_basal
test case
performs processing of the coefficients for the basal melt parameterization
utilized by the ISMIP6 protocol. Processing data includes combining the
IMBIE2 basin numbers file and parameterization coefficients and remapping onto
the MALI mesh.
ocean_thermal_obs¶
The landice/ismip6_forcing/ocean_thermal_obs
test case
performs the processing of the observational climatology of
ocean thermal forcing. Processing data includes regridding the original ISMIP6
thermal forcing data from its native polarstereo grid to MALI’s unstructured
grid and renaming variables.
ocean_thermal¶
The landice/ismip6_forcing/ocean_thermal
test case
performs the processing of ocean thermal forcing. Processing data includes
regridding the original ISMIP6 thermal forcing data from its native
polarstereo grid to MALI’s unstructured grid and renaming variables.
shelf_collapse¶
The landice/ismip6_forcing/shelf_collpase
test case performs the processing
of ice shelf collapse masks by remapping the original ISMIP6 forcing data to
MALI’s unstructured grid and renaming variables. This test case is only supported
with a period_endyear
of 2300
.