next up previous contents
Next: Fortran: Module Interface NStateUpdate1Mod Up: Fortran: Module Interface CNNDynamicsMod Previous: CNNFixation   Contents

CNNLeaching


INTERFACE:

 subroutine CNNLeaching(lbc, ubc, num_soilc, filter_soilc)
DESCRIPTION:

On the radiation time step, update the nitrogen leaching rate as a function of soluble mineral N and total soil water outflow.


USES:

    use clmtype
    use clm_varpar      , only : nlevsoi
    use clm_time_manager    , only : get_step_size
ARGUMENTS:
    implicit none
    integer, intent(in) :: lbc, ubc        ! column bounds
    integer, intent(in) :: num_soilc       ! number of soil columns in filter
    integer, intent(in) :: filter_soilc(:) ! filter for soil columns
CALLED FROM:
   subroutine CNEcosystemDyn
REVISION HISTORY:
   6/9/04: Created by Peter Thornton
LOCAL VARIABLES:
   local pointers to implicit in scalars
    real(r8), pointer :: h2osoi_liq(:,:)  ! liquid water (kg/m2) (new) (-nlevsno+1:nlevgrnd)
    real(r8), pointer :: qflx_drain(:)    ! sub-surface runoff (mm H2O /s)
    real(r8), pointer :: sminn(:)         ! (gN/m2) soil mineral N
   local pointers to implicit out scalars
    real(r8), pointer :: sminn_leached(:) ! rate of mineral N leaching (gN/m2/s)
   !OTHER LOCAL VARIABLES:
    integer  :: j,c,fc             ! indices
    real(r8) :: dt                 ! radiation time step (seconds)
    real(r8) :: tot_water(lbc:ubc) ! total column liquid water (kg water/m2)
    real(r8) :: sf                 ! soluble fraction of mineral N (unitless)
    real(r8) :: disn_conc          ! dissolved mineral N concentration
                                   ! (gN/kg water)



Erik Kluzek 2011-06-15