soil Module


Uses

  • module~~soil~~UsesGraph module~soil soil module~utilities utilities module~soil->module~utilities

Used by

  • module~~soil~~UsedByGraph module~soil soil proc~reservoir_subbasin reservoir_subbasin proc~reservoir_subbasin->module~soil proc~terminate terminate proc~terminate->module~soil proc~time_process_month time_process_month proc~time_process_month->module~soil proc~initialise initialise proc~initialise->module~soil proc~runsubbasin runsubbasin proc~runsubbasin->module~soil proc~catchment_read_subcatch_params catchment_read_subcatch_params proc~catchment_read_subcatch_params->module~soil proc~catchment_assign_subcatch catchment_assign_subcatch proc~catchment_assign_subcatch->module~soil proc~print_module_parameters print_module_parameters proc~print_module_parameters->module~soil proc~time_process_day time_process_day proc~time_process_day->module~soil proc~hydrotope_process hydrotope_process proc~hydrotope_process->module~soil proc~catchment_initialise_subcatchm catchment_initialise_subcatchm proc~catchment_initialise_subcatchm->module~soil

Contents


Variables

TypeVisibility AttributesNameInitial
real(kind=dp), public :: ab =0.02083
real(kind=dp), public, save, dimension(:), allocatable:: abd
real(kind=dp), public, save, dimension(:), allocatable:: al
real(kind=dp), public, save, dimension(:), allocatable:: amp
real(kind=dp), public, save:: amt =4.
real(kind=dp), public, save, dimension(:, :), allocatable:: ap
real(kind=dp), public, save, dimension(:), allocatable:: avt
real(kind=dp), public, save, dimension(:, :), allocatable:: awc
real(kind=dp), public, save, dimension(:), allocatable:: bd
real(kind=dp), public, save, dimension(:, :), allocatable:: bden
real(kind=dp), public, save, dimension(17):: bsc =(/-8.96847, 0., -0.028212, 19.52348, 0.00018107, -0.0094125, -8.395215, 0., 0.077718, 0., 0.0000173, 0.02733, 0.001434, -0.0000035, 0., -0.00298, -0.019492/)
real(kind=dp), public, save, dimension(:), allocatable:: bsn_cncor
real(kind=dp), public, save, dimension(:), allocatable:: bsn_sccor
real(kind=dp), public, save, dimension(:, :), allocatable:: cbn
real(kind=dp), public, save, dimension(:, :), allocatable:: cla
real(kind=dp), public, save, dimension(:, :), allocatable:: clay
real(kind=dp), public, save:: cn
real(kind=dp), public, save, dimension(:, :), allocatable:: cn2
real(kind=dp), public, save, dimension(:), allocatable:: cncor
real(kind=dp), public, save:: cnum1 =2.
real(kind=dp), public, save:: cnum3 =2.
real(kind=dp), public, save, dimension(:), allocatable:: cv
real(kind=dp), public, save:: dur
real(kind=dp), public, save, dimension(:), allocatable:: ek
real(kind=dp), public, save:: ekc0 =1.
real(kind=dp), public, save, dimension(:, :), allocatable:: fc
real(kind=dp), public, save, dimension(:), allocatable:: ffc
real(kind=dp), public, save, dimension(:, :, :), allocatable:: flate
real(kind=dp), public, save, dimension(:, :), allocatable:: hk
real(kind=dp), public, save, dimension(:, :, :), allocatable:: hrtc
real(kind=dp), public, save, dimension(:, :), allocatable:: hum
real(kind=dp), public, save, dimension(:, :, :), allocatable:: hwss
integer, public, save:: icn
integer, public, save:: isc
integer, public, save:: iv
integer, public, save, dimension(4):: k7 =(/227, 57, 929, 37/)
integer, public :: ml =10
integer, public, save:: ms =0
integer, public, save:: msdb =0
integer, public, save:: nn
integer, public, save, dimension(:), allocatable:: ns
integer, public, save, dimension(:), allocatable:: nsa
integer, public, save, dimension(:), allocatable:: nsolgr
real(kind=dp), public, save, dimension(:, :), allocatable:: op
integer, public :: percolation_output_id =0
real(kind=dp), public, save, dimension(:, :), allocatable:: pmn
real(kind=dp), public, save, dimension(:, :, :), allocatable:: poe
real(kind=dp), public, save, dimension(:, :), allocatable:: por
real(kind=dp), public, save, dimension(:, :), allocatable:: poros
real(kind=dp), public, save:: pr
real(kind=dp), public, save:: prk
real(kind=dp), public :: psp =0.5
real(kind=dp), public, save, dimension(:, :), allocatable:: psz
real(kind=dp), public, save:: q1
real(kind=dp), public, save:: qd
real(kind=dp), public, save:: r1
real(kind=dp), public, save:: rn1
real(kind=dp), public, save:: rp
real(kind=dp), public :: rtn =0.15
real(kind=dp), public, save, dimension(:, :), allocatable:: san
real(kind=dp), public, save, dimension(:, :), allocatable:: sand
real(kind=dp), public, save, dimension(:, :), allocatable:: sc
real(kind=dp), public, save, dimension(:), allocatable:: sccor
real(kind=dp), public, save:: sccor0 =1.
real(kind=dp), public, save:: sep
real(kind=dp), public, save, dimension(:, :), allocatable:: sil
real(kind=dp), public, save, dimension(:, :), allocatable:: silt
real(kind=dp), public, save, dimension(:, :), allocatable:: smx
integer, public, save, dimension(:), allocatable:: snum
real(kind=dp), public, save:: soil_acc_mm
character(len=path_max_length), public, dimension(:), allocatable:: soil_filenames
character(len=path_max_length), public :: soil_input_dir ='input/soils'
character(len=path_max_length), public :: soil_input_file ="soil.csv"
integer, public :: soil_input_file_id
integer, public :: soil_water_index_output_id =0
real(kind=dp), public, save, dimension(:, :, :), allocatable:: ste
real(kind=dp), public, save, dimension(:, :), allocatable:: stin
real(kind=dp), public, save:: stinco =0.9
real(kind=dp), public, save:: su
integer, public :: subsurface_runoff_output_id =0
real(kind=dp), public, save, dimension(:), allocatable:: sumfc
real(kind=dp), public, save, dimension(:), allocatable:: sumul
integer, public :: surface_runoff_output_id =0
real(kind=dp), public, save, dimension(:), allocatable:: swin
real(kind=dp), public, save, dimension(:), allocatable:: tc
real(kind=dp), public, save, dimension(:, :, :), allocatable:: te
real(kind=dp), public, save, dimension(:, :), allocatable:: te0
real(kind=dp), public, save, dimension(:, :), allocatable:: ul
real(kind=dp), public, save, dimension(:, :), allocatable:: up
real(kind=dp), public, save:: vo
real(kind=dp), public, save, dimension(:, :, :), allocatable:: wf
real(kind=dp), public, save, dimension(:, :), allocatable:: wft
real(kind=dp), public, save, dimension(:, :), allocatable:: wi
real(kind=dp), public, save, dimension(:, :), allocatable:: wmn
real(kind=dp), public, save, dimension(:, :), allocatable:: wn
real(kind=dp), public, save, dimension(:, :), allocatable:: wno3
real(kind=dp), public, save, dimension(:, :), allocatable:: wp
real(kind=dp), public, save, dimension(:, :), allocatable:: wpo
real(kind=dp), public, save:: xqd
real(kind=dp), public, save, dimension(:, :), allocatable:: z

Subroutines

public subroutine dealloc_soil()

Arguments

None

public subroutine soil_allocate(mb, meap)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: mb
integer, intent(in) :: meap

public subroutine soil_allocate_subcatch(n_subcatch)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: n_subcatch

public subroutine soil_curve_number(cnn, j, je, hsumfc, hsumul)

Arguments

Type IntentOptional AttributesName
real(kind=dp), intent(in) :: cnn
integer, intent(in) :: j
integer, intent(in) :: je
real(kind=dp), intent(in), dimension(:, :):: hsumfc
real(kind=dp), intent(in), dimension(:, :):: hsumul

public subroutine soil_curve_number_alpha(j, mo, precip, sml)

Arguments

Type IntentOptional AttributesName
integer :: j
integer, intent(in) :: mo
real(kind=dp), intent(in) :: precip
real(kind=dp), intent(in) :: sml

public subroutine soil_curve_number_peak_runoff(j)

Arguments

Type IntentOptional AttributesName
integer :: j

public subroutine soil_curve_number_runoff(j, je, alai, blai, canstor, igro, nucr, preinf, cnmx)

Arguments

Type IntentOptional AttributesName
integer :: j
integer :: je
real(kind=dp), intent(in), dimension(:, :):: alai
real(kind=dp), intent(in), dimension(:):: blai
real(kind=dp), intent(inout), dimension(:, :):: canstor
integer, intent(in), dimension(:, :):: igro
integer, intent(in), dimension(:, :):: nucr
real(kind=dp), intent(inout), dimension(:, :):: preinf
real(kind=dp), intent(in) :: cnmx

public subroutine soil_curve_transmission_losses(j, chk, chl, chw)

Arguments

Type IntentOptional AttributesName
integer :: j
real(kind=dp), intent(in), dimension(:, :):: chk
real(kind=dp), intent(in), dimension(:, :):: chl
real(kind=dp), intent(in), dimension(:, :):: chw

public subroutine soil_initialise(mb, meap, mstruc, neap, bSubcatch, da, slope_length, stp, ovn, chs, flu, chn, chl, cn2a, cn2b, cn2c, cn2d)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: mb
integer, intent(in) :: meap
integer, intent(in), dimension(:, :, :):: mstruc
integer, intent(inout) :: neap(:)
logical, intent(in) :: bSubcatch
real(kind=dp), intent(in) :: da
real(kind=dp), intent(in) :: slope_length(:)
real(kind=dp), intent(in) :: stp(:)
real(kind=dp), intent(in) :: ovn(mb)
real(kind=dp), intent(in) :: chs(mb)
real(kind=dp), intent(in) :: flu(mb)
real(kind=dp), intent(in) :: chn(mb)
real(kind=dp), intent(in) :: chl(2,mb)
real(kind=dp), intent(in), dimension(:):: cn2a
real(kind=dp), intent(in), dimension(:):: cn2b
real(kind=dp), intent(in), dimension(:):: cn2c
real(kind=dp), intent(in), dimension(:):: cn2d

public subroutine soil_percolation(j, je, k, j1, j2, swe)

Arguments

Type IntentOptional AttributesName
integer :: j
integer :: je
integer :: k
integer :: j1
integer :: j2
real(kind=dp), intent(in), dimension(:, :):: swe

public subroutine soil_process(j, je, k, rain, swe)

Arguments

Type IntentOptional AttributesName
integer :: j
integer :: je
integer :: k
real(kind=dp), intent(in) :: rain
real(kind=dp), intent(in), dimension(:, :):: swe

public subroutine soil_read_input(mb, mstruc, neap, cn2a, cn2b, cn2c, cn2d)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: mb
integer, intent(in), dimension(:, :, :):: mstruc
integer, intent(in), dimension(:):: neap
real(kind=dp), intent(in), dimension(:):: cn2a
real(kind=dp), intent(in), dimension(:):: cn2b
real(kind=dp), intent(in), dimension(:):: cn2c
real(kind=dp), intent(in), dimension(:):: cn2d

public subroutine soil_temperature(zz, j, je, k, bcv, ida, mo, pit, preinf, swe, tmax_tmp, tmin_tmp, tx_tmp)

Arguments

Type IntentOptional AttributesName
real(kind=dp) :: zz
integer :: j
integer :: je
integer :: k
real(kind=dp), intent(in), dimension(:, :):: bcv
integer, intent(in) :: ida
integer, intent(in) :: mo
real(kind=dp), intent(in) :: pit
real(kind=dp), intent(in), dimension(:, :):: preinf
real(kind=dp), intent(in), dimension(:, :):: swe
real(kind=dp), intent(in) :: tmax_tmp
real(kind=dp), intent(in) :: tmin_tmp
real(kind=dp), intent(in) :: tx_tmp