soil_module.f90 Source File


This file depends on

sourcefile~~soil_module.f90~~EfferentGraph sourcefile~soil_module.f90 soil_module.f90 sourcefile~carbon_module.f90 carbon_module.f90 sourcefile~soil_module.f90->sourcefile~carbon_module.f90

Files dependent on this one

sourcefile~~soil_module.f90~~AfferentGraph sourcefile~soil_module.f90 soil_module.f90 sourcefile~actions.f90 actions.f90 sourcefile~actions.f90->sourcefile~soil_module.f90 sourcefile~albedo.f90 albedo.f90 sourcefile~albedo.f90->sourcefile~soil_module.f90 sourcefile~basin_sw_init.f90 basin_sw_init.f90 sourcefile~basin_sw_init.f90->sourcefile~soil_module.f90 sourcefile~cal_allo_init.f90 cal_allo_init.f90 sourcefile~cal_allo_init.f90->sourcefile~soil_module.f90 sourcefile~cal_conditions.f90 cal_conditions.f90 sourcefile~cal_conditions.f90->sourcefile~soil_module.f90 sourcefile~cal_parm_select.f90 cal_parm_select.f90 sourcefile~cal_parm_select.f90->sourcefile~soil_module.f90 sourcefile~calsoft_control.f90 calsoft_control.f90 sourcefile~calsoft_control.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd.f90 calsoft_hyd.f90 sourcefile~calsoft_hyd.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd_bfr.f90 calsoft_hyd_bfr.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd_bfr_et.f90 calsoft_hyd_bfr_et.f90 sourcefile~calsoft_hyd_bfr_et.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd_bfr_latq.f90 calsoft_hyd_bfr_latq.f90 sourcefile~calsoft_hyd_bfr_latq.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd_bfr_perc.f90 calsoft_hyd_bfr_perc.f90 sourcefile~calsoft_hyd_bfr_perc.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd_bfr_pet.f90 calsoft_hyd_bfr_pet.f90 sourcefile~calsoft_hyd_bfr_pet.f90->sourcefile~soil_module.f90 sourcefile~calsoft_hyd_bfr_surq.f90 calsoft_hyd_bfr_surq.f90 sourcefile~calsoft_hyd_bfr_surq.f90->sourcefile~soil_module.f90 sourcefile~calsoft_plant.f90 calsoft_plant.f90 sourcefile~calsoft_plant.f90->sourcefile~soil_module.f90 sourcefile~calsoft_read_codes.f90 calsoft_read_codes.f90 sourcefile~calsoft_read_codes.f90->sourcefile~soil_module.f90 sourcefile~calsoft_sed.f90 calsoft_sed.f90 sourcefile~calsoft_sed.f90->sourcefile~soil_module.f90 sourcefile~cbn_zhang2.f90 cbn_zhang2.f90 sourcefile~cbn_zhang2.f90->sourcefile~soil_module.f90 sourcefile~cn2_init.f90 cn2_init.f90 sourcefile~cn2_init.f90->sourcefile~soil_module.f90 sourcefile~cn2_init_all.f90 cn2_init_all.f90 sourcefile~cn2_init_all.f90->sourcefile~soil_module.f90 sourcefile~command.f90 command.f90 sourcefile~command.f90->sourcefile~soil_module.f90 sourcefile~conditions.f90 conditions.f90 sourcefile~conditions.f90->sourcefile~soil_module.f90 sourcefile~cs_balance.f90 cs_balance.f90 sourcefile~cs_balance.f90->sourcefile~soil_module.f90 sourcefile~cs_hru_init.f90 cs_hru_init.f90 sourcefile~cs_hru_init.f90->sourcefile~soil_module.f90 sourcefile~cs_lch.f90 cs_lch.f90 sourcefile~cs_lch.f90->sourcefile~soil_module.f90 sourcefile~cs_rctn_hru.f90 cs_rctn_hru.f90 sourcefile~cs_rctn_hru.f90->sourcefile~soil_module.f90 sourcefile~cs_sed.f90 cs_sed.f90 sourcefile~cs_sed.f90->sourcefile~soil_module.f90 sourcefile~cs_sorb_hru.f90 cs_sorb_hru.f90 sourcefile~cs_sorb_hru.f90->sourcefile~soil_module.f90 sourcefile~cs_uptake.f90 cs_uptake.f90 sourcefile~cs_uptake.f90->sourcefile~soil_module.f90 sourcefile~ero_ovrsed.f90 ero_ovrsed.f90 sourcefile~ero_ovrsed.f90->sourcefile~soil_module.f90 sourcefile~ero_ysed.f90 ero_ysed.f90 sourcefile~ero_ysed.f90->sourcefile~soil_module.f90 sourcefile~et_act.f90 et_act.f90 sourcefile~et_act.f90->sourcefile~soil_module.f90 sourcefile~gwflow_simulate.f90 gwflow_simulate.f90 sourcefile~gwflow_simulate.f90->sourcefile~soil_module.f90 sourcefile~gwflow_soil.f90 gwflow_soil.f90 sourcefile~gwflow_soil.f90->sourcefile~soil_module.f90 sourcefile~hru_allo.f90 hru_allo.f90 sourcefile~hru_allo.f90->sourcefile~soil_module.f90 sourcefile~hru_carbon_output.f90 hru_carbon_output.f90 sourcefile~hru_carbon_output.f90->sourcefile~soil_module.f90 sourcefile~hru_control.f90 hru_control.f90 sourcefile~hru_control.f90->sourcefile~soil_module.f90 sourcefile~hru_output.f90 hru_output.f90 sourcefile~hru_output.f90->sourcefile~soil_module.f90 sourcefile~hydro_init.f90 hydro_init.f90 sourcefile~hydro_init.f90->sourcefile~soil_module.f90 sourcefile~layersplit.f90 layersplit.f90 sourcefile~layersplit.f90->sourcefile~soil_module.f90 sourcefile~mallo_control.f90 mallo_control.f90 sourcefile~mallo_control.f90->sourcefile~soil_module.f90 sourcefile~mgt_harvbiomass.f90 mgt_harvbiomass.f90 sourcefile~mgt_harvbiomass.f90->sourcefile~soil_module.f90 sourcefile~mgt_harvtuber.f90 mgt_harvtuber.f90 sourcefile~mgt_harvtuber.f90->sourcefile~soil_module.f90 sourcefile~mgt_killop.f90 mgt_killop.f90 sourcefile~mgt_killop.f90->sourcefile~soil_module.f90 sourcefile~mgt_newtillmix.f90 mgt_newtillmix.f90 sourcefile~mgt_newtillmix.f90->sourcefile~soil_module.f90 sourcefile~mgt_newtillmix_wet.f90 mgt_newtillmix_wet.f90 sourcefile~mgt_newtillmix_wet.f90->sourcefile~soil_module.f90 sourcefile~mgt_plantop.f90 mgt_plantop.f90 sourcefile~mgt_plantop.f90->sourcefile~soil_module.f90 sourcefile~mgt_sched.f90 mgt_sched.f90 sourcefile~mgt_sched.f90->sourcefile~soil_module.f90 sourcefile~mgt_tillfactor.f90 mgt_tillfactor.f90 sourcefile~mgt_tillfactor.f90->sourcefile~soil_module.f90 sourcefile~nut_denit.f90 nut_denit.f90 sourcefile~nut_denit.f90->sourcefile~soil_module.f90 sourcefile~nut_nitvol.f90 nut_nitvol.f90 sourcefile~nut_nitvol.f90->sourcefile~soil_module.f90 sourcefile~nut_nlch.f90 nut_nlch.f90 sourcefile~nut_nlch.f90->sourcefile~soil_module.f90 sourcefile~nut_nminrl.f90 nut_nminrl.f90 sourcefile~nut_nminrl.f90->sourcefile~soil_module.f90 sourcefile~nut_orgn.f90 nut_orgn.f90 sourcefile~nut_orgn.f90->sourcefile~soil_module.f90 sourcefile~nut_orgnc.f90 nut_orgnc.f90 sourcefile~nut_orgnc.f90->sourcefile~soil_module.f90 sourcefile~nut_orgnc2.f90 nut_orgnc2.f90 sourcefile~nut_orgnc2.f90->sourcefile~soil_module.f90 sourcefile~nut_pminrl.f90 nut_pminrl.f90 sourcefile~nut_pminrl.f90->sourcefile~soil_module.f90 sourcefile~nut_pminrl2.f90 nut_pminrl2.f90 sourcefile~nut_pminrl2.f90->sourcefile~soil_module.f90 sourcefile~nut_psed.f90 nut_psed.f90 sourcefile~nut_psed.f90->sourcefile~soil_module.f90 sourcefile~nut_solp.f90 nut_solp.f90 sourcefile~nut_solp.f90->sourcefile~soil_module.f90 sourcefile~obj_output.f90 obj_output.f90 sourcefile~obj_output.f90->sourcefile~soil_module.f90 sourcefile~path_apply.f90 path_apply.f90 sourcefile~path_apply.f90->sourcefile~soil_module.f90 sourcefile~path_ls_process.f90 path_ls_process.f90 sourcefile~path_ls_process.f90->sourcefile~soil_module.f90 sourcefile~path_ls_runoff.f90 path_ls_runoff.f90 sourcefile~path_ls_runoff.f90->sourcefile~soil_module.f90 sourcefile~path_ls_swrouting.f90 path_ls_swrouting.f90 sourcefile~path_ls_swrouting.f90->sourcefile~soil_module.f90 sourcefile~pathogen_init.f90 pathogen_init.f90 sourcefile~pathogen_init.f90->sourcefile~soil_module.f90 sourcefile~pest_apply.f90 pest_apply.f90 sourcefile~pest_apply.f90->sourcefile~soil_module.f90 sourcefile~pest_decay.f90 pest_decay.f90 sourcefile~pest_decay.f90->sourcefile~soil_module.f90 sourcefile~pest_lch.f90 pest_lch.f90 sourcefile~pest_lch.f90->sourcefile~soil_module.f90 sourcefile~pest_pesty.f90 pest_pesty.f90 sourcefile~pest_pesty.f90->sourcefile~soil_module.f90 sourcefile~pest_pl_up.f90 pest_pl_up.f90 sourcefile~pest_pl_up.f90->sourcefile~soil_module.f90 sourcefile~pest_soil_tot.f90 pest_soil_tot.f90 sourcefile~pest_soil_tot.f90->sourcefile~soil_module.f90 sourcefile~pest_washp.f90 pest_washp.f90 sourcefile~pest_washp.f90->sourcefile~soil_module.f90 sourcefile~pesticide_init.f90 pesticide_init.f90 sourcefile~pesticide_init.f90->sourcefile~soil_module.f90 sourcefile~pl_burnop.f90 pl_burnop.f90 sourcefile~pl_burnop.f90->sourcefile~soil_module.f90 sourcefile~pl_community.f90 pl_community.f90 sourcefile~pl_community.f90->sourcefile~soil_module.f90 sourcefile~pl_graze.f90 pl_graze.f90 sourcefile~pl_graze.f90->sourcefile~soil_module.f90 sourcefile~pl_mortality.f90 pl_mortality.f90 sourcefile~pl_mortality.f90->sourcefile~soil_module.f90 sourcefile~pl_nfix.f90 pl_nfix.f90 sourcefile~pl_nfix.f90->sourcefile~soil_module.f90 sourcefile~pl_nup.f90 pl_nup.f90 sourcefile~pl_nup.f90->sourcefile~soil_module.f90 sourcefile~pl_nut_demand.f90 pl_nut_demand.f90 sourcefile~pl_nut_demand.f90->sourcefile~soil_module.f90 sourcefile~pl_pup.f90 pl_pup.f90 sourcefile~pl_pup.f90->sourcefile~soil_module.f90 sourcefile~pl_root_gro.f90 pl_root_gro.f90 sourcefile~pl_root_gro.f90->sourcefile~soil_module.f90 sourcefile~pl_rootfr.f90 pl_rootfr.f90 sourcefile~pl_rootfr.f90->sourcefile~soil_module.f90 sourcefile~pl_waterup.f90 pl_waterup.f90 sourcefile~pl_waterup.f90->sourcefile~soil_module.f90 sourcefile~plant_init.f90 plant_init.f90 sourcefile~plant_init.f90->sourcefile~soil_module.f90 sourcefile~proc_hru.f90 proc_hru.f90 sourcefile~proc_hru.f90->sourcefile~soil_module.f90 sourcefile~re_initialize.f90 re_initialize.f90 sourcefile~re_initialize.f90->sourcefile~soil_module.f90 sourcefile~res_hydro.f90 res_hydro.f90 sourcefile~res_hydro.f90->sourcefile~soil_module.f90 sourcefile~res_weir_release.f90 res_weir_release.f90 sourcefile~res_weir_release.f90->sourcefile~soil_module.f90 sourcefile~rls_routeaqu.f90 rls_routeaqu.f90 sourcefile~rls_routeaqu.f90->sourcefile~soil_module.f90 sourcefile~rls_routesoil.f90 rls_routesoil.f90 sourcefile~rls_routesoil.f90->sourcefile~soil_module.f90 sourcefile~rls_routetile.f90 rls_routetile.f90 sourcefile~rls_routetile.f90->sourcefile~soil_module.f90 sourcefile~rsd_decomp.f90 rsd_decomp.f90 sourcefile~rsd_decomp.f90->sourcefile~soil_module.f90 sourcefile~salt_balance.f90 salt_balance.f90 sourcefile~salt_balance.f90->sourcefile~soil_module.f90 sourcefile~salt_chem_aqu.f90 salt_chem_aqu.f90 sourcefile~salt_chem_aqu.f90->sourcefile~soil_module.f90 sourcefile~salt_chem_hru.f90 salt_chem_hru.f90 sourcefile~salt_chem_hru.f90->sourcefile~soil_module.f90 sourcefile~salt_chem_soil_single.f90 salt_chem_soil_single.f90 sourcefile~salt_chem_soil_single.f90->sourcefile~soil_module.f90 sourcefile~salt_hru_init.f90 salt_hru_init.f90 sourcefile~salt_hru_init.f90->sourcefile~soil_module.f90 sourcefile~salt_lch.f90 salt_lch.f90 sourcefile~salt_lch.f90->sourcefile~soil_module.f90 sourcefile~salt_uptake.f90 salt_uptake.f90 sourcefile~salt_uptake.f90->sourcefile~soil_module.f90 sourcefile~sep_biozone.f90 sep_biozone.f90 sourcefile~sep_biozone.f90->sourcefile~soil_module.f90 sourcefile~sim_initday.f90 sim_initday.f90 sourcefile~sim_initday.f90->sourcefile~soil_module.f90 sourcefile~smp_filter.f90 smp_filter.f90 sourcefile~smp_filter.f90->sourcefile~soil_module.f90 sourcefile~soil_awc_init.f90 soil_awc_init.f90 sourcefile~soil_awc_init.f90->sourcefile~soil_module.f90 sourcefile~soil_nutcarb_init.f90 soil_nutcarb_init.f90 sourcefile~soil_nutcarb_init.f90->sourcefile~soil_module.f90 sourcefile~soil_nutcarb_write.f90 soil_nutcarb_write.f90 sourcefile~soil_nutcarb_write.f90->sourcefile~soil_module.f90 sourcefile~soil_phys_init.f90 soil_phys_init.f90 sourcefile~soil_phys_init.f90->sourcefile~soil_module.f90 sourcefile~soil_text_init.f90 soil_text_init.f90 sourcefile~soil_text_init.f90->sourcefile~soil_module.f90 sourcefile~soils_init.f90 soils_init.f90 sourcefile~soils_init.f90->sourcefile~soil_module.f90 sourcefile~sq_crackvol.f90 sq_crackvol.f90 sourcefile~sq_crackvol.f90->sourcefile~soil_module.f90 sourcefile~sq_dailycn.f90 sq_dailycn.f90 sourcefile~sq_dailycn.f90->sourcefile~soil_module.f90 sourcefile~sq_greenampt.f90 sq_greenampt.f90 sourcefile~sq_greenampt.f90->sourcefile~soil_module.f90 sourcefile~stmp_solt.f90 stmp_solt.f90 sourcefile~stmp_solt.f90->sourcefile~soil_module.f90 sourcefile~structure_set_parms.f90 structure_set_parms.f90 sourcefile~structure_set_parms.f90->sourcefile~soil_module.f90 sourcefile~surface.f90 surface.f90 sourcefile~surface.f90->sourcefile~soil_module.f90 sourcefile~swift_output.f90 swift_output.f90 sourcefile~swift_output.f90->sourcefile~soil_module.f90 sourcefile~swr_depstor.f90 swr_depstor.f90 sourcefile~swr_depstor.f90->sourcefile~soil_module.f90 sourcefile~swr_drains.f90 swr_drains.f90 sourcefile~swr_drains.f90->sourcefile~soil_module.f90 sourcefile~swr_latsed.f90 swr_latsed.f90 sourcefile~swr_latsed.f90->sourcefile~soil_module.f90 sourcefile~swr_origtile.f90 swr_origtile.f90 sourcefile~swr_origtile.f90->sourcefile~soil_module.f90 sourcefile~swr_percmacro.f90 swr_percmacro.f90 sourcefile~swr_percmacro.f90->sourcefile~soil_module.f90 sourcefile~swr_percmain.f90 swr_percmain.f90 sourcefile~swr_percmain.f90->sourcefile~soil_module.f90 sourcefile~swr_percmicro.f90 swr_percmicro.f90 sourcefile~swr_percmicro.f90->sourcefile~soil_module.f90 sourcefile~swr_satexcess.f90 swr_satexcess.f90 sourcefile~swr_satexcess.f90->sourcefile~soil_module.f90 sourcefile~swr_subwq.f90 swr_subwq.f90 sourcefile~swr_subwq.f90->sourcefile~soil_module.f90 sourcefile~varinit.f90 varinit.f90 sourcefile~varinit.f90->sourcefile~soil_module.f90 sourcefile~wallo_control.f90 wallo_control.f90 sourcefile~wallo_control.f90->sourcefile~soil_module.f90 sourcefile~wet_initial.f90 wet_initial.f90 sourcefile~wet_initial.f90->sourcefile~soil_module.f90 sourcefile~wetland_control.f90 wetland_control.f90 sourcefile~wetland_control.f90->sourcefile~soil_module.f90 sourcefile~wind_ero_erod.f90 wind_ero_erod.f90 sourcefile~wind_ero_erod.f90->sourcefile~soil_module.f90 sourcefile~zeroini.f90 zeroini.f90 sourcefile~zeroini.f90->sourcefile~soil_module.f90

Source Code

     module soil_module
    
     use carbon_module, only: org_flux

     implicit none


       type soilayer
        real :: ec = 0.
        real :: cal = 0.
        real :: ph = 0.
        real :: alb = 0.         !! none          albedo when soil is moist
        real :: usle_k = 0.      !!               USLE equation soil erodibility (K) factor 
        real :: conk = 0.        !! mm/hr          lateral saturated hydraulic conductivity for each profile layer in a give HRU. 
        real :: flat = 0.        !! mm H2O         lateral flow storage array
        real :: prk = 0.         !! mm H2O         percolation from soil layer on current day
        real :: volcr = 0.       !! mm             crack volume for soil layer 
        real :: tillagef = 0.
        real :: rtfr = 0.        !! none           root fraction
        real :: watp = 0.
        integer :: a_days = 0
        integer :: b_days = 0
        real :: psp_store = 0.
        real :: ssp_store = 0.
        real :: percc = 0.       !!
        real :: latc = 0.        !!
        real :: vwt = 0.         !!
      end type soilayer
      type (soilayer), dimension(:), allocatable :: layer1
      
      type soil_physical_properties
        real :: d = 0.              !! mm           ! depth to bottom of soil layer
        real :: thick = 0.          !! mm           ! thichness of soil layer
        real :: bd = 0.             !! Mg/m**3      ! bulk density of the soil
        real :: k = 0.              !! mm/hr        ! saturated hydraulic conductivity of soil layer. Index:(layer,HRU)
        real :: clay = 0.           !! none         ! fraction clay content in soil material (UNIT CHANGE!)
        real :: silt = 0.           !! %            ! percent silt content in soil material
        real :: sand = 0.           !! none         ! fraction of sand in soil material
        real :: rock = 0.           !! %            ! percent of rock fragments in soil layer 
        real :: conv_wt = 0.        !! none         ! factor which converts kg/kg to kg/ha
        real :: crdep = 0.          !! mm           ! maximum or potential crack volume
        real :: awc = 0.            !! mm H20/mm    | soil available water capacity of soil layer
        real :: fc = 0.             !! mm H2O       | amount of water available to plants in soil layer at field capacity (fc - wp),Index:(layer,HRU)
        real :: hk = 0.             !! none         ! beta coefficent to calculate hydraulic conductivity
        real :: por = 0.            !! none         ! total porosity of soil layer expressed as a fraction of the total volume, Index:(layer,HRU)
        real :: st = 0.             !! mm H2O       ! amount of water stored in the soil layer on any given day (less wp water)
        real :: tmp = 0.            !! deg C        ! daily average temperature of second soil layer
        real :: ul = 0.             !! mm H2O       ! amount of water held in the soil layer at saturation (sat - wp water)
        real :: up = 0.             !! mm H2O/mm    ! soil water content of soil at -0.033 MPa (field capacity)
        real :: wp = 0.             !! mm H20/mm    ! soil water content of soil at -1.5 MPa (wilting point)
        real :: wpmm = 0.           !! mm H20       ! water content of soil at -1.5 MPa (wilting point)
      end type soil_physical_properties
      type (soil_physical_properties),dimension (:), allocatable:: phys1

      type soil_profile
        character(len=16) :: snam = ""     !! NA            soil series name  
        character(len=16) :: hydgrp = ""    !! NA            hydrologic soil group
        character(len=16) :: texture = ""
        integer :: nly  = 0                !! none          number of soil layers 
        type (soil_physical_properties),dimension (:), allocatable:: phys
        type (soilayer), dimension (:), allocatable :: ly
        real, dimension(:),allocatable :: pest              !! kg/ha    total pesticide in the soil profile
        real :: zmx = 0.                   !! mm            maximum rooting depth in soil
        real :: anion_excl = 0.            !! none          fraction of porosity from which anions are excluded
        real :: crk = 0.                   !! none          crack volume potential of soil
        real :: alb = 0.                   !! none          albedo when soil is moist
        real :: usle_k = 0.                !!               USLE equation soil erodibility (K) factor 
        real :: det_san = 0.
        real :: det_sil = 0.
        real :: det_cla = 0.
        real :: det_sag = 0.
        real :: det_lag = 0.
        real :: sumul = 0.                 !! mm H2O         amount of water held in soil profile at saturation
        real :: sumfc = 0.                 !! mm H2O         amount of water held in the soil profile at field capacity                  
        real :: sw = 0.                    !! mm H2O         amount of water stored in soil profile
        real :: sw_300 = 0.                !! mm H2O         amount of water stored to 300 mm
        real :: sumwp = 0.                 !!
        real :: swpwt = 0.                 !!
        real :: ffc = 0.                   !! none           initial HRU soil water content expressed as fraction of field capacity
        real :: wat_tbl = 0.               !! 
        real :: avpor = 0.                 !! none           average porosity for entire soil profile
        real :: avbd = 0.                  !! Mg/m^3         average bulk density for soil profile
      end type soil_profile
      type (soil_profile), dimension(:), allocatable :: soil
      type (soil_profile), dimension(:), allocatable :: soil_init
      
      type soil_hru_database
         character(len=16) :: snam = ""     !! NA            soil series name  
         character(len=16) :: hydgrp = ""    !! NA            hydrologic soil group
         character(len=16) :: texture = ""
         type (soil_profile) :: s
         type (soil_physical_properties),dimension(:), allocatable::phys
         type (soilayer), dimension(:), allocatable :: ly
      end type soil_hru_database
      type (soil_hru_database), dimension(:), allocatable :: sol
      
     end module soil_module