CAM
|
Functions/Subroutines | |
subroutine, public | surface_tracer_hydropath_update (betr_time, bounds, col, num_soilc, filter_soilc, biophysforc, betrtracer_vars, tracerstate_vars, tracercoeff_vars, tracerflux_vars, betr_status) |
subroutine, public | stage_tracer_transport (betr_time, bounds, col, pft, num_soilc, filter_soilc, num_soilp, filter_soilp, biophysforc, biogeo_state, biogeo_flux, aerecond_vars, betrtracer_vars, tracercoeff_vars, tracerboundarycond_vars, tracerstate_vars, tracerflux_vars, bgc_reaction, Rfactor, advection_on, betr_status) |
subroutine, public | tracer_gws_transport (betr_time, bounds, col, pft, num_soilc, filter_soilc, Rfactor, biophysforc, biogeo_flux, betrtracer_vars, tracerboundarycond_vars, tracercoeff_vars, tracerstate_vars, tracerflux_vars, bgc_reaction, advection_on, diffusion_on, betr_status) |
subroutine | tracer_solid_transport (betr_time, bounds, lbj, ubj, num_soilc, filter_soilc, hmconductance_col, dz, betrtracer_vars, tracerboundarycond_vars, tracerflux_vars, tracerstate_vars, betr_status) |
subroutine | tracer_gw_transport (betr_time, bounds, lbj, ubj, col, pft, jtops, num_soilc, filter_soilc, Rfactor, dz, zi, transp_pathway, advection_on, diffusion_on, betrtracer_vars, tracerboundarycond_vars, tracercoeff_vars, biophysforc, biogeo_flux, bgc_reaction, tracerstate_vars, tracerflux_vars, bstatus) |
subroutine | do_tracer_advection (betr_time, bounds, lbj, ubj, col, pft, jtops, num_soilc, filter_soilc, betrtracer_vars, dz, zi, dtime, biophysforc, biogeo_flux, tracercoeff_vars, tracerstate_vars, tracerflux_vars, bstatus) |
subroutine | do_tracer_gw_diffusion (bounds, lbj, ubj, jtops, num_soilc, filter_soilc, betrtracer_vars, ttracerboundarycond_vars, Rfactor, hmconductance_col, dz, dtime, tracerstate_vars, tracerflux_vars, bstatus) |
logical function | exit_loop_by_threshold (beg, end, datain, threshold, num_soilc, filter_soilc, update_col) |
subroutine | set_gwdif_rfactor (bounds, lbj, ubj, jtops, num_soilc, filter_soilc, tracercoeff_vars, betrtracer_vars, Rfactor, betr_status) |
subroutine, public | calc_ebullition (bounds, lbj, ubj, jtops, num_soilc, filter_soilc, forc_psrf, zi, dz, dtime, fracice, zwt, betrtracer_vars, tracercoeff_vars, tracerstate_vars, tracer_flx_ebu_col, ebullition_on, betr_status) |
real(r8) function | calc_gas_pressure (tracer_conc, aqu2bulkcef, henrycef) |
subroutine | calc_root_uptake_as_perfect_sink (bounds, lbj, ubj, num_soilc, filter_soilc, dtime_loc, dz, qflx_rootsoi, vtrans_scal, is_h2o, update_col, halfdt_col, tracer_conc, transp_mass_vr, transp_mass, bstatus) |
subroutine | calc_tracer_surface_runoff (betr_time, bounds, lbj, ubj, num_soilc, filter_soilc, fracice_top, dz_top2, biophysforc, betrtracer_vars, tracerstate_vars, tracercoeff_vars, tracerflux_vars, betr_status) |
subroutine | calc_tracer_h2osfc_snow_residual_combine (betr_time, bounds, col, num_soilc, filter_soilc, biophysforc, betrtracer_vars, tracerstate_vars, tracerflux_vars, betr_status) |
subroutine, public | diagnose_gas_pressure (bounds, lbj, ubj, num_soilc, filter_soilc, betrtracer_vars, tracercoeff_vars, tracerstate_vars, betr_status) |
subroutine, public | tracer_copy_a2b_div (bounds, num_snowc, filter_snowc, snl, tracer_in, tracer_copy) |
subroutine, public | tracer_copy_a2b_comb (bounds, num_snowc, filter_snowc, snl, tracer_in, tracer_copy) |
subroutine, public | tracer_col_mapping_div (bounds, num_snowc, filter_snowc, snl, transition_matrix, tracer_copy, tracer_out, bstatus) |
subroutine, public | tracer_col_mapping_comb (bounds, num_snowc, filter_snowc, snl, transition_matrix, tracer_copy, tracer_out, bstatus) |
Variables | |
integer, parameter | diffusion_scheme = 1 |
integer, parameter | advection_scheme = 2 |
real(r8), parameter | tiny_val = 1.e-20_r8 |
real(r8), parameter | dtime_min = 1._r8 |
real(r8), parameter | err_tol_transp = 1.e-8_r8 |
character(len= *), parameter | mod_filename = __FILE__ |
subroutine, public betrbgcmod::calc_ebullition | ( | type(bounds_type), intent(in) | bounds, |
integer, intent(in) | lbj, | ||
integer, intent(in) | ubj, | ||
integer, dimension(bounds%begc: ), intent(in) | jtops, | ||
integer, intent(in) | num_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
real(r8), dimension(bounds%begc: ), intent(in) | forc_psrf, | ||
real(r8), dimension(bounds%begc: , lbj-1: ), intent(in) | zi, | ||
real(r8), dimension(bounds%begc: , lbj: ), intent(in) | dz, | ||
real(r8), intent(in) | dtime, | ||
real(r8), dimension(bounds%begc: , lbj: ), intent(in) | fracice, | ||
real(r8), dimension(bounds%begc: ), intent(in) | zwt, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracercoeff_type), intent(in) | tracercoeff_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
real(r8), dimension(bounds%begc:bounds%endc, 1:betrtracer_vars%nvolatile_tracers), intent(inout) | tracer_flx_ebu_col, | ||
logical, intent(in) | ebullition_on, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
real(r8) function betrbgcmod::calc_gas_pressure | ( | real(r8), intent(in) | tracer_conc, |
real(r8), intent(in) | aqu2bulkcef, | ||
real(r8), intent(in) | henrycef | ||
) |
|
private |
subroutine betrbgcmod::calc_tracer_h2osfc_snow_residual_combine | ( | 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_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
type(betr_biogeophys_input_type), intent(in) | biophysforc, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
subroutine betrbgcmod::calc_tracer_surface_runoff | ( | class(betr_time_type), intent(in) | betr_time, |
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, | ||
real(r8), dimension(bounds%begc:bounds%endc), intent(in) | fracice_top, | ||
real(r8), dimension(bounds%begc:bounds%endc, 1:ubj), intent(in) | dz_top2, | ||
type(betr_biogeophys_input_type), intent(in) | biophysforc, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracercoeff_type), intent(in) | tracercoeff_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
subroutine, public betrbgcmod::diagnose_gas_pressure | ( | 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, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracercoeff_type), intent(in) | tracercoeff_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
subroutine betrbgcmod::do_tracer_advection | ( | class(betr_time_type), intent(in) | betr_time, |
type(bounds_type), intent(in) | bounds, | ||
integer, intent(in) | lbj, | ||
integer, intent(in) | ubj, | ||
type(betr_column_type), intent(in) | col, | ||
type(betr_patch_type), intent(in) | pft, | ||
integer, dimension(bounds%begc: ), intent(in) | jtops, | ||
integer, intent(in) | num_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
real(r8), dimension(bounds%begc: ,lbj: ), intent(in) | dz, | ||
real(r8), dimension(bounds%begc: ,lbj-1: ), intent(in) | zi, | ||
real(r8), intent(in) | dtime, | ||
type(betr_biogeophys_input_type), intent(in) | biophysforc, | ||
type(betr_biogeo_flux_type), intent(in) | biogeo_flux, | ||
type(tracercoeff_type), intent(in) | tracercoeff_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
type(betr_status_type), intent(out) | bstatus | ||
) |
subroutine betrbgcmod::do_tracer_gw_diffusion | ( | type(bounds_type), intent(in) | bounds, |
integer, intent(in) | lbj, | ||
integer, intent(in) | ubj, | ||
integer, dimension(bounds%begc: ), intent(in) | jtops, | ||
integer, intent(in) | num_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracerboundarycond_type), intent(in) | ttracerboundarycond_vars, | ||
real(r8), dimension(bounds%begc: ,lbj: ,1: ), intent(in) | Rfactor, | ||
real(r8), dimension(bounds%begc: , lbj: ,1: ), intent(in) | hmconductance_col, | ||
real(r8), dimension(bounds%begc: ,lbj: ), intent(in) | dz, | ||
real(r8), intent(in) | dtime, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
type(betr_status_type), intent(out) | bstatus | ||
) |
logical function betrbgcmod::exit_loop_by_threshold | ( | integer, intent(in) | beg, |
integer, intent(in) | end, | ||
real(r8), dimension(beg:end), intent(in) | datain, | ||
real(r8), intent(in) | threshold, | ||
integer, intent(in) | num_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
logical, dimension(beg:end), intent(inout) | update_col | ||
) |
|
private |
subroutine, public betrbgcmod::stage_tracer_transport | ( | 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_state_type), intent(inout) | biogeo_state, | ||
type(betr_biogeo_flux_type), intent(in) | biogeo_flux, | ||
type(betr_aerecond_type), intent(inout) | aerecond_vars, | ||
class(betrtracer_type), intent(inout) | betrtracer_vars, | ||
type(tracercoeff_type), intent(inout) | tracercoeff_vars, | ||
type(tracerboundarycond_type), intent(inout) | tracerboundarycond_vars, | ||
type(tracerstate_type), intent(in) | tracerstate_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
class(bgc_reaction_type), intent(inout) | bgc_reaction, | ||
real(r8), dimension(bounds%begc: , bounds%lbj: ,1: ), intent(out) | Rfactor, | ||
logical, intent(in) | advection_on, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
subroutine, public betrbgcmod::surface_tracer_hydropath_update | ( | 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_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
type(betr_biogeophys_input_type), intent(in) | biophysforc, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracercoeff_type), intent(inout) | tracercoeff_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
subroutine, public betrbgcmod::tracer_col_mapping_comb | ( | type(bounds_type), intent(in) | bounds, |
integer, intent(in) | num_snowc, | ||
integer, dimension(:), intent(in) | filter_snowc, | ||
integer, dimension(bounds%begc:bounds%endc), intent(in) | snl, | ||
real(r8), dimension(bounds%begc:bounds%endc,-nlevsno+1:1,-nlevsno+1:1), intent(in) | transition_matrix, | ||
real(r8), dimension(bounds%begc:bounds%endc,-nlevsno+1:1), intent(in) | tracer_copy, | ||
real(r8), dimension(bounds%begc:bounds%endc, -nlevsno+1:1), intent(out) | tracer_out, | ||
type(betr_status_type), intent(out) | bstatus | ||
) |
subroutine, public betrbgcmod::tracer_col_mapping_div | ( | type(bounds_type), intent(in) | bounds, |
integer, intent(in) | num_snowc, | ||
integer, dimension(:), intent(in) | filter_snowc, | ||
integer, dimension(bounds%begc:bounds%endc), intent(in) | snl, | ||
real(r8), dimension(bounds%begc:bounds%endc,1:nlevsno,1:nlevsno), intent(in) | transition_matrix, | ||
real(r8), dimension(bounds%begc:bounds%endc, 1:nlevsno), intent(in) | tracer_copy, | ||
real(r8), dimension(bounds%begc:bounds%endc, -nlevsno+1:0), intent(out) | tracer_out, | ||
type(betr_status_type), intent(out) | bstatus | ||
) |
subroutine, public betrbgcmod::tracer_copy_a2b_comb | ( | type(bounds_type), intent(in) | bounds, |
integer, intent(in) | num_snowc, | ||
integer, dimension(:), intent(in) | filter_snowc, | ||
integer, dimension(bounds%begc:bounds%endc), intent(in) | snl, | ||
real(r8), dimension(bounds%begc:bounds%endc, -nlevsno+1:1), intent(in) | tracer_in, | ||
real(r8), dimension(bounds%begc:bounds%endc,-nlevsno+1:1), intent(out) | tracer_copy | ||
) |
subroutine, public betrbgcmod::tracer_copy_a2b_div | ( | type(bounds_type), intent(in) | bounds, |
integer, intent(in) | num_snowc, | ||
integer, dimension(:), intent(in) | filter_snowc, | ||
integer, dimension(bounds%begc:bounds%endc), intent(in) | snl, | ||
real(r8), dimension(bounds%begc:bounds%endc, -nlevsno+1:0), intent(in) | tracer_in, | ||
real(r8), dimension(bounds%begc:bounds%endc, 1:nlevsno), intent(out) | tracer_copy | ||
) |
subroutine betrbgcmod::tracer_gw_transport | ( | class(betr_time_type), intent(in) | betr_time, |
type(bounds_type), intent(in) | bounds, | ||
integer, intent(in) | lbj, | ||
integer, intent(in) | ubj, | ||
type(betr_column_type), intent(in) | col, | ||
type(betr_patch_type), intent(in) | pft, | ||
integer, dimension(bounds%begc: ), intent(in) | jtops, | ||
integer, intent(in) | num_soilc, | ||
integer, dimension(:), intent(in) | filter_soilc, | ||
real(r8), dimension(bounds%begc: ,lbj: ,1: ), intent(in) | Rfactor, | ||
real(r8), dimension(bounds%begc: ,lbj: ), intent(in) | dz, | ||
real(r8), dimension(bounds%begc: ,lbj-1: ), intent(in) | zi, | ||
integer, dimension(2), intent(in) | transp_pathway, | ||
logical, intent(in) | advection_on, | ||
logical, intent(in) | diffusion_on, | ||
class(betrtracer_type), intent(in) | betrtracer_vars, | ||
type(tracerboundarycond_type), intent(in) | tracerboundarycond_vars, | ||
type(tracercoeff_type), intent(inout) | tracercoeff_vars, | ||
type(betr_biogeophys_input_type), intent(in) | biophysforc, | ||
type(betr_biogeo_flux_type), intent(in) | biogeo_flux, | ||
class(bgc_reaction_type), intent(inout) | bgc_reaction, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
type(betr_status_type), intent(out) | bstatus | ||
) |
subroutine, public betrbgcmod::tracer_gws_transport | ( | 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, | ||
real(r8), dimension(bounds%begc: , bounds%lbj: ,1: ), intent(in) | Rfactor, | ||
type(betr_biogeophys_input_type), intent(in) | biophysforc, | ||
type(betr_biogeo_flux_type), intent(in) | biogeo_flux, | ||
class(betrtracer_type), intent(inout) | betrtracer_vars, | ||
type(tracerboundarycond_type), intent(inout) | tracerboundarycond_vars, | ||
type(tracercoeff_type), intent(inout) | tracercoeff_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(tracerflux_type), intent(inout) | tracerflux_vars, | ||
class(bgc_reaction_type), intent(inout) | bgc_reaction, | ||
logical, intent(in) | advection_on, | ||
logical, intent(in) | diffusion_on, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
subroutine betrbgcmod::tracer_solid_transport | ( | class(betr_time_type), intent(in) | betr_time, |
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, | ||
real(r8), dimension(bounds%begc: , lbj: ,1: ), intent(in) | hmconductance_col, | ||
real(r8), dimension(bounds%begc: , lbj: ), intent(in) | dz, | ||
class(betrtracer_type), intent(inout) | betrtracer_vars, | ||
type(tracerboundarycond_type), intent(in) | tracerboundarycond_vars, | ||
type(tracerflux_type), intent(in) | tracerflux_vars, | ||
type(tracerstate_type), intent(inout) | tracerstate_vars, | ||
type(betr_status_type), intent(out) | betr_status | ||
) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |