-
Notifications
You must be signed in to change notification settings - Fork 7
Surface Boundary Conditions and Tile Spaces (make_bcs.py)
The "boundary conditions" (bcs) define the geometry of the model's computational elements (tiles) at the surface and include a range of spatially distributed model parameters for the land (Catchment), land-ice, lake, and ocean surfaces. The model parameters can be static (e.g., soil porosity) or a seasonally varying climatology (e.g., leaf-area index).
A particular set of bcs is defined by (i) a version identifier, (ii) the horizontal resolution of the atmospheric model grid, and (iii) the horizontal resolution of the ocean model grid (or ancillary SST data).
On Discover, bcs datasets are archived at /discover/nobackup/projects/gmao/bcs_shared/fvInput/ExtData/esm/tiles/
.
Some sets, for example Icarus
or Icarus-NLv3
from legacy format /discover/nobackup/projects/gmao/bcs_shared/legacy_bcs/
are now in new archived area ICA
and NL3
and are binary identical just reorganized to more user friendly layout.
- This new layout now separates boundary conditions for tile
/geometry
information and/land
information. - New layout also renames coupled grids. And package now creates coupled grids with no additional post processing.
- Example for grid name change (TM1440xTM1080 to M6TP1440x1080):
/discover/nobackup/projects/gmao/ssd/aogcm/atmosphere_bcs/Icarus/MOM5/CF0180x6C_TM1440xTM1080
is/discover/nobackup/projects/gmao/bcs_shared/fvInput/ExtData/esm/tiles/NL3/geometry/CF0180x6C_M6TP1440x1080
in the new layout.
In the GEOSgcm_GridComp source code, the utility scripts and programs that create the bcs datasets are stored in ./GEOSsurface_GridComp/Utils/Raster/makebcs/
. To generate a set of bcs, follow these steps:
- Build the model (GCM or GEOSldas).
cd [install-path]/bin
-
source g5_modules
(for bash or zsh:source g5_modules.[z]sh
) ./make_bcs.py
This prompts a set of interactive questions about the version, resolutions, output directory, and computational account. The command ./make_bcs.py -h
only displays the available versions and atmosphere/ocean resolutions. Per make_bcs.py
run, only one version but multiple resolutions can be specified.
On Discover, the script will submit one SLURM job per version/resolution combination. One job typically takes 3-4 hours for most grid resolutions. Owing to memory and wall time limits, SLURM jobs for the highest-resolution grids such as the 1-km EASEv2 grid may fail.
The output from make_bcs.py
requires some reorganization and linking of files and directories so that the directory tree looks like that of the bcs archive mentioned above and the model can find and read the required bcs files.
The land bcs make up the bulk of the bcs complexity. The make_bcs
script creates a resolution-specific README file for the land bcs in the .land/clsm/
sub-directory.
Questions should be addressed to the LDAS Gatekeepers and the GCM Gatekeepers.
INSTRUCTIONS BELOW ARE FOR MODEL GATEKEEPERS ONLY
Refer to /discover/nobackup/projects/gmao/bcs_shared/legacy_bcs/Icarus-NLv3/
for the structure of a typical GEOS-ESM bcs directory. There are 6 sub-directories at the root level:
-
*_EASE/
(land-only) *_MERRA-2/
*_Reynolds/
*_Ostia/
-
*_Tripolar/
(coupled atmosphere/ocean model) LAND/
MERRA-2, Reynolds, and Ostia are ocean grids for the atmosphere-only GCM (prescribed SST) and Tripolar grids are for the coupled atmosphere/ocean model.
The bcs for the atmosphere-only GCM of a given (atmospheric) resolution all have identical land tiles and parameters, regardless of the ocean grid resolution. That is, the land parameter files for land cover type (vegdyn), leaf-area index (lai), greenness, albedo (nirdf, visdf), etc and all files in the ./clsm
sub-directory are identical for the MERRA-2, Reynolds, and Ostia ocean resolutions.
To save time and space, once a set of land parameter files has been derived for the atmosphere-only GCM at a given atmospheric resolution, the resulting land parameter files are used for the other ocean grids when combined with the same atmospheric grid. Using ./make_bcs.py -noland
will stop the script after it has derived the surface tile files and skip the generation of the land tile and parameter files.
The resulting land tile and parameter files are then moved into ./LAND/
, organized into sub-directories according to atmospheric grid resolutions, and linked from all ocean grid resolutions associated with atmosphere-only GCM bcs.
IMPORTANT: Tripolar grids should not use the -noland
option because the land tiles in the coupled model (tripolar) differ from those in the AMIP ocean grids that are coupled to the same atmospheric grid.