CAM
betrtype Module Reference

Data Types

type  betr_type
 

Functions/Subroutines

class(betr_type) function, pointer, public create_betr_type ()
 
subroutine init (this, namelist_buffer, bounds, col, biophysforc, asoibgc, bstatus)
 
subroutine readnamelist (this, namelist_buffer, bstatus)
 
subroutine step_without_drainage (this, betr_time, bounds, col, pft, num_soilc, filter_soilc, num_soilp, filter_soilp, biophysforc, biogeo_flux, biogeo_state, betr_status)
 
subroutine debug_info (this, bounds, col, num_soilc, filter_soilc, header, betr_status)
 
subroutine retrieve_biostates (this, bounds, lbj, ubj, num_soilc, filter_soilc, jtops, biogeo_state, betr_status)
 
subroutine retrieve_biofluxes (this, num_soilc, filter_soilc, biogeo_flux)
 
subroutine step_with_drainage (this, bounds, col, num_soilc, filter_soilc, jtops, biogeo_flux, betr_status)
 
subroutine diagnoselnd2atm (this, bounds, num_soilc, filter_soilc, biogeo_flux)
 
subroutine calc_dew_sub_flux (this, betr_time, bounds, col, num_hydrologyc, filter_soilc_hydrologyc, biophysforc, betrtracer_vars, tracerflux_vars, tracerstate_vars)
 
subroutine check_mass_err (this, col, betr_time, c, trcid, ubj, dz, betrtracer_vars, tracerstate_vars, tracerflux_vars, bstatus)
 
subroutine diagnose_dtracer_freeze_thaw (this, bounds, num_nolakec, filter_nolakec, biophysforc)
 
subroutine betr_lsm_flux_state_sendback (this, bounds, num_soilc, filter_soilc)
 
subroutine pre_diagnose_soilcol_water_flux (this, bounds, num_nolakec, filter_nolakec, biophysforc)
 
subroutine diagnose_advect_water_flux (this, betr_time, bounds, num_hydrologyc, filter_hydrologyc, biophysforc, biogeo_flux)
 
subroutine diagnose_drainage_water_flux (this, betr_time, bounds, num_hydrologyc, filter_hydrologyc, biophysforc, biogeo_flux)
 
subroutine tracer_dividesnowlayers (this, bounds, col, num_snowc, filter_snowc, divide_matrix, bstatus)
 
subroutine tracer_combinesnowlayers (this, bounds, col, num_snowc, filter_snowc, combine_matrix, bstatus)
 
subroutine enter_tracer_layeradjustment (this, bounds, col, num_snowc, filter_snowc)
 
subroutine exit_tracer_layeradjustment (this, bounds, col, num_snowc, filter_snowc)
 
subroutine tracer_snowcapping (this, bounds, num_snowc, filter_snowc, biophysforc)
 
subroutine create_betr_application (this, bgc_reaction, plant_soilbgc, method, asoibgc, bstatus)
 
subroutine get_hist_size (this, num_state1d, num_state2d, num_flux1d, num_flux2d)
 
subroutine get_hist_info (this, num_state1d, num_state2d, num_flux1d, num_flux2d, state_hist1d_var, state_hist2d_var, flux_hist1d_var, flux_hist2d_var)
 
subroutine histretrievestate (this, bounds, lbj, ubj, num_state1d, num_state2d, states_1d, states_2d)
 
subroutine histretrieveflux (this, bounds, lbj, ubj, num_flux1d, num_flux2d, fluxes_1d, fluxes_2d)
 
subroutine get_restartvar_size (this, nrest_1d, nrest_2d)
 
subroutine get_restartvar_info (this, nrest_1d, nrest_2d, rest_varname_1d, rest_varname_2d)
 
subroutine set_restvar (this, bounds, lbj, ubj, nrest_1d, nrest_2d, states_1d, states_2d, flag)
 

Variables

character(len= *), parameter filename = __FILE__
 

Function/Subroutine Documentation

◆ betr_lsm_flux_state_sendback()

subroutine betrtype::betr_lsm_flux_state_sendback ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc 
)

◆ calc_dew_sub_flux()

subroutine betrtype::calc_dew_sub_flux ( class(betr_type), intent(inout)  this,
class(betr_time_type), intent(in)  betr_time,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_hydrologyc,
integer, dimension(:), intent(in)  filter_soilc_hydrologyc,
type(betr_biogeophys_input_type), intent(in)  biophysforc,
class(betrtracer_type), intent(in)  betrtracer_vars,
type(tracerflux_type), intent(inout)  tracerflux_vars,
type(tracerstate_type), intent(inout)  tracerstate_vars 
)

◆ check_mass_err()

subroutine betrtype::check_mass_err ( class(betr_type), intent(inout)  this,
type(betr_column_type), intent(in)  col,
class(betr_time_type), intent(in)  betr_time,
integer, intent(in)  c,
integer, intent(in)  trcid,
integer, intent(in)  ubj,
real(r8), dimension(1:ubj), intent(in)  dz,
class(betrtracer_type), intent(inout)  betrtracer_vars,
class(tracerstate_type), intent(inout)  tracerstate_vars,
type(tracerflux_type), intent(inout)  tracerflux_vars,
type(betr_status_type), intent(out)  bstatus 
)

◆ create_betr_application()

subroutine betrtype::create_betr_application ( class(betr_type), intent(inout)  this,
class(bgc_reaction_type), intent(out), allocatable  bgc_reaction,
class(plant_soilbgc_type), intent(out), allocatable  plant_soilbgc,
character(len=*), intent(in)  method,
logical, intent(out)  asoibgc,
type(betr_status_type), intent(out)  bstatus 
)
private
Here is the call graph for this function:

◆ create_betr_type()

class(betr_type) function, pointer, public betrtype::create_betr_type ( )
Here is the caller graph for this function:

◆ debug_info()

subroutine betrtype::debug_info ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc,
character(len=*), intent(in)  header,
type(betr_status_type), intent(out)  betr_status 
)

◆ diagnose_advect_water_flux()

subroutine betrtype::diagnose_advect_water_flux ( class(betr_type), intent(inout)  this,
class(betr_time_type), intent(in)  betr_time,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_hydrologyc,
integer, dimension(:), intent(in)  filter_hydrologyc,
type(betr_biogeophys_input_type), intent(in)  biophysforc,
type(betr_biogeo_flux_type), intent(inout)  biogeo_flux 
)
private

◆ diagnose_drainage_water_flux()

subroutine betrtype::diagnose_drainage_water_flux ( class(betr_type), intent(inout)  this,
class(betr_time_type), intent(in)  betr_time,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_hydrologyc,
integer, dimension(:), intent(in)  filter_hydrologyc,
type(betr_biogeophys_input_type), intent(in)  biophysforc,
type(betr_biogeo_flux_type), intent(inout)  biogeo_flux 
)

◆ diagnose_dtracer_freeze_thaw()

subroutine betrtype::diagnose_dtracer_freeze_thaw ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_nolakec,
integer, dimension(:), intent(in)  filter_nolakec,
type(betr_biogeophys_input_type), intent(in)  biophysforc 
)

◆ diagnoselnd2atm()

subroutine betrtype::diagnoselnd2atm ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc,
type(betr_biogeo_flux_type), intent(inout)  biogeo_flux 
)

◆ enter_tracer_layeradjustment()

subroutine betrtype::enter_tracer_layeradjustment ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_snowc,
integer, dimension(:), intent(in)  filter_snowc 
)

◆ exit_tracer_layeradjustment()

subroutine betrtype::exit_tracer_layeradjustment ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_snowc,
integer, dimension(:), intent(in)  filter_snowc 
)

◆ get_hist_info()

subroutine betrtype::get_hist_info ( class(betr_type), intent(inout)  this,
integer, intent(in)  num_state1d,
integer, intent(in)  num_state2d,
integer, intent(in)  num_flux1d,
integer, intent(in)  num_flux2d,
type(betr_hist_var_type), dimension(1: ), intent(out)  state_hist1d_var,
type(betr_hist_var_type), dimension(1: ), intent(out)  state_hist2d_var,
type(betr_hist_var_type), dimension(1: ), intent(out)  flux_hist1d_var,
type(betr_hist_var_type), dimension(1: ), intent(out)  flux_hist2d_var 
)
Here is the call graph for this function:

◆ get_hist_size()

subroutine betrtype::get_hist_size ( class(betr_type), intent(inout)  this,
integer, intent(out)  num_state1d,
integer, intent(out)  num_state2d,
integer, intent(out)  num_flux1d,
integer, intent(out)  num_flux2d 
)

◆ get_restartvar_info()

subroutine betrtype::get_restartvar_info ( class(betr_type), intent(inout)  this,
integer, intent(in)  nrest_1d,
integer, intent(in)  nrest_2d,
character(len=255), dimension(max_betr_rest_type), intent(out)  rest_varname_1d,
character(len=255), dimension(max_betr_rest_type), intent(out)  rest_varname_2d 
)

◆ get_restartvar_size()

subroutine betrtype::get_restartvar_size ( class(betr_type), intent(inout)  this,
integer, intent(out)  nrest_1d,
integer, intent(out)  nrest_2d 
)
private

◆ histretrieveflux()

subroutine betrtype::histretrieveflux ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  lbj,
integer, intent(in)  ubj,
integer, intent(in)  num_flux1d,
integer, intent(in)  num_flux2d,
real(r8), dimension(bounds%begc:bounds%endc,1:num_flux1d), intent(out)  fluxes_1d,
real(r8), dimension(bounds%begc:bounds%endc,lbj:ubj, 1:num_flux2d), intent(out)  fluxes_2d 
)
private

◆ histretrievestate()

subroutine betrtype::histretrievestate ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  lbj,
integer, intent(in)  ubj,
integer, intent(in)  num_state1d,
integer, intent(in)  num_state2d,
real(r8), dimension(bounds%begc:bounds%endc,1:num_state1d), intent(out)  states_1d,
real(r8), dimension(bounds%begc:bounds%endc,lbj:ubj, 1:num_state2d), intent(out)  states_2d 
)

◆ init()

subroutine betrtype::init ( class(betr_type), intent(inout)  this,
character(len=betr_namelist_buffer_size), intent(in)  namelist_buffer,
type(betr_bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
type(betr_biogeophys_input_type), intent(in)  biophysforc,
logical, intent(out)  asoibgc,
type(betr_status_type), intent(out)  bstatus 
)
private
Here is the call graph for this function:

◆ pre_diagnose_soilcol_water_flux()

subroutine betrtype::pre_diagnose_soilcol_water_flux ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_nolakec,
integer, dimension(:), intent(in)  filter_nolakec,
type(betr_biogeophys_input_type), intent(in)  biophysforc 
)
private

◆ readnamelist()

subroutine betrtype::readnamelist ( class(betr_type), intent(inout)  this,
character(len=betr_namelist_buffer_size), intent(in)  namelist_buffer,
type(betr_status_type), intent(out)  bstatus 
)
Here is the call graph for this function:

◆ retrieve_biofluxes()

subroutine betrtype::retrieve_biofluxes ( class(betr_type), intent(inout)  this,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc,
type(betr_biogeo_flux_type), intent(inout)  biogeo_flux 
)
private

◆ retrieve_biostates()

subroutine betrtype::retrieve_biostates ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  lbj,
integer, intent(in)  ubj,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc,
integer, dimension(bounds%begc:bounds%endc), intent(in)  jtops,
type(betr_biogeo_state_type), intent(inout)  biogeo_state,
type(betr_status_type), intent(out)  betr_status 
)

◆ set_restvar()

subroutine betrtype::set_restvar ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  lbj,
integer, intent(in)  ubj,
integer, intent(in)  nrest_1d,
integer, intent(in)  nrest_2d,
real(r8), dimension(bounds%begc:bounds%endc, 1:nrest_1d), intent(inout)  states_1d,
real(r8), dimension(bounds%begc:bounds%endc, lbj:ubj, 1:nrest_2d), intent(inout)  states_2d,
character(len=*), intent(in)  flag 
)

◆ step_with_drainage()

subroutine betrtype::step_with_drainage ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc,
integer, dimension(bounds%begc: ), intent(in)  jtops,
type(betr_biogeo_flux_type), intent(in)  biogeo_flux,
type(betr_status_type), intent(out)  betr_status 
)
Here is the call graph for this function:

◆ step_without_drainage()

subroutine betrtype::step_without_drainage ( class(betr_type), intent(inout)  this,
class(betr_time_type), intent(in)  betr_time,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
type(betr_patch_type), intent(in)  pft,
integer, intent(in)  num_soilc,
integer, dimension(:), intent(in)  filter_soilc,
integer, intent(in)  num_soilp,
integer, dimension(:), intent(in)  filter_soilp,
type(betr_biogeophys_input_type), intent(in)  biophysforc,
type(betr_biogeo_flux_type), intent(inout)  biogeo_flux,
type(betr_biogeo_state_type), intent(inout)  biogeo_state,
type(betr_status_type), intent(out)  betr_status 
)
Here is the call graph for this function:

◆ tracer_combinesnowlayers()

subroutine betrtype::tracer_combinesnowlayers ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_snowc,
integer, dimension(:), intent(in)  filter_snowc,
real(r8), dimension(bounds%begc: ,-nlevsno+1: ,-nlevsno+1: ), intent(in)  combine_matrix,
type(betr_status_type), intent(out)  bstatus 
)
Here is the call graph for this function:

◆ tracer_dividesnowlayers()

subroutine betrtype::tracer_dividesnowlayers ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
type(betr_column_type), intent(in)  col,
integer, intent(in)  num_snowc,
integer, dimension(:), intent(in)  filter_snowc,
real(r8), dimension(bounds%begc: , 1: , 1: ), intent(in)  divide_matrix,
type(betr_status_type), intent(out)  bstatus 
)
Here is the call graph for this function:

◆ tracer_snowcapping()

subroutine betrtype::tracer_snowcapping ( class(betr_type), intent(inout)  this,
type(bounds_type), intent(in)  bounds,
integer, intent(in)  num_snowc,
integer, dimension(:), intent(in)  filter_snowc,
type(betr_biogeophys_input_type), intent(in)  biophysforc 
)

Variable Documentation

◆ filename

character(len=*), parameter betrtype::filename = __FILE__
private