IndexRundeck: P1SoM40Created: Thu May 9 03:30:17 EDT 2024

ATM_COM

File: ATM_COM.f
Summary: ATM_COM Main atmospheric variables
Author : Original Development Team
Version:

Subroutines:

Global Variables:
lm : used from resolution

lm_req : integer, parameter
Extra number of radiative equilibrium layers
Initial Value = 3
Used by: | :alloc_diag_com | :alloc_rad_com | :diaga | :diagjl_prep | :init_diag | :init_rad | :radia | DIAG_COM | DIAG_SERIAL:diagjk | DIAG_SERIAL:print_generic_jl | DYNAMICS:alloc_dynamics | DYNAMICS:calc_vert_amp | PLANET_RAD | RADPAR | RAD_COM |
req_fac : real*8, parameter, dimension(lm_req-1)
/REQ_FAC_M factors for REQ layer pressures
Initial Value = (/ .5d0, .2d0 /)
Used by: | :init_rad | DYNAMICS:calc_vert_amp |
aml00 : real*8, dimension(lm+lm_req)
press (mb), mid-pressure (mb),
Used by: | :init_rad | DYNAMICS:alloc_dynamics |
pdsigl00 : real*8, dimension(lm+lm_req)
press (mb), mid-pressure (mb),
Used by: | DYNAMICS:alloc_dynamics |
pmidl00 : real*8, dimension(lm+lm_req)
press (mb), mid-pressure (mb),
Used by: | :diaga | :init_diag | DIAGKS | DIAG_SERIAL:ijkmap | DIAG_SERIAL:ijlmap | DYNAMICS:alloc_dynamics | DYNAMICS:init_sdrag |
pl00 : real*8, dimension(lm+lm_req)
press (mb), mid-pressure (mb),
Used by: | DYNAMICS:alloc_dynamics |
pednl00 : real*8, dimension(lm+lm_req+1)
edge pressure for mean profile (mb)
Used by: | :getztop | :init_cld | :init_diag | :init_rad | DYNAMICS:alloc_dynamics | DYNAMICS:init_sdrag |
req_fac_m : real*8, parameter, dimension(lm_req)
Initial Value = (/ .75d0, .35d0, .1d0 /)
Used by: | :diaga | DIAG_SERIAL:diagjk | DYNAMICS:calc_vert_amp |
req_fac_d : real*8, parameter, dimension(lm_req)
Initial Value = (/ .5d0, .3d0, .2d0 /)
Used by: | :radia | DIAG_SERIAL:diagjk | DYNAMICS:calc_vert_amp |
byaml00 : real*8, dimension(lm+lm_req)

Used by: | :init_rad | :radia | DYNAMICS:alloc_dynamics |
ij_debug : integer, dimension(2)
: if i > 0, print out some extra info on bad ij box
Initial Value = (/ 0 , 1 /)
Used by: | :input_atm |
kradia : integer
if -1 save data for, if 1|2 do inst|adj forcing run
Initial Value = 0
Used by: | :daily_diag | :init_rad | :io_rad | :radia | :reset_adiag |
ma : real*8, allocatable, dimension(:, :, :)
= Air mass per unit area of each layer (kg/m^2)
Used by: | :alloc_atm_com | :atm_diffus | :calc_ampk | :diaga | :diagb | :init_rad | :radia | :surface | ATMDYN:dynam | ATMDYN:fltruv | ATMDYN:sdrag | DYNAMICS:aic_part2 | SUBDAILY:get_subdd |
v : real*8, allocatable, dimension(:, :, :)
east-west, and north-south velocities (m/s)
Used by: | :ahourly | :alloc_atm_com | :atm_diffus | :avg_replicated_duv_to_vgrid | :calc_kea_3d | :checkt | :condse | :conserv_ke | :diag5a | :diag7a | :diaga | :diagb | :get_uv_of_n | :init_pbl | :read_aic | :recalc_agrid_uv | :replicate_uv_to_agrid | :store_uv_of_n | ATMDYN:advecm | ATMDYN:dynam | ATMDYN:fltruv | ATMDYN:sdrag | DYNAMICS:aic_part2 | SUBDAILY:get_subdd |
u : real*8, allocatable, dimension(:, :, :)
east-west, and north-south velocities (m/s)
Used by: | :ahourly | :alloc_atm_com | :atm_diffus | :avg_replicated_duv_to_vgrid | :calc_kea_3d | :checkt | :condse | :conserv_am | :conserv_ke | :diag5a | :diag7a | :diaga | :diagb | :get_uv_of_n | :init_pbl | :read_aic | :recalc_agrid_uv | :replicate_uv_to_agrid | :reset_adiag | :store_uv_of_n | ATMDYN:advecm | ATMDYN:dynam | ATMDYN:fltruv | ATMDYN:sdrag | DYNAMICS:aic_part2 | SUBDAILY:get_subdd |
t : real*8, allocatable, dimension(:, :, :)
potential temperature (referenced to 1 mb) (K)
Used by: | :addenergyasdiffuseheat | :ahourly | :alloc_atm_com | :atm_diffus | :calc_trop | :checkt | :compute_wsave | :condse | :conserv_ewm | :conserv_pe | :diag5a | :diaga | :diaga0 | :diagb | :dissip | :get_atm_layer1 | :get_dbl | :init_cld | :init_pbl | :init_rad | :pgrad_pbl | :qmom_topo_adjustments | :radia | :read_aic | :surface | :surface_diag0 | ATMDYN:advecm | ATMDYN:dynam | ATMDYN:filter | ATMDYN:fltruv | ATMDYN:sdrag | DYNAMICS:aic_part2 | DYNAMICS:perturb_temps | SUBDAILY:get_subdd |
q : real*8, allocatable, dimension(:, :, :)
specific humidity (kg water vapor/kg air)
Used by: | :ahourly | :alloc_atm_com | :atm_diffus | :checkt | :condse | :conserv_ewm | :conserv_wm | :daily_ch4ox | :diaga | :diagb | :get_atm_layer1 | :get_dbl | :init_cld | :init_pbl | :init_rad | :qdynam | :qmom_topo_adjustments | :radia | :read_aic | :surface | :surface_diag0 | ATMDYN:advecm | ATMDYN:dynam | ATMDYN:filter | DYNAMICS:aic_part2 | SUBDAILY:get_subdd |
qcl : real*8, allocatable, dimension(:, :, :)
cloud liquid water amount (kg water/kg air)
Used by: | :alloc_atm_com | :atm_phase1 | :checkt | :condse | :conserv_ewm | :conserv_wm | :diaga | :diagb | ATMDYN:dynam | ATMDYN:filter |
qci : real*8, allocatable, dimension(:, :, :)
cloud ice water amount (kg water/kg air)
Used by: | :alloc_atm_com | :atm_phase1 | :checkt | :condse | :conserv_ewm | :conserv_wm | :diaga | :diagb | ATMDYN:dynam | ATMDYN:filter |
iu_rad : integer

Used by: | :daily_diag | :radia |
masum : real*8, allocatable, dimension(:, :)
(kg/m^2) = [column mass per unit area] - MTOP
Used by: | :alloc_atm_com | ATMDYN:dynam |
p : real*8, allocatable, dimension(:, :)
surface pressure (hecto-Pascals - PTOP)
Used by: | :add_am_as_solidbody_rotation | :ahourly | :alloc_atm_com | :atm_phase1 | :atm_phase2 | :calc_ampk | :checkt | :condse | :conserv_amb_ext | :conserv_ewm | :conserv_ke | :conserv_ms | :conserv_pe | :diag5a | :diag7a | :diaga | :diagb | :init_pbl | :init_rad | :pgrad_pbl | :radia | :read_aic | ATMDYN:dynam | ATMDYN:filter | DYNAMICS:aic_part2 | DYNAMICS:daily_atmdyn | SUBDAILY:get_subdd |
temperature_istart1 : real*8, parameter
Initial Value = 250.
Used by: | :alloc_atm_com | :alloc_fluxes |
zatmo : real*8, allocatable, dimension(:, :)
: surface elevation (m)
Used by: | :alloc_atm_com | :calc_derived_aij | :compute_gz | :conserv_lke | :conserv_pe | :diag5a | :diaga | :downscale_pressure_li | :downscale_temperature_li | :init_lakes | :pgrad_pbl | :qmom_topo_adjustments | :read_aic | :riverf | ATMDYN:advecm | ATMDYN:aflux | ATMDYN:filter | ATMDYN:pgf | DIAG_SERIAL:diag_gather | DYNAMICS:aic_part2 | SUBDAILY:get_subdd |
traditional_coldstart_aic : logical
Initial Value = .true.
Used by: | :init_lakes | :init_pbl | :read_aic | DYNAMICS:aic_part2 |
plij : real*8, allocatable, dimension(:, :, :)
Surface pressure: P(I,J) or PSF-PTOP (mb)
Used by: | :alloc_atm_com | :atm_diffus | :calc_ampk | :diaga | :diagb |
pdsig : real*8, allocatable, dimension(:, :, :)
Surface pressure * DSIG(L) (mb)
Used by: | :alloc_atm_com | :atm_diffus | :calc_ampk | :condse | :conserv_ewm | :conserv_pe | :conserv_wm | :diaga | :diaga0 | :init_rad | :radia | DYNAMICS:matop |
byma : real*8, allocatable, dimension(:, :, :)
= 1/MA (m^2/kg)
Used by: | :ahourly | :alloc_atm_com | :atm_diffus | :calc_ampk | :daily_ch4ox | :init_rad | :radia | :surface | :surface_diag1 | SUBDAILY:get_subdd |
pmid : real*8, allocatable, dimension(:, :, :)
Pressure at mid point of box (mb)
Used by: | :alloc_atm_com | :calc_ampk | :calc_trop | :condse | :conserv_ewm | :diaga | :diagb | :dout | :get_dbl | :getdz | :init_pbl | :init_rad | :pgrad_pbl | :qmom_topo_adjustments | :radia | :surface | DYNAMICS:aic_part2 | DYNAMICS:matop | SUBDAILY:get_subdd |
pk : real*8, allocatable, dimension(:, :, :)
PMID**KAPA
Used by: | :addenergyasdiffuseheat | :alloc_atm_com | :atm_diffus | :calc_ampk | :calc_trop | :checkt | :compute_wsave | :condse | :conserv_ewm | :conserv_pe | :diag5a | :diaga | :diaga0 | :dissip | :dout | :get_dbl | :getdz | :init_pbl | :init_rad | :pgrad_pbl | :qmom_topo_adjustments | :radia | :surface | ATMDYN:filter | ATMDYN:fltruv | ATMDYN:sdrag | DYNAMICS:aic_part2 | DYNAMICS:matop | DYNAMICS:perturb_temps | PBL_DRV:pbl | SUBDAILY:get_subdd |
pedn : real*8, allocatable, dimension(:, :, :)
Pressure at lower edge of box (incl. surface) (mb)
Used by: | :alloc_atm_com | :calc_ampk | :compute_wsave | :condse | :diaga | :diagb | :dout | :getdz | :init_pbl | :init_rad | :radia | :surface | :surface_diag0 | ATMDYN:sdrag | DYNAMICS:aic_part2 | DYNAMICS:matop |
pek : real*8, allocatable, dimension(:, :, :)
PEDN**KAPA
Used by: | :ahourly | :alloc_atm_com | :atm_diffus | :calc_ampk | :condse | :diaga | :dout | :init_pbl | :init_rad | :surface | :surface_diag0 |
sqrtp : real*8, allocatable, dimension(:, :)
square root of P (used in diagnostics)
Used by: | :alloc_atm_com | :calc_ampk | :diag5a |
ptropo : real*8, allocatable, dimension(:, :)
Pressure at mid point of tropopause level (mb)
Used by: | :alloc_atm_com | :calc_trop | SUBDAILY:get_subdd |
ltropo : integer, allocatable, dimension(:, :)
Tropopause layer
Used by: | :alloc_atm_com | :calc_trop | :init_rad | :radia |
ptold : real*8, allocatable, dimension(:, :)
pressure at beginning of dynamic time step (for clouds)
Used by: | :alloc_atm_com | :atm_phase1 | :condse |
sd_clouds : real*8, allocatable, dimension(:, :, :)
vert. integrated horizontal convergence (for clouds)
Used by: | :alloc_atm_com | :atm_phase1 | :condse |
gz : real*8, allocatable, dimension(:, :, :)
geopotential height (for Clouds and Diagnostics)
Used by: | :alloc_atm_com | :condse | ATMDYN:dynam | ATMDYN:pgf |
dpdy_by_rho : real*8, allocatable, dimension(:, :)
(pressure gradients)/density at L=1
Used by: | :alloc_atm_com | :init_pbl | :pgrad_pbl | PBL_DRV:pbl |
dpdx_by_rho : real*8, allocatable, dimension(:, :)
(pressure gradients)/density at L=1
Used by: | :alloc_atm_com | :init_pbl | :pgrad_pbl | PBL_DRV:pbl |
dpdy_by_rho_0 : real*8, allocatable, dimension(:, :)
surface (pressure gradients)/density
Used by: | :alloc_atm_com | :init_pbl | :pgrad_pbl | PBL_DRV:pbl |
dpdx_by_rho_0 : real*8, allocatable, dimension(:, :)
surface (pressure gradients)/density
Used by: | :alloc_atm_com | :init_pbl | :pgrad_pbl | PBL_DRV:pbl |
ps : real*8, allocatable, dimension(:, :)
save PU,PV,SD,P for hourly tracer advection
Used by: | :alloc_atm_com | :atm_phase1 | :qdynam |
mws : real*8, allocatable, dimension(:, :, :)
save PU,PV,SD,P for hourly tracer advection
Used by: | :alloc_atm_com | :compute_wsave | :condse | :qdynam | ATMDYN:dynam |
mvs : real*8, allocatable, dimension(:, :, :)
save PU,PV,SD,P for hourly tracer advection
Used by: | :alloc_atm_com | :atm_phase1 | :qmom_topo_adjustments | ATMDYN:dynam |
mus : real*8, allocatable, dimension(:, :, :)
save PU,PV,SD,P for hourly tracer advection
Used by: | :alloc_atm_com | :atm_phase1 | :qmom_topo_adjustments | ATMDYN:dynam |
mb : real*8, allocatable, dimension(:, :, :)
Air mass array for tracers (before advection)
Used by: | :alloc_atm_com | :qdynam | TRACER_ADV:aadvq | TRACER_ADV:aadvq0 |
mma : real*8, allocatable, dimension(:, :, :)
(kg) Air mass array for tracers (updated during advection)
Used by: | :alloc_atm_com | :qdynam | TRACER_ADV:aadvq | TRACER_ADV:aadvq0 |
phi : real*8, allocatable, dimension(:, :, :)

Used by: | :ahourly | :alloc_atm_com | :diag7a | :diaga | :diagb | :pgrad_pbl | ATMDYN:pgf | SUBDAILY:get_subdd |
dke : real*8, allocatable, dimension(:, :, :)
change in KE due to dissipation (SURF/DC/MC) (m^2/s^2)
Used by: | :alloc_atm_com | :dissip |
kea : real*8, allocatable, dimension(:, :, :)
KE on the A grid (m^2/s^2)
Used by: | :alloc_atm_com | :atm_phase1 | :dissip |
valij : real*8, allocatable, dimension(:, :, :)
U,V on the A grid (m/s)
Used by: | :alloc_atm_com | :atm_diffus | :diaga | :get_atm_layer1 | :get_dbl | :init_pbl | :read_aic | :recalc_agrid_uv | DYNAMICS:aic_part2 |
ualij : real*8, allocatable, dimension(:, :, :)
U,V on the A grid (m/s)
Used by: | :alloc_atm_com | :atm_diffus | :diaga | :get_atm_layer1 | :get_dbl | :init_pbl | :read_aic | :recalc_agrid_uv | DYNAMICS:aic_part2 |
wsave : real*8, allocatable, dimension(:, :, :)
vertical velocity (m/s)
Used by: | :ahourly | :alloc_atm_com | :compute_wsave | SUBDAILY:get_subdd |

Simplex Website Curator: Igor Aleinov — NASA Official: Gavin A. Schmidt

Contact GISS NASA Privacy PolicyAccessibility