Moist physics driver: idealized_moist_phys.F90
Summary
idealized_moist_phys.F90
calls the various modules associated with Isca’s moist physics configurations. The specific parameterisations to be used can be selected via namelist input to this module. This is where the radiation, convection, turbulence and land options are set. In addition, timestepping for the bucket hydrology option is managed locally here.
These options allow users to configure a wide range of planets, including notable configurations from the literature [Frierson2006a], [Byrne2013], [Schneider2009], [Jucker2017]. Users should bear in mind that the full parameter space is vast and not all options may be compatible with one another.
The fortran file is found in Isca/src/atmos_spectral/driver/solo/idealized_moist_phys.F90
Namelist options
This module controls a large number of switches for different modules. Further information on what each module is for can be found on the module’s documentation page.
NB. Defaults are generally set to False
to avoid accidental use of modules, but this is unlikely to be a useful configuration! For examples of how parameters are set to achieve different model configurations, see the test cases in Isca/exp/test_cases/
.
Humidity, Condensation and Convection
Four convection schemes, and the option of no convection, are currently available in Isca. The defaults are set so the user should actively select a scheme to use via one of the methods below. Large-scale condensation will be called following the convection scheme in all cases, unless DRY_CONV
is selected.
Method 1 (preferred)
The scheme to be used can be selected using the convection_scheme
namelist parameter, which may be set to:
Value |
Effect |
---|---|
|
Use Frierson Quasi-Equilibrium convection scheme [Frierson2007]. |
|
Use the Betts-Miller convection scheme [Betts1986], [BettsMiller1986]. |
|
Use the relaxed Arakawa Schubert convection scheme [Moorthi1992]. |
|
Use the dry convection scheme [Schneider2006]. |
|
Use no convection scheme. |
|
Model looks through flags listed under Method 2. |
Using the convection_scheme
option will ensure that flags are set consistently for the selected convection scheme, avoiding user error. The default is UNSET
.
Method 2 (legacy)
Three namelist parameters exist as switches to select the convection options:
Option |
Summary |
Default |
---|---|---|
|
If true, this is equivalent to specifying |
|
|
If true, this is equivalent to specifying |
|
|
If true, this is equivalent to specifying |
|
If multiple flags are set as True, or all are False, an error will be raised. This method exists for compatibility with configurations pre-dating method 1. Method 1 is preferred for new model configurations.
Humidity calculation options
Option |
Summary |
Default |
---|---|---|
|
If true, use a simplification when calculating relative humidity. |
|
Radiation
Two more comprehensive radiation codes are currently included in Isca: RRTM [MlawerEtAl1997] and Socrates [MannersEtAl2015]. In addition, a number of simple radiation parameterisations for the atmospheres of Earth and other planets can be found in two_stream_gray_rad.F90
. The radiation scheme is set through the following flags:
Option |
Summary |
Default |
---|---|---|
|
If true, call the two stream radiation module. |
|
|
If true, call the RRTM radiation module. |
|
|
If true, call the SOCRATES radiation module. |
|
Drag and Turbulence
Lower Boundary Heat, Momentum & Humidity Exchange
Near the surface, different processes will be appropriate for terrestrial vs. gaseous planets, and for different experimental designs. These are determined by namelist parameters in idealized_moist_phys
as follows.
Terrestrial Planets
Isca will evaluate surface heat exchange provided a gaseous option is not specified (see below). Vertical diffusion may be enabled by setting the namelist parameter turb
to True
; default is False
. This enables calls to vert_turb_driver_mod
, vert_diff_mod
and mixed_layer_mod
.
Additional namelist parameters further specify the processes called and parameters used:
Option |
Summary |
Default |
---|---|---|
|
Dictates whether |
|
|
Selects whether virtual temperature is used in the vertical diffusion module. |
|
|
Roughness length for use in surface moisture exchange. |
|
|
Roughness length for use in surface momentum exchange. |
|
|
Roughness length for use in surface heat exchange. |
|
|
Multiplier on the above roughness lengths to allow land-ocean contrast. |
|
Gaseous Planets
Isca currently includes options to run a Jupiter-type planet. The relevant namelist parameter for the lower boundary physics in this case is:
Option |
Summary |
Default |
---|---|---|
|
Turns on prescription of lower-boundary heat flux following [Schneider2009] . |
|
Upper Level Damping
At upper levels, damping may be needed to account for subgrid-scale processes that decelerate fast upper-level winds. The module damping_driver_mod
applies Rayleigh friction at upper levels. This is switched on with:
Option |
Summary |
Default |
---|---|---|
|
If true, call |
|
NB: damping_driver_mod
is currently being configured to allow gravity wave drag options.
Land and hydrology
Land and hydrology processes are predominantly dealt with in surface_flux_mod
and mixed_layer_mod
, but land and bucket hydrology options are initialised with the following namelist parameters. We acknowledge that the bucket hydrology is adapted from code from https://github.com/tapios and follows [Manabe1969]. Land and hydrology options in this module are:
Option |
Summary |
Default |
---|---|---|
|
Selects how land-mask is defined, a summary of options is given below. |
|
|
Filename for the input land-mask. |
|
|
Field name in the input land-mask netcdf. |
|
|
If true, use bucket hydrology. |
|
|
Value at which to initialise bucket water depth over ocean (large, in \(m\)). |
|
|
Value at which to initialise bucket water depth over land. |
|
|
Maximum depth of water in bucket over land following initialisation. |
|
|
Robert coefficient for RAW filter* on bucket leapfrog timestepping. |
|
|
RAW coefficient for RAW filter* on bucket leapfrog timestepping. |
|
* Roberts-Asselin-Williams filter, [Williams2011]
land_option
may be set to:
Value |
Effect |
---|---|
|
Read land mask from input file. |
|
Define land where surface geopotential height at model initialisation exceeds a threshold. |
|
Do not apply a land mask |
Diagnostics
Diagnostics from this module are output under mod_name = 'atmosphere'
. Some diagnostics may only be output when certain namelist options are set, e.g. those associated with the bucket hydrology. Requesting unsaved diagnostics in your diagnostic list will result in those diagnostics not being output, but will not cause a fatal error or affect other diagnostics.
Name |
Description |
Units |
---|---|---|
|
Zonal wind tendency from vertical diffusion |
\(ms^{-2}\) |
|
Meridional wind tendency from vertical diffusion |
\(ms^{-2}\) |
|
Temperature tendency from vertical diffusion |
\(Ks^{-1}\) |
|
Specific humidity tendency from vertical diffusion |
\(kg kg^{-1} s^{-1}\) |
|
Rain from convection |
\(kg m^{-2} s^{-1}\) |
|
Rain from large-scale condensation |
\(kg m^{-2} s^{-1}\) |
|
Precipitation from resolved, parameterised and snow |
\(kg m^{-2} s^{-1}\) |
|
Temperature tendency from convection |
\(Ks^{-1}\) |
|
Specific humidity tendency from convection |
\(kg kg^{-1} s^{-1}\) |
|
Temperature tendency from condensation |
\(Ks^{-1}\) |
|
Specific humidity tendency from condensation |
\(kg kg^{-1} s^{-1}\) |
|
Relative humidity |
% |
|
Convective Available Potential Energy |
\(J kg^{-1}\) |
|
Convective Inhibition |
\(J kg^{-1}\) |
|
Surface zonal wind stress |
\(N m^{-2}\) |
|
Surface meridional wind stress |
\(N m^{-2}\) |
|
Air temperature 2m above surface |
\(K\) |
|
Specific humidity 2m above surface |
\(kg kg^{-1}\) |
|
Relative humidity 2m above surface |
% |
|
Zonal wind 10m above surface |
\(ms^{-1}\) |
|
Meridional wind 10m above surface |
\(ms^{-1}\) |
|
Heat dissipated by Rayleigh drag in [Schneider2009] scheme |
\(Ks^{-1}\) |
|
Depth of surface reservoir |
\(m\) |
|
Tendency of bucket depth due to convection |
\(ms^{-1}\) |
|
Tendency of bucket depth due to condensation |
\(ms^{-1}\) |
|
Tendency of bucket depth due to evaporation |
\(ms^{-1}\) |
Relevant modules and subroutines
Key physics modules managed from this module include:
vert_turb_driver_mod
vert_diff_mod
two_stream_gray_rad_mod
RRTM: see
Isca/src/atmos_param/rrtm_radiation/
SOCRATES: see
Isca/src/atmos_param/socrates/
mixed_layer_mod
lscale_cond_mod
qe_moist_convection_mod
ras_mod
betts_miller_mod
dry_convection_mod
surface_flux_mod
damping_driver_mod
rayleigh_bottom_drag_mod
References
[Betts1986] [BettsMiller1986] [Byrne2013] [Frierson2006a] [Frierson2007] [Jucker2017] [Manabe1969] [MannersEtAl2015] [MlawerEtAl1997] [Moorthi1992] [Schneider2006] [Schneider2009] [Williams2011]