CAM
clubb_intr Module Reference

Functions/Subroutines

subroutine, public clubb_register_cam ()
 
logical function, public clubb_implements_cnst (name)
 
subroutine, public clubb_init_cnst (name, q, gcid)
 
subroutine, public clubb_readnl (nlfile)
 
subroutine, public clubb_ini_cam (pbuf2d, dp1_in)
 
subroutine, public clubb_tend_cam (state, ptend_all, pbuf, hdtime, cmfmc, cam_in, sgh30, macmic_it, cld_macmic_num_steps, dlf, det_s, det_ice, alst_o)
 
subroutine, public clubb_surface (state, ptend, ztodt, cam_in, ustar, obklen)
 
real(r8) function diag_ustar (z, bflx, wnd, z0)
 
subroutine, public stats_init_clubb (l_stats_in, stats_tsamp_in, stats_tout_in, nnzp, nnrad_zt, nnrad_zm, delt)
 
subroutine, public stats_end_timestep_clubb (lchnk, thecol, out_zt, out_zm, out_radzt, out_radzm, out_sfc)
 
subroutine, private stats_zero (kk, nn, x, n, l_in_update)
 
subroutine, private stats_avg (kk, nn, x, n)
 

Variables

logical, public do_cldcool
 
integer, parameter grid_type = 3
 
integer, parameter hydromet_dim = 0
 
real(r8), dimension(0) sclr_tol = 1.e-8_r8
 
character(len=6), parameter saturation_equation = "flatau"
 
real(r8), parameter theta0 = 300._r8
 
real(r8), parameter ts_nudge = 86400._r8
 
real(r8), parameter p0_clubb = 100000._r8
 
real(r8), parameter host_dx = 100000._r8
 
real(r8), parameter host_dy = 100000._r8
 
integer, parameter sclr_dim = 0
 
real(r8), parameter wp3_const = 1._r8
 
real(r8), parameter wpthlp_const = 10.0_r8
 
real(r8), parameter wprtp_const = 0.01_r8
 
real(r8), parameter rtpthlp_const = 0.01_r8
 
real(r8), parameter unset_r8 = huge(1.0_r8)
 
real(r8), parameter qsmall = 1.e-18_r8
 
real(r8) clubb_timestep = unset_r8
 
real(r8) clubb_rnevap_effic = unset_r8
 
real(r8) clubb_liq_deep = unset_r8
 
real(r8) clubb_liq_sh = unset_r8
 
real(r8) clubb_ice_deep = unset_r8
 
real(r8) clubb_ice_sh = unset_r8
 
real(r8) clubb_tk1 = unset_r8
 
real(r8) clubb_tk2 = unset_r8
 
logical, parameter, private l_uv_nudge = .false.
 
logical, parameter, private l_implemented = .true.
 
logical, parameter, private l_host_applies_sfc_fluxes = .false.
 
logical do_tms
 
logical, dimension(pcnst) lq
 
logical, dimension(pcnst) lq2
 
logical prog_modal_aero
 
logical do_rainturb
 
logical do_expldiff
 
logical clubb_do_adv
 
logical clubb_do_deep
 
logical micro_do_icesupersat
 
logical history_budget
 
integer history_budget_histfile_num
 
integer edsclr_dim
 
integer offset
 
integer wp2_idx
 
integer wp3_idx
 
integer wpthlp_idx
 
integer wprtp_idx
 
integer rtpthlp_idx
 
integer rtp2_idx
 
integer thlp2_idx
 
integer up2_idx
 
integer vp2_idx
 
integer upwp_idx
 
integer vpwp_idx
 
integer thlm_idx
 
integer rtm_idx
 
integer um_idx
 
integer vm_idx
 
integer cld_idx
 
integer concld_idx
 
integer ast_idx
 
integer alst_idx
 
integer aist_idx
 
integer qlst_idx
 
integer qist_idx
 
integer dp_frac_idx
 
integer sh_frac_idx
 
integer rel_idx
 
integer kvh_idx
 
integer kvm_idx
 
integer pblh_idx
 
integer icwmrdp_idx
 
integer tke_idx
 
integer tpert_idx
 
integer fice_idx
 
integer cmeliq_idx
 
integer relvar_idx
 
integer accre_enhan_idx
 
integer naai_idx
 
integer prer_evap_idx
 
integer qrl_idx
 
integer radf_idx
 
integer, public ixthlp2 = 0
 
integer, public ixwpthlp = 0
 
integer, public ixwprtp = 0
 
integer, public ixwp2 = 0
 
integer, public ixwp3 = 0
 
integer, public ixrtpthlp = 0
 
integer, public ixrtp2 = 0
 
integer, public ixup2 = 0
 
integer, public ixvp2 = 0
 
integer cmfmc_sh_idx = 0
 
real(r8) dp1
 
real(r8), dimension(:,:,:), allocatable out_zt
 
real(r8), dimension(:,:,:), allocatable out_zm
 
real(r8), dimension(:,:,:), allocatable out_radzt
 
real(r8), dimension(:,:,:), allocatable out_radzm
 
real(r8), dimension(:,:,:), allocatable out_sfc
 
character(len=16) eddy_scheme
 
character(len=16) deep_scheme
 
integer, parameter ncnst =9
 
character(len=8), dimension(ncnstcnst_names
 
logical do_cnst =.false.
 
logical liqcf_fix = .FALSE.
 
logical relvar_fix = .FALSE.
 
real(r8) micro_mg_accre_enhan_fac = huge(1.0_r8)
 

Function/Subroutine Documentation

◆ clubb_implements_cnst()

logical function, public clubb_intr::clubb_implements_cnst ( character(len=*), intent(in)  name)
Here is the caller graph for this function:

◆ clubb_ini_cam()

subroutine, public clubb_intr::clubb_ini_cam ( type(physics_buffer_desc), dimension(:,:), pointer  pbuf2d,
real(r8)  dp1_in 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ clubb_init_cnst()

subroutine, public clubb_intr::clubb_init_cnst ( character(len=*), intent(in)  name,
real(r8), dimension(:,:), intent(out)  q,
integer, dimension(:), intent(in)  gcid 
)
Here is the caller graph for this function:

◆ clubb_readnl()

subroutine, public clubb_intr::clubb_readnl ( character(len=*), intent(in)  nlfile)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ clubb_register_cam()

subroutine, public clubb_intr::clubb_register_cam ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ clubb_surface()

subroutine, public clubb_intr::clubb_surface ( type(physics_state), intent(in)  state,
type(physics_ptend), intent(out)  ptend,
real(r8), intent(in)  ztodt,
type(cam_in_t), intent(in)  cam_in,
real(r8), dimension(pcols), intent(out)  ustar,
real(r8), dimension(pcols), intent(out)  obklen 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ clubb_tend_cam()

subroutine, public clubb_intr::clubb_tend_cam ( type(physics_state), intent(in)  state,
type(physics_ptend), intent(out)  ptend_all,
type(physics_buffer_desc), dimension(:), pointer  pbuf,
real(r8), intent(in)  hdtime,
real(r8), dimension(pcols,pverp), intent(in)  cmfmc,
type(cam_in_t), intent(in)  cam_in,
real(r8), dimension(pcols), intent(in)  sgh30,
integer, intent(in)  macmic_it,
integer, intent(in)  cld_macmic_num_steps,
real(r8), dimension(pcols,pver), intent(in)  dlf,
real(r8), dimension(pcols), intent(out)  det_s,
real(r8), dimension(pcols), intent(out)  det_ice,
real(r8), dimension(pcols,pver), intent(out)  alst_o 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ diag_ustar()

real(r8) function clubb_intr::diag_ustar ( real(r8), intent(in)  z,
real(r8), intent(in)  bflx,
real(r8), intent(in)  wnd,
real(r8), intent(in)  z0 
)
Here is the caller graph for this function:

◆ stats_avg()

subroutine, private clubb_intr::stats_avg ( integer, intent(in)  kk,
integer, intent(in)  nn,
real(kind=stat_rknd), dimension(1,1,kk,nn), intent(inout)  x,
integer(kind=stat_nknd), dimension(1,1,kk,nn), intent(in)  n 
)
private
Here is the caller graph for this function:

◆ stats_end_timestep_clubb()

subroutine, public clubb_intr::stats_end_timestep_clubb ( integer  lchnk,
integer  thecol,
real(r8), dimension(:,:,:), intent(inout)  out_zt,
real(r8), dimension(:,:,:), intent(inout)  out_zm,
real(r8), dimension(:,:,:), intent(inout)  out_radzt,
real(r8), dimension(:,:,:), intent(inout)  out_radzm,
real(r8), dimension(:,:,:), intent(inout)  out_sfc 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ stats_init_clubb()

subroutine, public clubb_intr::stats_init_clubb ( logical, intent(in)  l_stats_in,
real(kind=time_precision), intent(in)  stats_tsamp_in,
real(kind=time_precision), intent(in)  stats_tout_in,
integer, intent(in)  nnzp,
integer, intent(in)  nnrad_zt,
integer, intent(in)  nnrad_zm,
real(kind=time_precision), intent(in)  delt 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ stats_zero()

subroutine, private clubb_intr::stats_zero ( integer, intent(in)  kk,
integer, intent(in)  nn,
real(kind=stat_rknd), dimension(1,1,kk,nn), intent(out)  x,
integer(kind=stat_nknd), dimension(1,1,kk,nn), intent(out)  n,
logical, dimension(1,1,kk,nn), intent(out)  l_in_update 
)
private
Here is the caller graph for this function:

Variable Documentation

◆ accre_enhan_idx

integer clubb_intr::accre_enhan_idx
private

◆ aist_idx

integer clubb_intr::aist_idx
private

◆ alst_idx

integer clubb_intr::alst_idx
private

◆ ast_idx

integer clubb_intr::ast_idx
private

◆ cld_idx

integer clubb_intr::cld_idx
private

◆ clubb_do_adv

logical clubb_intr::clubb_do_adv
private

◆ clubb_do_deep

logical clubb_intr::clubb_do_deep
private

◆ clubb_ice_deep

real(r8) clubb_intr::clubb_ice_deep = unset_r8
private

◆ clubb_ice_sh

real(r8) clubb_intr::clubb_ice_sh = unset_r8
private

◆ clubb_liq_deep

real(r8) clubb_intr::clubb_liq_deep = unset_r8
private

◆ clubb_liq_sh

real(r8) clubb_intr::clubb_liq_sh = unset_r8
private

◆ clubb_rnevap_effic

real(r8) clubb_intr::clubb_rnevap_effic = unset_r8
private

◆ clubb_timestep

real(r8) clubb_intr::clubb_timestep = unset_r8
private

◆ clubb_tk1

real(r8) clubb_intr::clubb_tk1 = unset_r8
private

◆ clubb_tk2

real(r8) clubb_intr::clubb_tk2 = unset_r8
private

◆ cmeliq_idx

integer clubb_intr::cmeliq_idx
private

◆ cmfmc_sh_idx

integer clubb_intr::cmfmc_sh_idx = 0
private

◆ cnst_names

character(len=8), dimension(ncnst) clubb_intr::cnst_names
private

◆ concld_idx

integer clubb_intr::concld_idx
private

◆ deep_scheme

character(len=16) clubb_intr::deep_scheme
private

◆ do_cldcool

logical, public clubb_intr::do_cldcool

◆ do_cnst

logical clubb_intr::do_cnst =.false.
private

◆ do_expldiff

logical clubb_intr::do_expldiff
private

◆ do_rainturb

logical clubb_intr::do_rainturb
private

◆ do_tms

logical clubb_intr::do_tms
private

◆ dp1

real(r8) clubb_intr::dp1
private

◆ dp_frac_idx

integer clubb_intr::dp_frac_idx
private

◆ eddy_scheme

character(len=16) clubb_intr::eddy_scheme
private

◆ edsclr_dim

integer clubb_intr::edsclr_dim
private

◆ fice_idx

integer clubb_intr::fice_idx
private

◆ grid_type

integer, parameter clubb_intr::grid_type = 3
private

◆ history_budget

logical clubb_intr::history_budget
private

◆ history_budget_histfile_num

integer clubb_intr::history_budget_histfile_num
private

◆ host_dx

real(r8), parameter clubb_intr::host_dx = 100000._r8
private

◆ host_dy

real(r8), parameter clubb_intr::host_dy = 100000._r8
private

◆ hydromet_dim

integer, parameter clubb_intr::hydromet_dim = 0
private

◆ icwmrdp_idx

integer clubb_intr::icwmrdp_idx
private

◆ ixrtp2

integer, public clubb_intr::ixrtp2 = 0

◆ ixrtpthlp

integer, public clubb_intr::ixrtpthlp = 0

◆ ixthlp2

integer, public clubb_intr::ixthlp2 = 0

◆ ixup2

integer, public clubb_intr::ixup2 = 0

◆ ixvp2

integer, public clubb_intr::ixvp2 = 0

◆ ixwp2

integer, public clubb_intr::ixwp2 = 0

◆ ixwp3

integer, public clubb_intr::ixwp3 = 0

◆ ixwprtp

integer, public clubb_intr::ixwprtp = 0

◆ ixwpthlp

integer, public clubb_intr::ixwpthlp = 0

◆ kvh_idx

integer clubb_intr::kvh_idx
private

◆ kvm_idx

integer clubb_intr::kvm_idx
private

◆ l_host_applies_sfc_fluxes

logical, parameter, private clubb_intr::l_host_applies_sfc_fluxes = .false.
private

◆ l_implemented

logical, parameter, private clubb_intr::l_implemented = .true.
private

◆ l_uv_nudge

logical, parameter, private clubb_intr::l_uv_nudge = .false.
private

◆ liqcf_fix

logical clubb_intr::liqcf_fix = .FALSE.
private

◆ lq

logical, dimension(pcnst) clubb_intr::lq
private

◆ lq2

logical, dimension(pcnst) clubb_intr::lq2
private

◆ micro_do_icesupersat

logical clubb_intr::micro_do_icesupersat
private

◆ micro_mg_accre_enhan_fac

real(r8) clubb_intr::micro_mg_accre_enhan_fac = huge(1.0_r8)
private

◆ naai_idx

integer clubb_intr::naai_idx
private

◆ ncnst

integer, parameter clubb_intr::ncnst =9
private

◆ offset

integer clubb_intr::offset
private

◆ out_radzm

real(r8), dimension(:,:,:), allocatable clubb_intr::out_radzm
private

◆ out_radzt

real(r8), dimension(:,:,:), allocatable clubb_intr::out_radzt
private

◆ out_sfc

real(r8), dimension(:,:,:), allocatable clubb_intr::out_sfc
private

◆ out_zm

real(r8), dimension(:,:,:), allocatable clubb_intr::out_zm
private

◆ out_zt

real(r8), dimension(:,:,:), allocatable clubb_intr::out_zt
private

◆ p0_clubb

real(r8), parameter clubb_intr::p0_clubb = 100000._r8
private

◆ pblh_idx

integer clubb_intr::pblh_idx
private

◆ prer_evap_idx

integer clubb_intr::prer_evap_idx
private

◆ prog_modal_aero

logical clubb_intr::prog_modal_aero
private

◆ qist_idx

integer clubb_intr::qist_idx
private

◆ qlst_idx

integer clubb_intr::qlst_idx
private

◆ qrl_idx

integer clubb_intr::qrl_idx
private

◆ qsmall

real(r8), parameter clubb_intr::qsmall = 1.e-18_r8
private

◆ radf_idx

integer clubb_intr::radf_idx
private

◆ rel_idx

integer clubb_intr::rel_idx
private

◆ relvar_fix

logical clubb_intr::relvar_fix = .FALSE.
private

◆ relvar_idx

integer clubb_intr::relvar_idx
private

◆ rtm_idx

integer clubb_intr::rtm_idx
private

◆ rtp2_idx

integer clubb_intr::rtp2_idx
private

◆ rtpthlp_const

real(r8), parameter clubb_intr::rtpthlp_const = 0.01_r8
private

◆ rtpthlp_idx

integer clubb_intr::rtpthlp_idx
private

◆ saturation_equation

character(len=6), parameter clubb_intr::saturation_equation = "flatau"
private

◆ sclr_dim

integer, parameter clubb_intr::sclr_dim = 0
private

◆ sclr_tol

real(r8), dimension(0) clubb_intr::sclr_tol = 1.e-8_r8
private

◆ sh_frac_idx

integer clubb_intr::sh_frac_idx
private

◆ theta0

real(r8), parameter clubb_intr::theta0 = 300._r8
private

◆ thlm_idx

integer clubb_intr::thlm_idx
private

◆ thlp2_idx

integer clubb_intr::thlp2_idx
private

◆ tke_idx

integer clubb_intr::tke_idx
private

◆ tpert_idx

integer clubb_intr::tpert_idx
private

◆ ts_nudge

real(r8), parameter clubb_intr::ts_nudge = 86400._r8
private

◆ um_idx

integer clubb_intr::um_idx
private

◆ unset_r8

real(r8), parameter clubb_intr::unset_r8 = huge(1.0_r8)
private

◆ up2_idx

integer clubb_intr::up2_idx
private

◆ upwp_idx

integer clubb_intr::upwp_idx
private

◆ vm_idx

integer clubb_intr::vm_idx
private

◆ vp2_idx

integer clubb_intr::vp2_idx
private

◆ vpwp_idx

integer clubb_intr::vpwp_idx
private

◆ wp2_idx

integer clubb_intr::wp2_idx
private

◆ wp3_const

real(r8), parameter clubb_intr::wp3_const = 1._r8
private

◆ wp3_idx

integer clubb_intr::wp3_idx
private

◆ wprtp_const

real(r8), parameter clubb_intr::wprtp_const = 0.01_r8
private

◆ wprtp_idx

integer clubb_intr::wprtp_idx
private

◆ wpthlp_const

real(r8), parameter clubb_intr::wpthlp_const = 10.0_r8
private

◆ wpthlp_idx

integer clubb_intr::wpthlp_idx
private