Next: Initializing the model state Up: Running POP Previous: Time management   Contents

Grid and bottom-topography definition

POP can be configured to use a variety of grids, because it is written to allow any logically rectangular, orthogonal coordinate system on a sphere. Generation grids and topography can be time consuming, but it only needs to be done once for a given run-sequence (or even for a set of run-sequences based on the same grid). Consequently, grids and topography are usually generated off-line and grid information is stored in files that are read in during initialization of each job. A graphical tool for generating and modifying grids and topography will soon be released and can be obtained on request. This tool supports almost-global Mercator grids, global displaced-pole grids, global tripole grids and regional grids.

When generating the grid off-line, a horizontal grid file is created containing arrays of double precision values for:

where north, south, east and west refer to logical directions, not necessarily geographic directions. The vertical grid file is an ASCII file containing the thickness of each grid layer on a separate line.

Table: Grid and topography namelist
&grid_nml LANL
Input/Generation of grid and bottom topography
horiz_grid_opt 'internal' 'file' 'file', 'internal' read horizontal grid from a file OR create simple lat/lon grid
horiz_grid_file 'unknown_grid_file' auto-filled by CESM1 POP2 scripts string ≤ 256 characters filename (with path) of file containing horizontal grid info
sfc_layer_opt 'varthick' 'varthick' 'varthick', 'rigid', 'oldfree' surface layer is variable thickness OR rigid lid OR old free surface formulation
vert_grid_opt 'internal' 'file' 'file', 'internal' read vertical grid structure from file OR compute vertical grid internally
vert_grid_file 'unknown_vert_grid_file' auto-filled by CESM1 POP2 scripts string ≤ 256 characters file containing thickness (cm) of each vertical layer
topography_opt 'internal' 'file' 'file', 'internal', 'bathymetry'(CESM1 only) read discretized bottom topography from file or compute idealized flat-bottom topography internally
kmt_kmin (CESM1 only) N/A 3 (1,kmt) minimum allowed non-zero KMT value
topography_file 'unknown_topography_file' auto-filled by CESM1 POP2 scripts string ≤ 256 characters file containing index of deepest level at each gridpoint
region_mask_file 'unknown_region_mask' auto-filled by CESM1 POP2 scripts string ≤ 256 characters file containing region number at each gridpoint
(CESM1 only)
N/A auto-filled by CESM1 POP2 scripts string ≤ 256 characters file containing region ids at each gridpoint. The information in this file associates region ids with a region name; a negative region id indicates a marginal sea
partial_bottom_cells .false. .false. (gx1 & gx3)
.true. (tx0.1v2)
.true., .false. if .true., use partial bottom cells
bottom_cell_file 'unknown_bottom_cell' auto-filled by CESM1 POP2 scripts string ≤ 256 characters file containing thickness (cm) of partial bottom cell for each column
(LANL only)
.false. N/A .true., .false. if .true., smooth topography using 9-point averaging stencil
(CESM1 only)
N/A 0 ≥ 0 number of topography smoothing passes
flat_bottom .false. .false. .true., .false. if .true., flat bottom is used
lremove_points .false. .false., except
.true. if topography_opt = 'bathymetry'
.true., .false. if .true., remove isolated or disconnected ocean points

Options exist to generate both horizontal and vertical grids internally ('internal'). Because any grid size can be easily produced and IO is unnecessary, this option is used for the LANL POP benchmark test problem. The horizontal grid in this case is a simple latitude-longitude grid. The vertical grid uses an algorithm identical to the off-line vertical grid generator located in the tools/grid directory; vertical grids are generated which have relatively shallow surface layers and increasing thickness with depth.

The bottom topography is defined by a field of integers (KMT) which gives the index of the deepest vertical level at each horizontal grid point. This field should also be generated off-line because it often requires modification for narrow channels and other small-scale features. For off-line generated topography, the code expects a binary file with the integer KMT field. Topography can be generated internally, but this option currently only creates an idealized continental outline with a flat bottom; it should not be used for serious ocean simulations. Bottom topography can be modified to include partial bottom cells. If partial bottom cells are selected, the thickness of the bottom cell in each column can be less than the full thickness of the bottom model layer, giving a better representation of the actual bottom topography. For this option, an array containing the thickness of each bottom cell (in cm) must be read from a bottom cell input file.

At present, POP does not support in-flow/out-flow boundary conditions for regional grids. For such regional simulations, closed boudaries are used with buffer zones whose thermohaline properties are maintained by restoring to climatology.

Three options are available for the surface layer. The default is now a variable thickness surface layer ('varthick') in which the thickness of the surface layer adjusts to fresh water input/export. Note that in this formulation, an assumption remains that the changes in thickness should be much smaller than the thickness of the surface layer itself. A second option is the original free surface formulation ('oldfree') where the thickness remains constant, but changes in the free surface height are used in forcing terms. In this case, fresh water fluxes are treated as virtual salinity fluxes and conservation of tracers is not exact (though the residual tracer flux is globally very small). The last option is the rigid lid option ('rigid'). As it implies, there is no variation is surface height with this option. Note that when using this option, the barotropic solver takes much longer to converge so the maximum iteration parameter must be increased to account for this slower convergence. The rigid lid option is not recommended for typical ocean simulations.

For some forcing options (and in future versions for regional diagnostics and river runoff), a region mask is necessary to define various regions. This mask is a simple two-dimensional integer mask that assigns a region number for each horizontal grid point. Negative values of the region number are used to indicate marginal seas. If such a region mask is necessary, it is read from the region_mask_file. If the mask is not necessary, region_mask_file must be set to 'unknown_region_mask'.

Next: Initializing the model state Up: Running POP Previous: Time management   Contents