FV3DYCORE  Version 2.0.0
fv_regional_mod Module Reference

Data Types

interface  dump_field
 
type  fv_domain_sides
 
type  fv_regional_bc_variables
 
type  single_vbl3d_sides
 
type  vars_2d
 
type  vars_3d
 

Functions/Subroutines

subroutine, public setup_regional_bc (Atm, dt_atmos, isd, ied, jsd, jed, npx, npy)
 
subroutine, public start_regional_cold_start (Atm, dt_atmos, ak, bk, levp, is, ie, js, je, isd, ied, jsd, jed)
 
subroutine, public start_regional_restart (Atm, dt_atmos, isc, iec, jsc, jec, isd, ied, jsd, jed)
 
subroutine, public read_new_bc_data (Atm, Time, Time_step_atmos, p_split, isd, ied, jsd, jed)
 
subroutine, public regional_bc_data (Atm, bc_hour, is, ie, js, je, isd, ied, jsd, jed, ak, bk)
 
subroutine read_regional_bc_file (is_input, ie_input, js_input, je_input, nlev, ntracers, var_name_root, array_3d, array_4d, tlev, required)
 
subroutine check (status)
 
subroutine allocate_regional_bc_arrays (side, north_bc, south_bc, east_bc, west_bc, is_0, ie_0, js_0, je_0, is_sn, ie_sn, js_sn, je_sn, is_we, ie_we, js_we, je_we, klev, ntracers, BC_side, delz_side)
 
subroutine remap_scalar_nggps_regional_bc (Atm, side, isd, ied, jsd, jed, is_bc, ie_bc, js_bc, je_bc, km, npz, ncnst, ak0, bk0, psc, t_in, qa, omga, zh, phis_reg, ps, BC_side)
 
subroutine remap_dwinds_regional_bc (Atm, is_input, ie_input, js_input, je_input, is_u, ie_u, js_u, je_u, is_v, ie_v, js_v, je_v, km, npz, ak0, bk0, psc, ud, vd, uc, vc, BC_side)
 
subroutine, public set_regional_bcs (delp, delz, w, pt ifdef USE_COND
 
subroutine, public regional_boundary_update (array, bc_vbl_name, lbnd_x, ubnd_x, lbnd_y, ubnd_y, ubnd_z, is, ie, js, je, isd, ied, jsd, jed, fcst_time, index4)
 
subroutine retrieve_bc_variable_data (bc_vbl_name, bc_side_t0, bc_side_t1, bc_t0, bc_t1, lbnd1, ubnd1, lbnd2, ubnd2, iq)
 
subroutine bc_time_interpolation (array, lbnd_x, ubnd_x, lbnd_y, ubnd_y, ubnd_z, bc_t0, bc_t1, lbnd1, ubnd1, lbnd2, ubnd2, i1, i2, j1, j2, is, ie, js, je, fcst_time, bc_update_interval, i1_blend, i2_blend, j1_blend, j2_blend, i_bc, j_bc, nside, bc_vbl_name, blend)
 
subroutine, public regional_bc_t1_to_t0 (BC_t1, BC_t0, nlev, ntracers, bnds)
 
subroutine convert_to_virt_pot_temp (isd, ied, jsd, jed, npz)
 
subroutine p_maxmin (qname, q, is, ie, js, je, km, fac)
 
subroutine pmaxmn (qname, q, is, ie, js, je, km, fac, area, domain)
 
subroutine fillq (im, km, nq, q, dp)
 
subroutine mp_auto_conversion (ql, qr, qi, qs)
 
subroutine nudge_qv_bc (Atm, isd, ied, jsd, jed)
 
subroutine dump_field_3d (domain, name, field, isd, ied, jsd, jed, nlev, stag)
 
subroutine dump_field_2d (domain, name, field, isd, ied, jsd, jed, stag)
 
subroutine prepare_full_fields (Atm)
 
subroutine, public write_full_fields (Atm)
 
subroutine apply_delz_boundary (istart, iend, jstart, jend, nz, Atm, name, field)
 
subroutine, public exch_uv (domain, bd, npz, u, v)
 
subroutine, public get_data_source (source, regional)
 
subroutine set_delp_and_tracers (BC_side, npz, nwat)
 

Variables

integer, parameter, public bc_time_interval =3
 
integer, parameter nhalo_data =4
 
integer, parameter nhalo_model =3
 
integer, parameter, public h_stagger = 1
 
integer, parameter, public u_stagger = 2
 
integer, parameter, public v_stagger = 3
 
real, parameter stretch_factor = 1.5
 
real, parameter target_lon = -97.5
 
real, parameter target_lat = 35.5
 
integer, parameter parent_tile = 6
 
integer, parameter refine_ratio = 3
 
integer, parameter cube_res = 96
 
integer, parameter istart_nest = 26
 
integer, parameter jstart_nest = 36
 
integer, parameter iend_nest = 167
 
integer, parameter jend_nest = 165
 
integer, parameter nvars_core =7
 -- # of prognostic variables in core restart file More...
 
integer, parameter ndims_core =6
 -- # of core restart dimensions More...
 
integer, parameter ndims_tracers =4
 – # of tracer restart dimensions More...
 
real, parameter blend_exp1 =0.5
 
real, parameter blend_exp2 =10.
 – Define the exponential dropoff of weights More...
 
real, public current_time_in_seconds
 
integer, save isd_mod
 
integer, save ied_mod
 
integer, save jsd_mod
 
integer, save jed_mod
 
integer, save ncid
 
integer, save, public next_time_to_read_bcs
 
integer, save nfields_tracers
 
integer, save npz
 
integer, save ntracers
 
integer, save k_split
 
integer, save n_split
 
integer, save, public bc_hour
 
integer, save, public ntimesteps_per_bc_update
 
integer, save cld_amt_index
 -- More...
 
integer, save graupel_index
 
integer, save ice_water_index
 
integer, save liq_water_index
 
integer, save o3mr_index
 
integer, save rain_water_index
 
integer, save snow_water_index
 
integer, save sphum_index
 More...
 
integer, save lbnd_x_tracers
 
integer, save lbnd_y_tracers
 -- Local lower bounds of x,y for tracer arrays More...
 
integer, save ubnd_x_tracers
 
integer, save ubnd_y_tracers
 – Local upper bounds of x,y for tracer arrays More...
 
integer, save nrows_blend
 – # of blending rows in the BC data files. More...
 
real, save dt_atmos
 -- The physics (large) timestep (sec) More...
 
real, save dyn_timestep
 – The dynamics timestep (sec) More...
 
real(kind=r_grid), dimension(:,:,:), allocatable agrid_reg
 -- Lon/lat of cell centers More...
 
real(kind=r_grid), dimension(:,:,:), allocatable grid_reg
 – Lon/lat of cell corners More...
 
real, dimension(:,:), allocatable phis_reg
 – Filtered sfc geopotential More...
 
real, dimension(:), allocatable, public ak_in
 
real, dimension(:), allocatable, public bk_in
 
logical, save north_bc
 
logical, save south_bc
 
logical, save east_bc
 
logical, save west_bc
 
logical, save, public begin_regional_restart =.true.
 
logical, dimension(:), allocatable, save blend_this_tracer
 
character(len=50) filename_core ='INPUT/fv_core.res.temp.nc'
 
character(len=50) filename_core_new ='RESTART/fv_core.res.tile1_new.nc'
 
character(len=50) filename_tracers ='INPUT/fv_tracer.res.temp.nc'
 
character(len=50) filename_tracers_new ='RESTART/fv_tracer.res.tile1_new.nc'
 
type(fv_domain_sides), target, save, public bc_t0
 
type(fv_domain_sides), target, save, public bc_t1
 – Boundary values for all BC variables at successive times from the regional BC file More...
 
type(fv_regional_bc_variables), pointer, save bc_north_t0
 
type(fv_regional_bc_variables), pointer, save bc_south_t0
 
type(fv_regional_bc_variables), pointer, save bc_west_t0
 
type(fv_regional_bc_variables), pointer, save bc_east_t0
 
type(fv_regional_bc_variables), pointer, save bc_north_t1
 
type(fv_regional_bc_variables), pointer, save bc_south_t1
 
type(fv_regional_bc_variables), pointer, save bc_west_t1
 
type(fv_regional_bc_variables), pointer, save bc_east_t1
 
type(fv_regional_bc_variables), pointer bc_side_t0
 
type(fv_regional_bc_variables), pointer bc_side_t1
 
type(fv_regional_bc_bounds_type), pointer, save regional_bounds
 
type(vars_3d), dimension(:), allocatable fields_core
 
type(vars_3d), dimension(:), allocatable fields_tracers
 
type(fv_nest_bc_type_3d), public delz_regbc
 
type(single_vbl3d_sidesdelz_auxiliary
 – Boundary delz that follows integration through forecast time. More...
 
integer ns = 0
 
real, parameter tice =273.16
 
real, parameter t_i0 =15.
 
real, parameter c_liq = 4185.5
 
real, parameter c_ice = 1972.0
 
real, parameter zvir = rvgas/rdgas - 1.
 
real, parameter cv_air = cp_air - rdgas
 
real, parameter cv_vap = cp_vapor - rvgas
 
real, dimension(:), allocatable dum1d
 
real, dimension(:), allocatable pref
 
character(len=100) grid_data ='grid.tile7.halo4.nc'
 
character(len=100) oro_data ='oro_data.tile7.halo4.nc'
 
real, parameter real_snan =x'FFF7FFFFFFFFFFFF'
 
real(kind=r_grid), parameter dbl_snan =x'FFF7FFFFFFFFFFFF'
 
integer, save bc_update_interval
 
integer, save nrows_blend_user
 
integer, public a_step
 
integer, public p_step
 
integer, public k_step
 
integer, public n_step
 
character(len=80) data_source
 

Function/Subroutine Documentation

◆ allocate_regional_bc_arrays()

subroutine fv_regional_mod::allocate_regional_bc_arrays ( character(len=5), intent(in)  side,
logical, intent(in)  north_bc,
logical, intent(in)  south_bc,
logical, intent(in)  east_bc,
logical, intent(in)  west_bc,
integer, intent(in)  is_0,
integer, intent(in)  ie_0,
integer, intent(in)  js_0,
integer, intent(in)  je_0,
integer, intent(in)  is_sn,
integer, intent(in)  ie_sn,
integer, intent(in)  js_sn,
integer, intent(in)  je_sn,
integer, intent(in)  is_we,
integer, intent(in)  ie_we,
integer, intent(in)  js_we,
integer, intent(in)  je_we,
integer, intent(in)  klev,
integer, intent(in)  ntracers,
type(fv_regional_bc_variables), intent(out)  BC_side,
real, dimension(:,:,:), intent(inout), optional, pointer  delz_side 
)
private
Parameters
[in]je_0– Start/end BC indices for cell centers
[in]je_sn– Start/end BC indices for south/north cell edges
[in]je_we– Start/end BC indices for west/east cell edges
[in]side– Which side are we allocating?
[in]west_bc– Which sides is this task on?
[in,out]delz_side– Boundary delz that follows integration through time.
[in,out]delz_side– The BC arrays are already allocated so exit.
[in,out]delz_side– Start with blending all tracers.

Definition at line 3313 of file fv_regional_bc.F90.

◆ apply_delz_boundary()

subroutine fv_regional_mod::apply_delz_boundary ( integer, intent(in)  istart,
integer, intent(in)  iend,
integer, intent(in)  jstart,
integer, intent(in)  jend,
integer  nz,
type(fv_atmos_type), intent(inout)  Atm,
character(len=*), intent(in)  name,
real, dimension(istart:iend,jstart:jend,1:nz), intent(inout)  field 
)
private

Definition at line 6224 of file fv_regional_bc.F90.

◆ bc_time_interpolation()

subroutine fv_regional_mod::bc_time_interpolation ( real, dimension(lbnd_x:ubnd_x,lbnd_y:ubnd_y,1:ubnd_z), intent(out)  array,
integer, intent(in)  lbnd_x,
integer, intent(in)  ubnd_x,
integer, intent(in)  lbnd_y,
integer, intent(in)  ubnd_y,
integer, intent(in)  ubnd_z,
real, dimension(lbnd1:ubnd1,lbnd2:ubnd2,1:ubnd_z), intent(in)  bc_t0,
real, dimension(lbnd1:ubnd1,lbnd2:ubnd2,1:ubnd_z), intent(in)  bc_t1,
integer, intent(in)  lbnd1,
integer, intent(in)  ubnd1,
integer, intent(in)  lbnd2,
integer, intent(in)  ubnd2,
integer, intent(in)  i1,
integer, intent(in)  i2,
integer, intent(in)  j1,
integer, intent(in)  j2,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
real, intent(in)  fcst_time,
integer, intent(in)  bc_update_interval,
integer, intent(in)  i1_blend,
integer, intent(in)  i2_blend,
integer, intent(in)  j1_blend,
integer, intent(in)  j2_blend,
integer, intent(in)  i_bc,
integer, intent(in)  j_bc,
integer, intent(in)  nside,
character(len=*), intent(in)  bc_vbl_name,
logical, intent(in)  blend 
)
private
Parameters
[in]ubnd_z– Dimensions of the array to be updated.
[in]ubnd2– Index limits of the BC arrays.
[in]je– Min/Max index limits on task's computational subdomain
[in]bc_update_interval– Time (hours) between BC data states
[in]fcst_time– Current forecast time (sec)
[in]blend– Can blending be applied to this variable?
[out]array– Update boundary points in this array.
Parameters
bc_t0-- Interpolate between these
j2-- Index limits of the updated boundary region.
j2_blend-- Index limits of the updated blending region.
j_bc-- Innermost bndry indices (anchor pts for blending)

Definition at line 4659 of file fv_regional_bc.F90.

◆ check()

subroutine fv_regional_mod::check ( integer, intent(in)  status)
private

Definition at line 3290 of file fv_regional_bc.F90.

◆ convert_to_virt_pot_temp()

subroutine fv_regional_mod::convert_to_virt_pot_temp ( integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed,
integer, intent(in)  npz 
)
private

Definition at line 5042 of file fv_regional_bc.F90.

◆ dump_field_2d()

subroutine fv_regional_mod::dump_field_2d ( type(domain2d), intent(inout)  domain,
character(len=*), intent(in)  name,
real, dimension(isd:ied,jsd:jed), intent(inout)  field,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed,
integer, intent(in)  stag 
)
private

Definition at line 5667 of file fv_regional_bc.F90.

◆ dump_field_3d()

subroutine fv_regional_mod::dump_field_3d ( type(domain2d), intent(inout)  domain,
character(len=*), intent(in)  name,
real, dimension(isd:ied,jsd:jed,1:nlev), intent(inout)  field,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed,
integer, intent(in)  nlev,
integer, intent(in)  stag 
)
private

Definition at line 5554 of file fv_regional_bc.F90.

◆ exch_uv()

subroutine, public fv_regional_mod::exch_uv ( type(domain2d), intent(inout)  domain,
type(fv_grid_bounds_type), intent(in)  bd,
integer, intent(in)  npz,
real, dimension (bd%isd:bd%ied ,bd%jsd:bd%jed+1,1:npz), intent(inout)  u,
real, dimension (bd%isd:bd%ied+1,bd%jsd:bd%jed ,1:npz), intent(inout)  v 
)

Definition at line 6430 of file fv_regional_bc.F90.

◆ fillq()

subroutine fv_regional_mod::fillq ( integer, intent(in)  im,
integer, intent(in)  km,
integer, intent(in)  nq,
real, dimension(im,km,nq), intent(inout)  q,
real, dimension(im,km), intent(in)  dp 
)
private

Definition at line 5291 of file fv_regional_bc.F90.

◆ get_data_source()

subroutine, public fv_regional_mod::get_data_source ( character (len = 80)  source,
logical  regional 
)

Definition at line 6636 of file fv_regional_bc.F90.

◆ mp_auto_conversion()

subroutine fv_regional_mod::mp_auto_conversion ( real, intent(inout)  ql,
real, intent(inout)  qr,
real, intent(inout)  qi,
real, intent(inout)  qs 
)
private

Definition at line 5326 of file fv_regional_bc.F90.

◆ nudge_qv_bc()

subroutine fv_regional_mod::nudge_qv_bc ( type(fv_atmos_type), intent(inout), target  Atm,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed 
)
private
Parameters
[in]jed– Memory limits of task subdomain
[in,out]atm– Atm object for the current domain

Definition at line 5346 of file fv_regional_bc.F90.

◆ p_maxmin()

subroutine fv_regional_mod::p_maxmin ( character(len=*), intent(in)  qname,
real, dimension(is:ie, js:je, km), intent(in)  q,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
integer, intent(in)  km,
real, intent(in)  fac 
)
private

Definition at line 5226 of file fv_regional_bc.F90.

◆ pmaxmn()

subroutine fv_regional_mod::pmaxmn ( character(len=*), intent(in)  qname,
real, dimension(is:ie, js:je, km), intent(in)  q,
integer, intent(in)  is,
integer, intent(in)  ie,
integer, intent(in)  js,
integer, intent(in)  je,
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 
)
private

Definition at line 5254 of file fv_regional_bc.F90.

◆ prepare_full_fields()

subroutine fv_regional_mod::prepare_full_fields ( type(fv_atmos_type), intent(inout), target  Atm)
private
Parameters
[in,out]atm– Atm object for the current domain

Definition at line 5767 of file fv_regional_bc.F90.

◆ read_new_bc_data()

subroutine, public fv_regional_mod::read_new_bc_data ( type(fv_atmos_type), intent(inout)  Atm,
type(time_type), intent(in)  Time,
type (time_type), intent(in)  Time_step_atmos,
integer, intent(in)  p_split,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed 
)
Parameters
[in,out]atm– Atm object for the current domain
[in]time– Current forecast time
[in]time_step_atmos– Large (physics) timestep
Parameters
jed-- Memory limits of task subdomain

Definition at line 1431 of file fv_regional_bc.F90.

◆ read_regional_bc_file()

subroutine fv_regional_mod::read_regional_bc_file ( integer, intent(in)  is_input,
integer, intent(in)  ie_input,
integer, intent(in)  js_input,
integer, intent(in)  je_input,
integer, intent(in)  nlev,
integer, intent(in)  ntracers,
character(len=*), intent(in)  var_name_root,
real, dimension(is_input:ie_input,js_input:je_input,1:nlev), intent(out), optional  array_3d,
real, dimension(is_input:ie_input,js_input:je_input,1:nlev,1:ntracers), intent(out), optional  array_4d,
integer, intent(in), optional  tlev,
logical, intent(in), optional  required 
)
private
Parameters
[in]tlev– Position of current tracer among all of them
[in]var_name_root– Root of variable name in the boundary file
[out]array_3d– The input 3-D variable's coverage of task subdomain
[out]array_4d– The input 4-D variable's coverage of subdomain

Definition at line 3013 of file fv_regional_bc.F90.

◆ regional_bc_data()

subroutine, public fv_regional_mod::regional_bc_data ( type(fv_atmos_type), intent(inout), target  Atm,
integer, intent(in)  bc_hour,
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,
real, dimension(:), intent(in)  ak,
real, dimension(:), intent(in)  bk 
)
Parameters
[in]bc_hour– The forecast hour of the BC file to be read.
[in]jed– Halo limits of task subdomain
[in,out]atm– Atm object for the current domain
Parameters
je-- Compute limits of task subdomain

Definition at line 1514 of file fv_regional_bc.F90.

◆ regional_bc_t1_to_t0()

subroutine, public fv_regional_mod::regional_bc_t1_to_t0 ( type(fv_domain_sides), intent(in), target  BC_t1,
type(fv_domain_sides), intent(inout), target  BC_t0,
integer, intent(in)  nlev,
integer, intent(in)  ntracers,
type(fv_regional_bc_bounds_type), intent(in)  bnds 
)
Parameters
[in]ntracers– # of advected tracers
[in]bnds– Index limits for all types of vbls in boundary region
Parameters
nlev-- # of model layers.

Definition at line 4837 of file fv_regional_bc.F90.

◆ regional_boundary_update()

subroutine, public fv_regional_mod::regional_boundary_update ( real, dimension(lbnd_x:ubnd_x,lbnd_y:ubnd_y,1:ubnd_z), intent(out)  array,
character(len=*), intent(in)  bc_vbl_name,
integer, intent(in)  lbnd_x,
integer, intent(in)  ubnd_x,
integer, intent(in)  lbnd_y,
integer, intent(in)  ubnd_y,
integer, intent(in)  ubnd_z,
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,
real, intent(in)  fcst_time,
integer, intent(in), optional  index4 
)
Parameters
[in]ubnd_z– Dimensions of full prognostic array to be updated.
[in]jed– Memory limits
[in]index4– Index for the 4-D tracer array.
[in]fcst_time– Forecast time (sec) at which BC update is applied.
[in]bc_vbl_name– Name of the variable to be updated.
[out]array– Update this full array's boundary region.
Parameters
je-- Compute limits

Definition at line 4255 of file fv_regional_bc.F90.

◆ remap_dwinds_regional_bc()

subroutine fv_regional_mod::remap_dwinds_regional_bc ( type(fv_atmos_type), intent(inout)  Atm,
integer, intent(in)  is_input,
integer, intent(in)  ie_input,
integer, intent(in)  js_input,
integer, intent(in)  je_input,
integer, intent(in)  is_u,
integer, intent(in)  ie_u,
integer, intent(in)  js_u,
integer, intent(in)  je_u,
integer, intent(in)  is_v,
integer, intent(in)  ie_v,
integer, intent(in)  js_v,
integer, intent(in)  je_v,
integer, intent(in)  km,
integer, intent(in)  npz,
real, dimension(km+1), intent(in)  ak0,
real, dimension(km+1), intent(in)  bk0,
real, dimension(is_input:ie_input,js_input:je_input), intent(in)  psc,
real, dimension(is_u:ie_u,js_u:je_u,km), intent(in)  ud,
real, dimension(is_v:ie_v,js_v:je_v,km), intent(in)  vd,
real, dimension(is_v:ie_v,js_v:je_v,km), intent(in)  uc,
real, dimension(is_u:ie_u,js_u:je_u,km), intent(in)  vc,
type(fv_regional_bc_variables), intent(inout)  BC_side 
)
private
Parameters
[in]je_input– index limits of the boundary arrays with nahlo=nhalo_data
[in]je_u– index limits of D-grid u in this boundary region
[in]je_v– index limits of D-grid v in this boundary region
[in]npz– # of levels in final 3-D integration variables
[in,out]bc_side– The BC variables on a domain side at the final integration levels.
Parameters
km-- # of levels in 3-D input variables

Definition at line 3835 of file fv_regional_bc.F90.

◆ remap_scalar_nggps_regional_bc()

subroutine fv_regional_mod::remap_scalar_nggps_regional_bc ( type(fv_atmos_type), intent(inout)  Atm,
character(len=5), intent(in)  side,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed,
integer, intent(in)  is_bc,
integer, intent(in)  ie_bc,
integer, intent(in)  js_bc,
integer, intent(in)  je_bc,
integer, intent(in)  km,
integer, intent(in)  npz,
integer, intent(in)  ncnst,
real, dimension(km+1), intent(in)  ak0,
real, dimension(km+1), intent(in)  bk0,
real, dimension(is_bc:ie_bc,js_bc:je_bc), intent(in)  psc,
real, dimension(is_bc:ie_bc,js_bc:je_bc,km), intent(in)  t_in,
real, dimension(is_bc:ie_bc,js_bc:je_bc,km,ncnst), intent(in)  qa,
real, dimension(is_bc:ie_bc,js_bc:je_bc,km), intent(in)  omga,
real, dimension(is_bc:ie_bc,js_bc:je_bc,km+1), intent(in)  zh,
real, dimension(isd-1:ied+1,jsd-1:jed+1), intent(inout)  phis_reg,
real, dimension(is_bc:ie_bc,js_bc:je_bc), intent(out)  ps,
type(fv_regional_bc_variables), intent(inout)  BC_side 
)
private
Parameters
[in]jed– index limits of the Atm arrays w/halo=nhalo_model
[in]je_bc– index limits of working arrays on boundary task subdomains (halo=nhalo_data)
[in]ncnst– # of tracer variables
[in,out]phis_reg– Filtered sfc geopotential from preprocessing.
[out]ps– sfc p in regional domain boundary region
[in,out]bc_side– The BC variables on a domain side at the final integration levels.
Parameters
km-- # of levels in 3-D input variables
npz-- # of levels in final 3-D integration variables

Definition at line 3402 of file fv_regional_bc.F90.

◆ retrieve_bc_variable_data()

subroutine fv_regional_mod::retrieve_bc_variable_data ( character(len=*), intent(in)  bc_vbl_name,
type(fv_regional_bc_variables), pointer  bc_side_t0,
type(fv_regional_bc_variables), pointer  bc_side_t1,
real, dimension(:,:,:), pointer  bc_t0,
real, dimension(:,:,:), pointer  bc_t1,
integer, intent(out)  lbnd1,
integer, intent(out)  ubnd1,
integer, intent(out)  lbnd2,
integer, intent(out)  ubnd2,
integer, intent(in)  iq 
)
private
Parameters
[in]iq– Index used by 4-D tracer array.
bc_side_t1– Boundary states for the given domain side.
[out]ubnd2– Horizontal dimensions of boundary array
bc_t1– Boundary state values for the desired variable.

Definition at line 4548 of file fv_regional_bc.F90.

◆ set_delp_and_tracers()

subroutine fv_regional_mod::set_delp_and_tracers ( type(fv_regional_bc_variables), intent(inout)  BC_side,
integer  npz,
integer  nwat 
)
private
Parameters
[in,out]bc_side– The BC variables on a domain side at the final integration levels.

Definition at line 6661 of file fv_regional_bc.F90.

◆ set_regional_bcs()

subroutine, public fv_regional_mod::set_regional_bcs ( real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz), intent(out)  delp,
real, dimension(bd%is:,bd%js:,1:), intent(out)  delz,
real, dimension(bd%isd:,bd%jsd:,1:), intent(out)  w,
real, dimension(bd%isd:bd%ied,bd%jsd:bd%jed,npz), intent(out)  pt,
  ifdef,
  USE_COND 
)

Definition at line 3947 of file fv_regional_bc.F90.

◆ setup_regional_bc()

subroutine, public fv_regional_mod::setup_regional_bc ( type(fv_atmos_type), intent(inout), target  Atm,
real, intent(in)  dt_atmos,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed,
integer, intent(in)  npx,
integer, intent(in)  npy 
)
Parameters
[in]dt_atmos– The large (physics) timestep (sec)
[in,out]atm– Atm object for the current domain

Definition at line 259 of file fv_regional_bc.F90.

◆ start_regional_cold_start()

subroutine, public fv_regional_mod::start_regional_cold_start ( type(fv_atmos_type), intent(inout)  Atm,
real, intent(in)  dt_atmos,
real, dimension(1:levp+1), intent(in)  ak,
real, dimension(1:levp+1), intent(in)  bk,
integer, intent(in)  levp,
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 
)
Parameters
[in,out]atm– Atm object for the current domain
[in]dt_atmos– The large (physics) timestep (sec)
Parameters
je-- Integration limits of task subdomain
jed-- Memory limits of task subdomain

Definition at line 1223 of file fv_regional_bc.F90.

◆ start_regional_restart()

subroutine, public fv_regional_mod::start_regional_restart ( type(fv_atmos_type), intent(inout)  Atm,
real, intent(in)  dt_atmos,
integer, intent(in)  isc,
integer, intent(in)  iec,
integer, intent(in)  jsc,
integer, intent(in)  jec,
integer, intent(in)  isd,
integer, intent(in)  ied,
integer, intent(in)  jsd,
integer, intent(in)  jed 
)
Parameters
[in,out]atm– Atm object for the current domain
[in]dt_atmos– The large (physics) timestep (sec)
[in]jed– Memory limits of task subdomain
Parameters
jec-- Integration limits of task subdomain

Definition at line 1319 of file fv_regional_bc.F90.

◆ write_full_fields()

subroutine, public fv_regional_mod::write_full_fields ( type(fv_atmos_type), intent(inout), target  Atm)

Definition at line 5924 of file fv_regional_bc.F90.

Variable Documentation

◆ a_step

integer, public fv_regional_mod::a_step

Definition at line 249 of file fv_regional_bc.F90.

◆ agrid_reg

real(kind=r_grid), dimension(:,:,:), allocatable fv_regional_mod::agrid_reg
private

-- Lon/lat of cell centers

Definition at line 150 of file fv_regional_bc.F90.

◆ ak_in

real, dimension(:), allocatable, public fv_regional_mod::ak_in

Definition at line 155 of file fv_regional_bc.F90.

◆ bc_east_t0

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_east_t0
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_east_t1

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_east_t1
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_hour

integer, save, public fv_regional_mod::bc_hour

Definition at line 131 of file fv_regional_bc.F90.

◆ bc_north_t0

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_north_t0
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_north_t1

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_north_t1
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_side_t0

type(fv_regional_bc_variables), pointer fv_regional_mod::bc_side_t0
private

Definition at line 210 of file fv_regional_bc.F90.

◆ bc_side_t1

type(fv_regional_bc_variables), pointer fv_regional_mod::bc_side_t1
private

Definition at line 210 of file fv_regional_bc.F90.

◆ bc_south_t0

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_south_t0
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_south_t1

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_south_t1
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_t0

type(fv_domain_sides), target, save, public fv_regional_mod::bc_t0

Definition at line 199 of file fv_regional_bc.F90.

◆ bc_t1

type(fv_domain_sides), target, save, public fv_regional_mod::bc_t1

– Boundary values for all BC variables at successive times from the regional BC file

Definition at line 199 of file fv_regional_bc.F90.

◆ bc_time_interval

integer, parameter, public fv_regional_mod::bc_time_interval =3

Definition at line 88 of file fv_regional_bc.F90.

◆ bc_update_interval

integer, save fv_regional_mod::bc_update_interval
private

Definition at line 247 of file fv_regional_bc.F90.

◆ bc_west_t0

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_west_t0
private

Definition at line 201 of file fv_regional_bc.F90.

◆ bc_west_t1

type(fv_regional_bc_variables), pointer, save fv_regional_mod::bc_west_t1
private

Definition at line 201 of file fv_regional_bc.F90.

◆ begin_regional_restart

logical, save, public fv_regional_mod::begin_regional_restart =.true.

Definition at line 157 of file fv_regional_bc.F90.

◆ bk_in

real, dimension(:), allocatable, public fv_regional_mod::bk_in

Definition at line 155 of file fv_regional_bc.F90.

◆ blend_exp1

real, parameter fv_regional_mod::blend_exp1 =0.5
private

Definition at line 119 of file fv_regional_bc.F90.

◆ blend_exp2

real, parameter fv_regional_mod::blend_exp2 =10.
private

– Define the exponential dropoff of weights

Definition at line 119 of file fv_regional_bc.F90.

◆ blend_this_tracer

logical, dimension(:), allocatable, save fv_regional_mod::blend_this_tracer
private

Definition at line 160 of file fv_regional_bc.F90.

◆ c_ice

real, parameter fv_regional_mod::c_ice = 1972.0
private

Definition at line 225 of file fv_regional_bc.F90.

◆ c_liq

real, parameter fv_regional_mod::c_liq = 4185.5
private

Definition at line 224 of file fv_regional_bc.F90.

◆ cld_amt_index

integer, save fv_regional_mod::cld_amt_index
private

--

Definition at line 133 of file fv_regional_bc.F90.

◆ cube_res

integer, parameter fv_regional_mod::cube_res = 96
private

Definition at line 103 of file fv_regional_bc.F90.

◆ current_time_in_seconds

real, public fv_regional_mod::current_time_in_seconds

Definition at line 122 of file fv_regional_bc.F90.

◆ cv_air

real, parameter fv_regional_mod::cv_air = cp_air - rdgas
private

Definition at line 226 of file fv_regional_bc.F90.

◆ cv_vap

real, parameter fv_regional_mod::cv_vap = cp_vapor - rvgas
private

Definition at line 226 of file fv_regional_bc.F90.

◆ data_source

character(len=80) fv_regional_mod::data_source
private

Definition at line 251 of file fv_regional_bc.F90.

◆ dbl_snan

real(kind=r_grid), parameter fv_regional_mod::dbl_snan =x'FFF7FFFFFFFFFFFF'
private

Definition at line 240 of file fv_regional_bc.F90.

◆ delz_auxiliary

type(single_vbl3d_sides) fv_regional_mod::delz_auxiliary
private

– Boundary delz that follows integration through forecast time.

Definition at line 218 of file fv_regional_bc.F90.

◆ delz_regbc

type(fv_nest_bc_type_3d), public fv_regional_mod::delz_regbc

Definition at line 216 of file fv_regional_bc.F90.

◆ dt_atmos

real, save fv_regional_mod::dt_atmos
private

-- The physics (large) timestep (sec)

Definition at line 147 of file fv_regional_bc.F90.

◆ dum1d

real, dimension(:), allocatable fv_regional_mod::dum1d
private

Definition at line 230 of file fv_regional_bc.F90.

◆ dyn_timestep

real, save fv_regional_mod::dyn_timestep
private

– The dynamics timestep (sec)

Definition at line 147 of file fv_regional_bc.F90.

◆ east_bc

logical, save fv_regional_mod::east_bc
private

Definition at line 157 of file fv_regional_bc.F90.

◆ fields_core

type(vars_3d), dimension(:), allocatable fv_regional_mod::fields_core
private

Definition at line 214 of file fv_regional_bc.F90.

◆ fields_tracers

type(vars_3d), dimension(:), allocatable fv_regional_mod::fields_tracers
private

Definition at line 214 of file fv_regional_bc.F90.

◆ filename_core

character(len=50) fv_regional_mod::filename_core ='INPUT/fv_core.res.temp.nc'
private

Definition at line 162 of file fv_regional_bc.F90.

◆ filename_core_new

character(len=50) fv_regional_mod::filename_core_new ='RESTART/fv_core.res.tile1_new.nc'
private

Definition at line 163 of file fv_regional_bc.F90.

◆ filename_tracers

character(len=50) fv_regional_mod::filename_tracers ='INPUT/fv_tracer.res.temp.nc'
private

Definition at line 164 of file fv_regional_bc.F90.

◆ filename_tracers_new

character(len=50) fv_regional_mod::filename_tracers_new ='RESTART/fv_tracer.res.tile1_new.nc'
private

Definition at line 165 of file fv_regional_bc.F90.

◆ graupel_index

integer, save fv_regional_mod::graupel_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ grid_data

character(len=100) fv_regional_mod::grid_data ='grid.tile7.halo4.nc'
private

Definition at line 232 of file fv_regional_bc.F90.

◆ grid_reg

real(kind=r_grid), dimension(:,:,:), allocatable fv_regional_mod::grid_reg
private

– Lon/lat of cell corners

Definition at line 150 of file fv_regional_bc.F90.

◆ h_stagger

integer, parameter, public fv_regional_mod::h_stagger = 1

Definition at line 92 of file fv_regional_bc.F90.

◆ ice_water_index

integer, save fv_regional_mod::ice_water_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ ied_mod

integer, save fv_regional_mod::ied_mod
private

Definition at line 124 of file fv_regional_bc.F90.

◆ iend_nest

integer, parameter fv_regional_mod::iend_nest = 167
private

Definition at line 106 of file fv_regional_bc.F90.

◆ isd_mod

integer, save fv_regional_mod::isd_mod
private

Definition at line 124 of file fv_regional_bc.F90.

◆ istart_nest

integer, parameter fv_regional_mod::istart_nest = 26
private

Definition at line 104 of file fv_regional_bc.F90.

◆ jed_mod

integer, save fv_regional_mod::jed_mod
private

Definition at line 124 of file fv_regional_bc.F90.

◆ jend_nest

integer, parameter fv_regional_mod::jend_nest = 165
private

Definition at line 107 of file fv_regional_bc.F90.

◆ jsd_mod

integer, save fv_regional_mod::jsd_mod
private

Definition at line 124 of file fv_regional_bc.F90.

◆ jstart_nest

integer, parameter fv_regional_mod::jstart_nest = 36
private

Definition at line 105 of file fv_regional_bc.F90.

◆ k_split

integer, save fv_regional_mod::k_split
private

Definition at line 129 of file fv_regional_bc.F90.

◆ k_step

integer, public fv_regional_mod::k_step

Definition at line 249 of file fv_regional_bc.F90.

◆ lbnd_x_tracers

integer, save fv_regional_mod::lbnd_x_tracers
private

Definition at line 142 of file fv_regional_bc.F90.

◆ lbnd_y_tracers

integer, save fv_regional_mod::lbnd_y_tracers
private

-- Local lower bounds of x,y for tracer arrays

Definition at line 142 of file fv_regional_bc.F90.

◆ liq_water_index

integer, save fv_regional_mod::liq_water_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ n_split

integer, save fv_regional_mod::n_split
private

Definition at line 129 of file fv_regional_bc.F90.

◆ n_step

integer, public fv_regional_mod::n_step

Definition at line 249 of file fv_regional_bc.F90.

◆ ncid

integer, save fv_regional_mod::ncid
private

Definition at line 126 of file fv_regional_bc.F90.

◆ ndims_core

integer, parameter fv_regional_mod::ndims_core =6
private

-- # of core restart dimensions

Definition at line 115 of file fv_regional_bc.F90.

◆ ndims_tracers

integer, parameter fv_regional_mod::ndims_tracers =4
private

– # of tracer restart dimensions

Definition at line 115 of file fv_regional_bc.F90.

◆ next_time_to_read_bcs

integer, save, public fv_regional_mod::next_time_to_read_bcs

Definition at line 126 of file fv_regional_bc.F90.

◆ nfields_tracers

integer, save fv_regional_mod::nfields_tracers
private

Definition at line 126 of file fv_regional_bc.F90.

◆ nhalo_data

integer, parameter fv_regional_mod::nhalo_data =4
private

Definition at line 88 of file fv_regional_bc.F90.

◆ nhalo_model

integer, parameter fv_regional_mod::nhalo_model =3
private

Definition at line 88 of file fv_regional_bc.F90.

◆ north_bc

logical, save fv_regional_mod::north_bc
private

Definition at line 157 of file fv_regional_bc.F90.

◆ npz

integer, save fv_regional_mod::npz
private

Definition at line 126 of file fv_regional_bc.F90.

◆ nrows_blend

integer, save fv_regional_mod::nrows_blend
private

– # of blending rows in the BC data files.

Definition at line 145 of file fv_regional_bc.F90.

◆ nrows_blend_user

integer, save fv_regional_mod::nrows_blend_user
private

Definition at line 247 of file fv_regional_bc.F90.

◆ ns

integer fv_regional_mod::ns = 0
private

Definition at line 220 of file fv_regional_bc.F90.

◆ ntimesteps_per_bc_update

integer, save, public fv_regional_mod::ntimesteps_per_bc_update

Definition at line 131 of file fv_regional_bc.F90.

◆ ntracers

integer, save fv_regional_mod::ntracers
private

Definition at line 126 of file fv_regional_bc.F90.

◆ nvars_core

integer, parameter fv_regional_mod::nvars_core =7
private

-- # of prognostic variables in core restart file

Definition at line 115 of file fv_regional_bc.F90.

◆ o3mr_index

integer, save fv_regional_mod::o3mr_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ oro_data

character(len=100) fv_regional_mod::oro_data ='oro_data.tile7.halo4.nc'
private

Definition at line 232 of file fv_regional_bc.F90.

◆ p_step

integer, public fv_regional_mod::p_step

Definition at line 249 of file fv_regional_bc.F90.

◆ parent_tile

integer, parameter fv_regional_mod::parent_tile = 6
private

Definition at line 100 of file fv_regional_bc.F90.

◆ phis_reg

real, dimension(:,:), allocatable fv_regional_mod::phis_reg
private

– Filtered sfc geopotential

Definition at line 153 of file fv_regional_bc.F90.

◆ pref

real, dimension(:), allocatable fv_regional_mod::pref
private

Definition at line 230 of file fv_regional_bc.F90.

◆ rain_water_index

integer, save fv_regional_mod::rain_water_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ real_snan

real, parameter fv_regional_mod::real_snan =x'FFF7FFFFFFFFFFFF'
private

Definition at line 238 of file fv_regional_bc.F90.

◆ refine_ratio

integer, parameter fv_regional_mod::refine_ratio = 3
private

Definition at line 101 of file fv_regional_bc.F90.

◆ regional_bounds

type(fv_regional_bc_bounds_type), pointer, save fv_regional_mod::regional_bounds
private

Definition at line 212 of file fv_regional_bc.F90.

◆ snow_water_index

integer, save fv_regional_mod::snow_water_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ south_bc

logical, save fv_regional_mod::south_bc
private

Definition at line 157 of file fv_regional_bc.F90.

◆ sphum_index

integer, save fv_regional_mod::sphum_index
private

Definition at line 133 of file fv_regional_bc.F90.

◆ stretch_factor

real, parameter fv_regional_mod::stretch_factor = 1.5
private

Definition at line 97 of file fv_regional_bc.F90.

◆ t_i0

real, parameter fv_regional_mod::t_i0 =15.
private

Definition at line 222 of file fv_regional_bc.F90.

◆ target_lat

real, parameter fv_regional_mod::target_lat = 35.5
private

Definition at line 99 of file fv_regional_bc.F90.

◆ target_lon

real, parameter fv_regional_mod::target_lon = -97.5
private

Definition at line 98 of file fv_regional_bc.F90.

◆ tice

real, parameter fv_regional_mod::tice =273.16
private

Definition at line 222 of file fv_regional_bc.F90.

◆ u_stagger

integer, parameter, public fv_regional_mod::u_stagger = 2

Definition at line 93 of file fv_regional_bc.F90.

◆ ubnd_x_tracers

integer, save fv_regional_mod::ubnd_x_tracers
private

Definition at line 142 of file fv_regional_bc.F90.

◆ ubnd_y_tracers

integer, save fv_regional_mod::ubnd_y_tracers
private

– Local upper bounds of x,y for tracer arrays

Definition at line 142 of file fv_regional_bc.F90.

◆ v_stagger

integer, parameter, public fv_regional_mod::v_stagger = 3

Definition at line 94 of file fv_regional_bc.F90.

◆ west_bc

logical, save fv_regional_mod::west_bc
private

Definition at line 157 of file fv_regional_bc.F90.

◆ zvir

real, parameter fv_regional_mod::zvir = rvgas/rdgas - 1.
private

Definition at line 226 of file fv_regional_bc.F90.