FV3DYCORE  Version1.0.0
fv_diagnostics_mod Module Reference

@ The module 'fv_diagnostics' contains routines to compute diagnosic fields. More...

Functions/Subroutines

subroutine, public fv_diag_init (Atm, axes, Time, npx, npy, npz, p_ref)
 
subroutine init_mq (phis, gridstruct, npx, npy, is, ie, js, je, ng)
 
subroutine, public fv_diag (Atm, zvir, Time, print_freq)
 
subroutine wind_max (isc, iec, jsc, jec, isd, ied, jsd, jed, us, vs, ws_max, domain)
 
subroutine, public get_vorticity (isc, iec, jsc, jec, isd, ied, jsd, jed, npz, u, v, vort, dx, dy, rarea)
 
subroutine, public get_height_field (is, ie, js, je, ng, km, hydrostatic, delz, wz, pt, q, peln, zvir)
 
subroutine, public range_check (qname, q, is, ie, js, je, n_g, km, pos, q_low, q_hi, bad_range)
 
subroutine, public prt_maxmin (qname, q, is, ie, js, je, n_g, km, fac)
 
subroutine, public prt_mxm (qname, q, is, ie, js, je, n_g, km, fac, area, domain)
 
subroutine, public prt_mass (km, nq, is, ie, js, je, n_g, nwat, ps, delp, q, area, domain)
 
subroutine, public z_sum (is, ie, js, je, km, n_g, delp, q, sum2)
 
real function p_sum (is, ie, js, je, km, n_g, delp, area, domain)
 
subroutine get_pressure_given_height (is, ie, js, je, ng, km, wz, kd, height, ts, peln, a2, fac)
 
subroutine get_height_given_pressure (is, ie, js, je, km, wz, kd, id, log_p, peln, a2)
 
subroutine, public prt_height (qname, is, ie, js, je, ng, km, press, phis, delz, peln, area, lat)
 
subroutine, public prt_gb_nh_sh (qname, is, ie, js, je, a2, area, lat)
 
subroutine cs3_interpolator (is, ie, js, je, km, qin, kd, pout, wz, pe, id, qout, iv)
 
subroutine cs_interpolator (is, ie, js, je, km, qin, zout, wz, qout, qmin)
 
subroutine cs_prof (q2, delp, q, km, i1, i2, iv)
 
subroutine, public interpolate_vertical (is, ie, js, je, km, plev, peln, a3, a2)
 
subroutine interpolate_z (is, ie, js, je, km, zl, hght, a3, a2)
 
subroutine helicity_relative (is, ie, js, je, ng, km, zvir, sphum, srh, ua, va, delz, q, hydrostatic, pt, peln, phis, grav, z_bot, z_top)
 
subroutine, public helicity_relative_caps (is, ie, js, je, ng, km, zvir, sphum, srh, uc, vc, ua, va, delz, q, hydrostatic, pt, peln, phis, grav, z_bot, z_top)
 
subroutine, public bunkers_vector (is, ie, js, je, ng, km, zvir, sphum, uc, vc, ua, va, delz, q, hydrostatic, pt, peln, phis, grav)
 
subroutine updraft_helicity (is, ie, js, je, ng, km, zvir, sphum, uh, w, vort, delz, q, hydrostatic, pt, peln, phis, grav, z_bot, z_top)
 
subroutine pv_entropy (is, ie, js, je, ng, km, vort, f_d, pt, pkz, delp, grav)
 The subroutine 'pv_entropy' computes potential vorticity. More...
 
subroutine, public ppme (p, qe, delp, im, km)
 
subroutine, public rh_calc (pfull, t, qv, rh, do_cmip)
 
subroutine, public eqv_pot (theta_e, pt, delp, delz, peln, pkz, q, is, ie, js, je, ng, npz, hydrostatic, moist)
 The subroutine 'eqv_pot' calculates the equivalent potential temperature. More...
 
subroutine nh_total_energy (is, ie, js, je, isd, ied, jsd, jed, km, w, delz, pt, delp, q, hs, area, domain, sphum, liq_wat, rainwat, ice_wat, snowwat, graupel, nwat, ua, va, moist_phys, te)
 The subroutine 'nh_total_energy computes vertically-integrated total energy per column. More...
 
subroutine, public dbzcalc (q, pt, delp, peln, delz, dbz, maxdbz, allmax, bd, npz, ncnst, hydrostatic, zvir, in0r, in0s, in0g, iliqskin)
 The subroutine 'dbzcalc' computes equivalent reflectivity factor (in dBZ) at each model grid point. More...
 
subroutine, public max_vorticity_hy1 (is, ie, js, je, km, vort, maxvorthy1)
 
subroutine, public max_vorticity (is, ie, js, je, ng, km, zvir, sphum, delz, q, hydrostatic, pt, peln, phis, grav, vort, maxvort, z_bot, z_top)
 
subroutine, public max_uh (is, ie, js, je, ng, km, zvir, sphum, uphmax, uphmin, w, vort, delz, q, hydrostatic, pt, peln, phis, grav, z_bot, z_top)
 
subroutine, public max_vv (is, ie, js, je, npz, ng, up2, dn2, pe, w)
 
subroutine, public fv_diag_init_gn (Atm)
 
subroutine getcape (nk, p, t, dz, q, the, cape, cin, source_in)
 The subroutine 'getcape' calculates the Convective Available Potential Energy (CAPE) from a Sounding. More...
 
real function getqvs (p, t)
 
real function getqvi (p, t)
 

Variables

real, parameter missing_value = -1.e10
 
real, parameter missing_value2 = -1.e3
 for variables with many missing values More...
 
real, parameter missing_value3 = 1.e10
 for variables where we look for smallest values More...
 
real ginv
 
real pk0
 
logical master
 
character(len=3), public gn = ''
 
type(time_type), public fv_time
 
type(fv_diag_type), pointer idiag
 
logical module_is_initialized =.false.
 
logical, public prt_minmax =.false.
 
logical m_calendar
 
integer sphum
 
integer liq_wat
 
integer ice_wat
 
integer cld_amt
 
integer rainwat
 
integer snowwat
 
integer graupel
 
integer istep
 
integer mp_top
 
real ptop
 
real, parameter rad2deg = 180./pi
 
character(len=128) tname
 
character(len=256) tlongname
 
character(len=256) tunits
 
real, public sphum_ll_fix = 0.
 
real, public qcly0
 
integer, parameter nplev = 31
 
integer, dimension(nplevlevs
 

Detailed Description

@ The module 'fv_diagnostics' contains routines to compute diagnosic fields.

Function/Subroutine Documentation

◆ bunkers_vector()

subroutine, public fv_diagnostics_mod::bunkers_vector ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  zvir,
integer, intent(in)  sphum,
real, dimension(is:ie,js:je), intent(out)  uc,
real, dimension(is:ie,js:je), intent(out)  vc,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  ua,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  va,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, intent(in)  grav 
)

Definition at line 4093 of file fv_diagnostics.F90.

◆ cs3_interpolator()

subroutine fv_diagnostics_mod::cs3_interpolator ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, dimension(is:ie,js:je,km), intent(in)  qin,
integer, intent(in)  kd,
real, dimension(kd), intent(in)  pout,
real, dimension(is:ie,js:je,km+1), intent(in)  wz,
real, dimension(is:ie,km+1,js:je), intent(in)  pe,
integer, dimension(kd), intent(in)  id,
real, dimension(is:ie,js:je,kd), intent(out)  qout,
integer, intent(in)  iv 
)
private
Parameters
[in]kdvertical dimension of the ouput height

Definition at line 3640 of file fv_diagnostics.F90.

◆ cs_interpolator()

subroutine fv_diagnostics_mod::cs_interpolator ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, dimension(is:ie,js:je,km), intent(in)  qin,
real, intent(in)  zout,
real, dimension(is:ie,js:je,km+1), intent(in)  wz,
real, dimension(is:ie,js:je), intent(out)  qout,
real, intent(in)  qmin 
)
private

Definition at line 3712 of file fv_diagnostics.F90.

◆ cs_prof()

subroutine fv_diagnostics_mod::cs_prof ( real, dimension(i1:i2,km), intent(in)  q2,
real, dimension(i1:i2,km), intent(in)  delp,
real, dimension(i1:i2,km+1), intent(out)  q,
integer, intent(in)  km,
integer, intent(in)  i1,
integer, intent(in)  i2,
integer, intent(in)  iv 
)
private

Definition at line 3762 of file fv_diagnostics.F90.

◆ dbzcalc()

subroutine, public fv_diagnostics_mod::dbzcalc ( real, dimension(bd%isd:bd%ied, bd%jsd:bd%jed, npz, ncnst), intent(in)  q,
real, dimension(bd%isd:bd%ied, bd%jsd:bd%jed, npz), intent(in)  pt,
real, dimension(bd%isd:bd%ied, bd%jsd:bd%jed, npz), intent(in)  delp,
real, dimension(bd%is :bd%ie, npz+1, bd%js:bd%je), intent(in)  peln,
real, dimension(bd%isd:bd%ied, bd%jsd:bd%jed, npz), intent(in)  delz,
real, dimension(bd%is :bd%ie, bd%js :bd%je , npz), intent(out)  dbz,
real, dimension(bd%is :bd%ie, bd%js :bd%je), intent(out)  maxdbz,
real, intent(out)  allmax,
type(fv_grid_bounds_type), intent(in)  bd,
integer, intent(in)  npz,
integer, intent(in)  ncnst,
logical, intent(in)  hydrostatic,
real, intent(in)  zvir,
logical, intent(in)  in0r,
logical, intent(in)  in0s,
logical, intent(in)  in0g,
logical, intent(in)  iliqskin 
)

The subroutine 'dbzcalc' computes equivalent reflectivity factor (in dBZ) at each model grid point.

In calculating Ze, the RIP algorithm makes assumptions consistent with those made in an early version (ca. 1996) of the bulk mixed-phase microphysical scheme in the MM5 model (i.e., the scheme known as "Resiner-2"). More information on the derivation of simulated reflectivity in RIP can be found in Stoelinga (2005, unpublished write-up). Contact Mark Stoelinga (stoel.nosp@m.ing@.nosp@m.atmos.nosp@m..was.nosp@m.hingt.nosp@m.on.e.nosp@m.du) for a copy.

Date
22 September, 2016 - modified for use with GFDL cloud microphysics parameters.

Definition at line 4789 of file fv_diagnostics.F90.

◆ eqv_pot()

subroutine, public fv_diagnostics_mod::eqv_pot ( real, dimension(is:ie,js:je,npz), intent(out)  theta_e,
real, dimension(is-ng:ie+ng,js-ng:je+ng,npz), intent(in)  pt,
real, dimension(is-ng:ie+ng,js-ng:je+ng,npz), intent(in)  delp,
real, dimension(is-ng: ,js-ng: ,1: ), intent(in)  delz,
real, dimension(is:ie,npz+1,js:je), intent(in)  peln,
real, dimension(is:ie,js:je,npz), intent(in)  pkz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,npz), intent(in)  q,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  npz,
logical, intent(in)  hydrostatic,
logical, intent(in)  moist 
)

The subroutine 'eqv_pot' calculates the equivalent potential temperature.

Author
Xi Chen
Date
28 July 2015 Modfied by Shian-Jiann Lin
Parameters
[out]theta_eeqv pot

Definition at line 4594 of file fv_diagnostics.F90.

◆ fv_diag()

subroutine, public fv_diagnostics_mod::fv_diag ( type(fv_atmos_type), dimension(:), intent(inout)  Atm,
real, intent(in)  zvir,
type(time_type), intent(in)  Time,
integer, intent(in)  print_freq 
)

Definition at line 1091 of file fv_diagnostics.F90.

◆ fv_diag_init()

subroutine, public fv_diagnostics_mod::fv_diag_init ( type(fv_atmos_type), dimension(:), intent(inout), target  Atm,
integer, dimension(4), intent(out)  axes,
type(time_type), intent(in)  Time,
integer, intent(in)  npx,
integer, intent(in)  npy,
integer, intent(in)  npz,
real, intent(in)  p_ref 
)

Definition at line 201 of file fv_diagnostics.F90.

◆ fv_diag_init_gn()

subroutine, public fv_diagnostics_mod::fv_diag_init_gn ( type(fv_atmos_type), intent(inout), target  Atm)

Definition at line 5121 of file fv_diagnostics.F90.

◆ get_height_field()

subroutine, public fv_diagnostics_mod::get_height_field ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:,js-ng:,1:), intent(in)  delz,
real, dimension(is:ie,js:je,km+1), intent(out)  wz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, intent(in)  zvir 
)

Definition at line 3111 of file fv_diagnostics.F90.

◆ get_height_given_pressure()

subroutine fv_diagnostics_mod::get_height_given_pressure ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, dimension(is:ie,js:je,km+1), intent(in)  wz,
integer, intent(in)  kd,
integer, dimension(kd), intent(in)  id,
real, dimension(kd), intent(in)  log_p,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is:ie,js:je,kd), intent(out)  a2 
)
private
Parameters
[in]kdvertical dimension of the ouput height
[in]log_pmust be monotonically increasing with increasing k log (p)
[out]a2height (m)

Definition at line 3496 of file fv_diagnostics.F90.

◆ get_pressure_given_height()

subroutine fv_diagnostics_mod::get_pressure_given_height ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, dimension(is:ie,js:je,km+1), intent(in)  wz,
integer, intent(in)  kd,
real, dimension(kd), intent(in)  height,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  ts,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is:ie,js:je,kd), intent(out)  a2,
real, intent(in), optional  fac 
)
private
Parameters
[in]kdvertical dimension of the ouput height
[in]heightmust be monotonically decreasing with increasing k
[out]a2pressure (pa)

Definition at line 3443 of file fv_diagnostics.F90.

◆ get_vorticity()

subroutine, public fv_diagnostics_mod::get_vorticity ( integer  isc,
integer  iec,
integer  jsc,
integer  jec,
integer  isd,
integer  ied,
integer  jsd,
integer  jed,
integer  npz,
real, dimension(isd:ied, jsd:jed+1, npz), intent(in)  u,
real, dimension(isd:ied+1, jsd:jed, npz), intent(in)  v,
real, dimension(isc:iec, jsc:jec, npz), intent(out)  vort,
real, dimension(isd:ied,jsd:jed+1), intent(in)  dx,
real, dimension(isd:ied+1,jsd:jed), intent(in)  dy,
real, dimension(isd:ied,jsd:jed), intent(in)  rarea 
)

Definition at line 3077 of file fv_diagnostics.F90.

◆ getcape()

subroutine fv_diagnostics_mod::getcape ( integer, intent(in)  nk,
real, dimension(nk), intent(in)  p,
real, dimension(nk), intent(in)  t,
real, dimension(nk), intent(in)  dz,
real, dimension(nk), intent(in)  q,
real, dimension(nk), intent(in)  the,
real, intent(out)  cape,
real, intent(out)  cin,
integer, intent(in), optional  source_in 
)
private

The subroutine 'getcape' calculates the Convective Available Potential Energy (CAPE) from a Sounding.

Author
George H. Bryan Mesoscale and Microscale Meteorology Division National Center for Atmospheric Research Boulder, Colorado, USA gbrya.nosp@m.n@uc.nosp@m.ar.ed.nosp@m.u

: Last modified 10 October 2008

Definition at line 5140 of file fv_diagnostics.F90.

◆ getqvi()

real function fv_diagnostics_mod::getqvi ( real  p,
real  t 
)
private

Definition at line 5593 of file fv_diagnostics.F90.

◆ getqvs()

real function fv_diagnostics_mod::getqvs ( real  p,
real  t 
)
private

Definition at line 5578 of file fv_diagnostics.F90.

◆ helicity_relative()

subroutine fv_diagnostics_mod::helicity_relative ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  zvir,
integer, intent(in)  sphum,
real, dimension(is:ie,js:je), intent(out)  srh,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  ua,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  va,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, intent(in)  grav,
real, intent(in)  z_bot,
real, intent(in)  z_top 
)
private

Definition at line 3921 of file fv_diagnostics.F90.

◆ helicity_relative_caps()

subroutine, public fv_diagnostics_mod::helicity_relative_caps ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  zvir,
integer, intent(in)  sphum,
real, dimension(is:ie,js:je), intent(out)  srh,
real, dimension(is:ie,js:je), intent(in)  uc,
real, dimension(is:ie,js:je), intent(in)  vc,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  ua,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  va,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, intent(in)  grav,
real, intent(in)  z_bot,
real, intent(in)  z_top 
)

Definition at line 4011 of file fv_diagnostics.F90.

◆ init_mq()

subroutine fv_diagnostics_mod::init_mq ( real, dimension(is-ng:ie+ng, js-ng:je+ng), intent(in)  phis,
type(fv_grid_type), intent(in), target  gridstruct,
integer, intent(in)  npx,
integer, intent(in)  npy,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng 
)
private

Definition at line 1023 of file fv_diagnostics.F90.

◆ interpolate_vertical()

subroutine, public fv_diagnostics_mod::interpolate_vertical ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, intent(in)  plev,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is:ie,js:je,km), intent(in)  a3,
real, dimension(is:ie,js:je), intent(out)  a2 
)

Definition at line 3844 of file fv_diagnostics.F90.

◆ interpolate_z()

subroutine fv_diagnostics_mod::interpolate_z ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, intent(in)  zl,
real, dimension(is:ie,js:je,km+1), intent(in)  hght,
real, dimension(is:ie,js:je,km), intent(in)  a3,
real, dimension(is:ie,js:je), intent(out)  a2 
)
private
Parameters
[in]hghthght(k) > hght(k+1)

Definition at line 3885 of file fv_diagnostics.F90.

◆ max_uh()

subroutine, public fv_diagnostics_mod::max_uh ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  zvir,
integer, intent(in)  sphum,
real, dimension(is:ie,js:je), intent(inout)  uphmax,
real, dimension(is:ie,js:je), intent(inout)  uphmin,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  w,
real, dimension(is:ie,js:je,km), intent(in)  vort,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, intent(in)  grav,
real, intent(in)  z_bot,
real, intent(in)  z_top 
)

Definition at line 5031 of file fv_diagnostics.F90.

◆ max_vorticity()

subroutine, public fv_diagnostics_mod::max_vorticity ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  zvir,
integer, intent(in)  sphum,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, intent(in)  grav,
real, dimension(is:ie,js:je,km), intent(in)  vort,
real, dimension(is:ie,js:je), intent(inout)  maxvort,
real, intent(in)  z_bot,
real, intent(in)  z_top 
)

Definition at line 4978 of file fv_diagnostics.F90.

◆ max_vorticity_hy1()

subroutine, public fv_diagnostics_mod::max_vorticity_hy1 ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, dimension(is:ie,js:je,km), intent(in)  vort,
real, dimension(is:ie,js:je), intent(inout)  maxvorthy1 
)

Definition at line 4962 of file fv_diagnostics.F90.

◆ max_vv()

subroutine, public fv_diagnostics_mod::max_vv ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  npz,
integer, intent(in)  ng,
real, dimension(is:ie,js:je), intent(inout)  up2,
real, dimension(is:ie,js:je), intent(inout)  dn2,
real, dimension(is-1:ie+1,npz+1,js-1:je+1), intent(in)  pe,
real, dimension(is-ng:ie+ng,js-ng:je+ng,npz), intent(in)  w 
)

Definition at line 5102 of file fv_diagnostics.F90.

◆ nh_total_energy()

subroutine fv_diagnostics_mod::nh_total_energy ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed,
integer, intent(in)  km,
real, dimension(isd:ied,jsd:jed,km), intent(in)  w,
real, dimension(isd:ied,jsd:jed,km), intent(in)  delz,
real, dimension(isd:ied,jsd:jed,km), intent(in)  pt,
real, dimension(isd:ied,jsd:jed,km), intent(in)  delp,
real, dimension(isd:ied,jsd:jed,km,nwat), intent(in)  q,
real, dimension(isd:ied,jsd:jed), intent(in)  hs,
real, dimension(isd:ied, jsd:jed), intent(in)  area,
type(domain2d), intent(inout)  domain,
integer, intent(in)  sphum,
integer, intent(in)  liq_wat,
integer, intent(in)  rainwat,
integer, intent(in)  ice_wat,
integer, intent(in)  snowwat,
integer, intent(in)  graupel,
integer, intent(in)  nwat,
real, dimension(isd:ied,jsd:jed,km), intent(in)  ua,
real, dimension(isd:ied,jsd:jed,km), intent(in)  va,
logical, intent(in)  moist_phys,
real, dimension(is:ie,js:je), intent(out)  te 
)
private

The subroutine 'nh_total_energy computes vertically-integrated total energy per column.

Parameters
[in]hssurface geopotential
[out]tevertically integrated TE

Definition at line 4702 of file fv_diagnostics.F90.

◆ p_sum()

real function fv_diagnostics_mod::p_sum ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
integer, intent(in)  n_g,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  delp,
real(kind=r_grid), dimension(is-n_g:ie+n_g, js-n_g:je+n_g), intent(in)  area,
type(domain2d), intent(inout)  domain 
)
private

Definition at line 3417 of file fv_diagnostics.F90.

◆ ppme()

subroutine, public fv_diagnostics_mod::ppme ( real, dimension(im,km), intent(in)  p,
real, dimension(im,km+1), intent(out)  qe,
real, dimension(im,km), intent(in)  delp,
integer, intent(in)  im,
integer, intent(in)  km 
)

Definition at line 4327 of file fv_diagnostics.F90.

◆ prt_gb_nh_sh()

subroutine, public fv_diagnostics_mod::prt_gb_nh_sh ( character(len=*), intent(in)  qname,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
real, dimension(is:ie, js:je), intent(in)  a2,
real(kind=r_grid), dimension(is:ie, js:je), intent(in)  area,
real(kind=r_grid), dimension(is:ie, js:je), intent(in)  lat 
)

Definition at line 3592 of file fv_diagnostics.F90.

◆ prt_height()

subroutine, public fv_diagnostics_mod::prt_height ( character(len=*), intent(in)  qname,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  press,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real(kind=r_grid), dimension(is:ie, js:je), intent(in)  area,
real(kind=r_grid), dimension(is:ie, js:je), intent(in)  lat 
)

Definition at line 3543 of file fv_diagnostics.F90.

◆ prt_mass()

subroutine, public fv_diagnostics_mod::prt_mass ( integer, intent(in)  km,
integer, intent(in)  nq,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  n_g,
integer, intent(in)  nwat,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g), intent(in)  ps,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  delp,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km, nq), intent(in)  q,
real(kind=r_grid), dimension(is-n_g:ie+n_g,js-n_g:je+n_g), intent(in)  area,
type(domain2d), intent(inout)  domain 
)

Definition at line 3294 of file fv_diagnostics.F90.

◆ prt_maxmin()

subroutine, public fv_diagnostics_mod::prt_maxmin ( character(len=*), intent(in)  qname,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  q,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  n_g,
integer, intent(in)  km,
real, intent(in)  fac 
)

Definition at line 3210 of file fv_diagnostics.F90.

◆ prt_mxm()

subroutine, public fv_diagnostics_mod::prt_mxm ( character(len=*), intent(in)  qname,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  q,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  n_g,
integer, intent(in)  km,
real, intent(in)  fac,
real(kind=r_grid), dimension(is-3:ie+3, js-3:je+3), intent(in)  area,
type(domain2d), intent(inout)  domain 
)

Definition at line 3248 of file fv_diagnostics.F90.

◆ pv_entropy()

subroutine fv_diagnostics_mod::pv_entropy ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, dimension(is:ie,js:je,km), intent(inout)  vort,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  f_d,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,js:je,km), intent(in)  pkz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delp,
real, intent(in)  grav 
)
private

The subroutine 'pv_entropy' computes potential vorticity.

Author
Shian-Jiann Lin

Definition at line 4246 of file fv_diagnostics.F90.

◆ range_check()

subroutine, public fv_diagnostics_mod::range_check ( character(len=*), intent(in)  qname,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  q,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  n_g,
integer, intent(in)  km,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g,2), intent(in)  pos,
real, intent(in)  q_low,
real, intent(in)  q_hi,
logical, intent(out), optional  bad_range 
)

Definition at line 3153 of file fv_diagnostics.F90.

◆ rh_calc()

subroutine, public fv_diagnostics_mod::rh_calc ( real, dimension(:,:), intent(in)  pfull,
real, dimension(:,:), intent(in)  t,
real, dimension(:,:), intent(in)  qv,
real, dimension(:,:), intent(out)  rh,
logical, intent(in), optional  do_cmip 
)

Definition at line 4438 of file fv_diagnostics.F90.

◆ updraft_helicity()

subroutine fv_diagnostics_mod::updraft_helicity ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  ng,
integer, intent(in)  km,
real, intent(in)  zvir,
integer, intent(in)  sphum,
real, dimension(is:ie,js:je), intent(out)  uh,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  w,
real, dimension(is:ie,js:je,km), intent(in)  vort,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  delz,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km,*), intent(in)  q,
logical, intent(in)  hydrostatic,
real, dimension(is-ng:ie+ng,js-ng:je+ng,km), intent(in)  pt,
real, dimension(is:ie,km+1,js:je), intent(in)  peln,
real, dimension(is-ng:ie+ng,js-ng:je+ng), intent(in)  phis,
real, intent(in)  grav,
real, intent(in)  z_bot,
real, intent(in)  z_top 
)
private

Definition at line 4177 of file fv_diagnostics.F90.

◆ wind_max()

subroutine fv_diagnostics_mod::wind_max ( integer  isc,
integer  iec,
integer  jsc,
integer  jec,
integer  isd,
integer  ied,
integer  jsd,
integer  jed,
real, dimension(isc:iec,jsc:jec), intent(in)  us,
real, dimension(isc:iec,jsc:jec), intent(in)  vs,
real, dimension(isc:iec,jsc:jec), intent(out)  ws_max,
type(domain2d), intent(inout)  domain 
)
private

Definition at line 3043 of file fv_diagnostics.F90.

◆ z_sum()

subroutine, public fv_diagnostics_mod::z_sum ( integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
integer, intent(in)  n_g,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  delp,
real, dimension(is-n_g:ie+n_g, js-n_g:je+n_g, km), intent(in)  q,
real, dimension(is:ie,js:je), intent(out)  sum2 
)

Definition at line 3395 of file fv_diagnostics.F90.

Variable Documentation

◆ cld_amt

integer fv_diagnostics_mod::cld_amt
private

Definition at line 172 of file fv_diagnostics.F90.

◆ fv_time

type(time_type), public fv_diagnostics_mod::fv_time

Definition at line 166 of file fv_diagnostics.F90.

◆ ginv

real fv_diagnostics_mod::ginv
private

Definition at line 159 of file fv_diagnostics.F90.

◆ gn

character(len=3), public fv_diagnostics_mod::gn = ''

Definition at line 162 of file fv_diagnostics.F90.

◆ graupel

integer fv_diagnostics_mod::graupel
private

Definition at line 173 of file fv_diagnostics.F90.

◆ ice_wat

integer fv_diagnostics_mod::ice_wat
private

Definition at line 172 of file fv_diagnostics.F90.

◆ idiag

type(fv_diag_type), pointer fv_diagnostics_mod::idiag
private

Definition at line 167 of file fv_diagnostics.F90.

◆ istep

integer fv_diagnostics_mod::istep
private

Definition at line 174 of file fv_diagnostics.F90.

◆ levs

integer, dimension(nplev) fv_diagnostics_mod::levs
private

Definition at line 192 of file fv_diagnostics.F90.

◆ liq_wat

integer fv_diagnostics_mod::liq_wat
private

Definition at line 172 of file fv_diagnostics.F90.

◆ m_calendar

logical fv_diagnostics_mod::m_calendar
private

Definition at line 171 of file fv_diagnostics.F90.

◆ master

logical fv_diagnostics_mod::master
private

Definition at line 161 of file fv_diagnostics.F90.

◆ missing_value

real, parameter fv_diagnostics_mod::missing_value = -1.e10
private

Definition at line 156 of file fv_diagnostics.F90.

◆ missing_value2

real, parameter fv_diagnostics_mod::missing_value2 = -1.e3
private

for variables with many missing values

Definition at line 157 of file fv_diagnostics.F90.

◆ missing_value3

real, parameter fv_diagnostics_mod::missing_value3 = 1.e10
private

for variables where we look for smallest values

Definition at line 158 of file fv_diagnostics.F90.

◆ module_is_initialized

logical fv_diagnostics_mod::module_is_initialized =.false.
private

Definition at line 169 of file fv_diagnostics.F90.

◆ mp_top

integer fv_diagnostics_mod::mp_top
private

Definition at line 174 of file fv_diagnostics.F90.

◆ nplev

integer, parameter fv_diagnostics_mod::nplev = 31
private

Definition at line 191 of file fv_diagnostics.F90.

◆ pk0

real fv_diagnostics_mod::pk0
private

Definition at line 160 of file fv_diagnostics.F90.

◆ prt_minmax

logical, public fv_diagnostics_mod::prt_minmax =.false.

Definition at line 170 of file fv_diagnostics.F90.

◆ ptop

real fv_diagnostics_mod::ptop
private

Definition at line 175 of file fv_diagnostics.F90.

◆ qcly0

real, public fv_diagnostics_mod::qcly0

Definition at line 182 of file fv_diagnostics.F90.

◆ rad2deg

real, parameter fv_diagnostics_mod::rad2deg = 180./pi
private

Definition at line 176 of file fv_diagnostics.F90.

◆ rainwat

integer fv_diagnostics_mod::rainwat
private

Definition at line 173 of file fv_diagnostics.F90.

◆ snowwat

integer fv_diagnostics_mod::snowwat
private

Definition at line 173 of file fv_diagnostics.F90.

◆ sphum

integer fv_diagnostics_mod::sphum
private

Definition at line 172 of file fv_diagnostics.F90.

◆ sphum_ll_fix

real, public fv_diagnostics_mod::sphum_ll_fix = 0.

Definition at line 181 of file fv_diagnostics.F90.

◆ tlongname

character(len=256) fv_diagnostics_mod::tlongname
private

Definition at line 180 of file fv_diagnostics.F90.

◆ tname

character(len=128) fv_diagnostics_mod::tname
private

Definition at line 179 of file fv_diagnostics.F90.

◆ tunits

character(len=256) fv_diagnostics_mod::tunits
private

Definition at line 180 of file fv_diagnostics.F90.