&ocean_grid_nml: horizontal-grid generator + geometry knobs.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=16), | public | :: | axis_units | = | "meters" |
Units of the Cartesian domain extent ( |
|
| character(len=16), | public | :: | coriolis_scheme | = | "beta_plane" |
Coriolis source for the metrics f-fill: “beta_plane” (default, f_0 + betay) or “planetary” (2omega*sin(geolat)). |
|
| character(len=16), | public | :: | grid_config | = | "cartesian" |
Grid generator: “cartesian” (default, uniform), “spherical” (lon-lat sector), “supergrid” (MOM6 mosaic NetCDF), “tripolar”. |
|
| real(kind=wp), | public | :: | lat_south | = | 0.0_wp |
South edge of the physical domain (degrees) — spherical only. |
|
| real(kind=wp), | public | :: | len_lat | = | 0.0_wp |
Total y-extent of the Cartesian domain in |
|
| real(kind=wp), | public | :: | len_lon | = | 0.0_wp |
Total x-extent of the Cartesian domain in |
|
| real(kind=wp), | public | :: | lon_pole | = | 100.0_wp |
Longitude (degrees) of the first tripolar cap pole; partner at
|
|
| real(kind=wp), | public | :: | lon_west | = | 0.0_wp |
West edge of the physical domain (degrees) — spherical only. |
|
| real(kind=wp), | public | :: | omega | = | 7.2921e-5_wp |
Planetary rotation rate (rad/s) — used by “planetary”. |
|
| real(kind=wp), | public | :: | phi_join | = | 65.0_wp |
Join latitude (degrees) for “tripolar”: lon-lat below, bipolar Arctic cap above. |
|
| real(kind=wp), | public | :: | rad_earth | = | 6.378e6_wp |
Earth radius for the spherical metric (m). |
|
| character(len=256), | public | :: | supergrid_file | = | "" |
Path to the MOM6 supergrid NetCDF — “supergrid” only. |
type :: ocean_grid_config_t !! `&ocean_grid_nml`: horizontal-grid generator + geometry knobs. character(len=16) :: grid_config = "cartesian" !! Grid generator: "cartesian" (default, uniform), "spherical" !! (lon-lat sector), "supergrid" (MOM6 mosaic NetCDF), "tripolar". real(wp) :: lon_west = 0.0_wp !! West edge of the physical domain (degrees) — spherical only. real(wp) :: lat_south = 0.0_wp !! South edge of the physical domain (degrees) — spherical only. real(wp) :: rad_earth = 6.378e6_wp !! Earth radius for the spherical metric (m). character(len=256) :: supergrid_file = "" !! Path to the MOM6 supergrid NetCDF — "supergrid" only. character(len=16) :: coriolis_scheme = "beta_plane" !! Coriolis source for the metrics f-fill: "beta_plane" (default, !! f_0 + beta*y) or "planetary" (2*omega*sin(geolat)). real(wp) :: omega = 7.2921e-5_wp !! Planetary rotation rate (rad/s) — used by "planetary". real(wp) :: phi_join = 65.0_wp !! Join latitude (degrees) for "tripolar": lon-lat below, bipolar !! Arctic cap above. real(wp) :: lon_pole = 100.0_wp !! Longitude (degrees) of the first tripolar cap pole; partner at !! `lon_pole + 180`. character(len=16) :: axis_units = "meters" !! Units of the Cartesian domain extent (`grid_config="cartesian"`), !! mirroring MOM6 AXIS_UNITS: "meters" (default), "degrees", "km". !! With "degrees"/"km" the domain is sized by `len_lon`/`len_lat` !! below and `&grid_nml dx`/`dy` are DERIVED (ignored as inputs). !! "meters" ⇒ `&grid_nml dx`/`dy` used verbatim (bit-identical). real(wp) :: len_lon = 0.0_wp !! Total x-extent of the Cartesian domain in `axis_units` (MOM6 !! LENLON). <= 0 (default) ⇒ unset. > 0 ⇒ a uniform !! `dx = to_metres(len_lon)/nx` is derived, where for "degrees" !! `to_metres(v) = rad_earth·v·π/180` (arc length, no cos(lat) — !! MOM6 cartesian) and for "km" `to_metres(v) = 1000·v`. real(wp) :: len_lat = 0.0_wp !! Total y-extent of the Cartesian domain in `axis_units` (MOM6 !! LENLAT). Paired with `len_lon`; > 0 ⇒ `dy = to_metres(len_lat)/ny`. !! NOTE: spherical cell sizes reuse `&grid_nml dx`/`dy` as dlon/dlat !! in DEGREES when `grid_config="spherical"`. end type ocean_grid_config_t