CCPP Scientific Documentation
v5.0.0
module_sf_ruclsm Module Reference

This module contains the entity of the RUC LSM model, which is a soil/veg/snowpack and ice/snowpack/land-surface model to update soil moisture, soil temperature, skin temperature, snowpack water content, snowdepth, and all terms of the surface energy balance and surface water balance.

Functions/Subroutines

subroutine ruclsm_soilvegparm (debug_print, MMINLURUC, MMINSL)
 This subroutine specifies vegetation related characteristics. More...
 
real(kind=kind_phys), parameter p1000mb = 100000.
 CONSTANT PARAMETERS. More...
 
real(kind=kind_phys), parameter xls = 2.85E6
 CONSTANT PARAMETERS. More...
 
real(kind=kind_phys), parameter rhowater = 1000.
 CONSTANT PARAMETERS. More...
 
real(kind=kind_phys), parameter piconst = 3.1415926535897931
 CONSTANT PARAMETERS. More...
 
real(kind=kind_phys), parameter r_v = 4.6150e+2
 CONSTANT PARAMETERS. More...
 
integer lucats
 VEGETATION PARAMETERS. More...
 
integer, parameter nlus =50
 CONSTANT PARAMETERS. More...
 
character *8 lutype
 CONSTANT PARAMETERS. More...
 
integer slcats
 SOIL PARAMETERS. More...
 
integer, parameter nsltype =30
 CONSTANT PARAMETERS. More...
 
character *8 sltype
 CONSTANT PARAMETERS. More...
 
integer slpcats
 LSM GENERAL PARAMETERS. More...
 
integer, parameter nslope =30
 CONSTANT PARAMETERS. More...
 
real sbeta_data
 CONSTANT PARAMETERS. More...
 
real fxexp_data
 CONSTANT PARAMETERS. More...
 
real csoil_data
 CONSTANT PARAMETERS. More...
 
real salp_data
 CONSTANT PARAMETERS. More...
 
real refdk_data
 CONSTANT PARAMETERS. More...
 
real refkdt_data
 CONSTANT PARAMETERS. More...
 
real frzk_data
 CONSTANT PARAMETERS. More...
 
real zbot_data
 CONSTANT PARAMETERS. More...
 
real smlow_data
 CONSTANT PARAMETERS. More...
 
real smhigh_data
 CONSTANT PARAMETERS. More...
 
real czil_data
 CONSTANT PARAMETERS. More...
 
subroutine, public lsmruc ( DT, init, restart, KTAU, iter, NSL, graupelncv, snowncv, rainncv, raincv, ZS, RAINBL, SNOW, SNOWH, SNOWC, FRZFRAC, frpcpn, rhosnf, precipfr, Z3D, P8W, T3D, QV3D, QC3D, RHO3D, GLW, GSW, EMISS, CHKLOWQ, CHS, FLQC, FLHC, MAVAIL, CANWAT, VEGFRA, ALB, ZNT, Z0, SNOALB, ALBBCK, LAI, landusef, nlcat, soilctop, nscat, QSFC, QSG, QVG, QCG, DEW, SOILT1, TSNAV, TBOT, IVGTYP, ISLTYP, XLAND, ISWATER, ISICE, XICE, XICE_THRESHOLD, CP, RV, RD, G0, PI, LV, STBOLT, SOILMOIS, SH2O, SMAVAIL, SMMAX, TSO, SOILT, HFX, QFX, LH, INFILTR, RUNOFF1, RUNOFF2, ACRUNOFF, SFCEXC, SFCEVP, GRDFLX, SNOWFALLAC, ACSNOW, SNOM, SMFR3D, KEEPFR3DFLAG, myj, shdmin, shdmax, rdlai2d, ims, ime, jms, jme, kms, kme, its, ite, jts, jte, kts, kte )
 The RUN LSM model is described in Smirnova et al.(1997) [166] and Smirnova et al.(2000) [167]. More...
 
subroutine sfctmp (debug_print, delt, ktau, conflx, i, j, nzs, nddzs, nroot, meltfactor, ILAND, ISOIL, IVGTYP, ISLTYP, PRCPMS, NEWSNMS, SNWE, SNHEI, SNOWFRAC, RHOSN, RHONEWSN, RHOSNFALL, snowrat, grauprat, icerat, curat, PATM, TABS, QVATM, QCATM, rho, GLW, GSW, EMISS, QKMS, TKMS, PC, MAVAIL, CST, VEGFRA, ALB, ZNT, ALB_SNOW, ALB_SNOW_FREE, lai, MYJ, SEAICE, ISICE, QWRTZ, rhocs, dqm, qmin, ref, wilt, psis, bclh, ksat, sat, cn, zsmain, zshalf, DTDZS, DTDZS2, tbq, cp, rovcp, g0, lv, stbolt, cw, c1sn, c2sn, KQWRTZ, KICE, KWT, snweprint, snheiprint, rsm, soilm1d, ts1d, smfrkeep, keepfr, soilt, soilt1, tsnav, dew, qvg, qsg, qcg, SMELT, SNOH, SNFLX, SNOM, SNOWFALLAC, ACSNOW, edir1, ec1, ett1, eeta, qfx, hfx, s, sublim, evapl, prcpl, fltot, runoff1, runoff2, soilice, soiliqw, infiltr, smf)
 This subroutine solves energy and moisture budgets. More...
 
real function qsn (TN, T)
 This function computes water vapor mixing ratio at saturation from the precomputed table and a given temperature. More...
 
subroutine soil (debug_print, i, j, iland, isoil, delt, ktau, conflx, nzs, nddzs, nroot, PRCPMS, RAINF, PATM, QVATM, QCATM, GLW, GSW, GSWin, EMISS, RNET, QKMS, TKMS, PC, cst, drip, infwater, rho, vegfrac, lai, myj, QWRTZ, rhocs, dqm, qmin, ref, wilt, psis, bclh, ksat, sat, cn, zsmain, zshalf, DTDZS, DTDZS2, tbq, xlv, CP, rovcp, G0_P, cw, stbolt, TABS, KQWRTZ, KICE, KWT, soilmois, tso, smfrkeep, keepfr, dew, soilt, qvg, qsg, qcg, edir1, ec1, ett1, eeta, qfx, hfx, s, evapl, prcpl, fltot, runoff1, runoff2, mavail, soilice, soiliqw, infiltrp, smf)
 This subroutine calculates energy and moisture budget for vegetated surfaces without snow, heat diffusion and Richards eqns in soil. More...
 
subroutine sice (debug_print, i, j, iland, isoil, delt, ktau, conflx, nzs, nddzs, nroot, PRCPMS, RAINF, PATM, QVATM, QCATM, GLW, GSW, EMISS, RNET, QKMS, TKMS, rho, myj, tice, rhosice, capice, thdifice, zsmain, zshalf, DTDZS, DTDZS2, tbq, xlv, CP, rovcp, cw, stbolt, tabs, tso, dew, soilt, qvg, qsg, qcg, eeta, qfx, hfx, s, evapl, prcpl, fltot )
 This subroutine is called for sea ice without accumulated snow on its surface. it solves heat diffusion inside ice and energy budget at the surface of ice. It computes skin temperature and temerature inside sea ice. More...
 
subroutine snowsoil (debug_print, i, j, isoil, delt, ktau, conflx, nzs, nddzs, nroot, meltfactor, rhonewsn, SNHEI_CRIT, ILAND, PRCPMS, RAINF, NEWSNOW, snhei, SNWE, SNOWFRAC, RHOSN, PATM, QVATM, QCATM, GLW, GSW, GSWin, EMISS, RNET, IVGTYP, QKMS, TKMS, PC, cst, drip, infwater, rho, vegfrac, alb, znt, lai, MYJ, QWRTZ, rhocs, dqm, qmin, ref, wilt, psis, bclh, ksat, sat, cn, zsmain, zshalf, DTDZS, DTDZS2, tbq, xlv, CP, rovcp, G0_P, cw, stbolt, TABS, KQWRTZ, KICE, KWT, ilnb, snweprint, snheiprint, rsm, soilmois, tso, smfrkeep, keepfr, dew, soilt, soilt1, tsnav, qvg, qsg, qcg, SMELT, SNOH, SNFLX, SNOM, edir1, ec1, ett1, eeta, qfx, hfx, s, sublim, prcpl, fltot, runoff1, runoff2, mavail, soilice, soiliqw, infiltrp )
 This subroutine is called for snow covered areas of land. It solves energy and moisture budgets on the surface of snow, and on the interface of snow and soil. It computes skin temperature, snow temperature, snow depth and snow melt. More...
 
subroutine snowseaice (debug_print, i, j, isoil, delt, ktau, conflx, nzs, nddzs, meltfactor, rhonewsn, SNHEI_CRIT, ILAND, PRCPMS, RAINF, NEWSNOW, snhei, SNWE, snowfrac, RHOSN, PATM, QVATM, QCATM, GLW, GSW, EMISS, RNET, QKMS, TKMS, RHO, myj, ALB, ZNT, tice, rhosice, capice, thdifice, zsmain, zshalf, DTDZS, DTDZS2, tbq, xlv, CP, rovcp, cw, stbolt, tabs, ilnb, snweprint, snheiprint, rsm, tso, dew, soilt, soilt1, tsnav, qvg, qsg, qcg, SMELT, SNOH, SNFLX, SNOM, eeta, qfx, hfx, s, sublim, prcpl, fltot )
 This subroutine is called for sea ice with accumulated snow on its surface. It solves energy budget on the snow interface with atmosphere and snow interface with ice. It calculates skin temperature, snow and ice temperatures, snow depth and snow melt. More...
 
subroutine soiltemp (debug_print, i, j, iland, isoil, delt, ktau, conflx, nzs, nddzs, nroot, PRCPMS, RAINF, PATM, TABS, QVATM, QCATM, EMISS, RNET, QKMS, TKMS, PC, RHO, VEGFRAC, lai, THDIF, CAP, DRYCAN, WETCAN, TRANSUM, DEW, MAVAIL, soilres, alfa, DQM, QMIN, BCLH, ZSMAIN, ZSHALF, DTDZS, TBQ, XLV, CP, G0_P, CVW, STBOLT, TSO, SOILT, QVG, QSG, QCG, X)
 This subroutine solves energy budget equation and heat diffusion equation. More...
 
subroutine snowtemp (debug_print, i, j, iland, isoil, delt, ktau, conflx, nzs, nddzs, nroot, snwe, snwepr, snhei, newsnow, snowfrac, beta, deltsn, snth, rhosn, rhonewsn, meltfactor, PRCPMS, RAINF, PATM, TABS, QVATM, QCATM, GLW, GSW, EMISS, RNET, QKMS, TKMS, PC, RHO, VEGFRAC, THDIF, CAP, DRYCAN, WETCAN, CST, TRANF, TRANSUM, DEW, MAVAIL, DQM, QMIN, PSIS, BCLH, ZSMAIN, ZSHALF, DTDZS, TBQ, XLVM, CP, rovcp, G0_P, CVW, STBOLT, SNWEPRINT, SNHEIPRINT, RSM, TSO, SOILT, SOILT1, TSNAV, QVG, QSG, QCG, SMELT, SNOH, SNFLX, S, ILNB, X)
 This subroutine solves energy bugdget equation and heat diffusion equation to obtain snow and soil temperatures. More...
 
subroutine soilmoist (debug_print, DELT, NZS, NDDZS, DTDZS, DTDZS2, RIW, ZSMAIN, ZSHALF, DIFFU, HYDRO, QSG, QVG, QCG, QCATM, QVATM, PRCP, QKMS, TRANSP, DRIP, DEW, SMELT, SOILICE, VEGFRAC, SNOWFRAC, soilres, DQM, QMIN, REF, KSAT, RAS, INFMAX, SOILMOIS, SOILIQW, MAVAIL, RUNOFF, RUNOFF2, INFILTRP)
 This subroutine solves moisture budget and computes soil moisture and surface and sub-surface runoffs. More...
 
subroutine soilprop (debug_print, nzs, fwsat, lwsat, tav, keepfr, soilmois, soiliqw, soilice, soilmoism, soiliqwm, soilicem, QWRTZ, rhocs, dqm, qmin, psis, bclh, ksat, riw, xlmelt, CP, G0_P, cvw, ci, kqwrtz, kice, kwt, thdif, diffu, hydro, cap)
 This subroutine computes thermal diffusivity, and diffusional and hydraulic condeuctivities in soil. More...
 
subroutine transf (debug_print, nzs, nroot, soiliqw, tabs, lai, gswin, dqm, qmin, ref, wilt, zshalf, pc, iland, tranf, transum)
 This subroutine solves the transpiration function (EQs. 18,19 in Smirnova et al.(1997) [166]) More...
 
subroutine vilka (TN, D1, D2, PP, QS, TS, TT, NSTEP, ii, j, iland, isoil)
 This subroutine finds the solution of energy budget at the surface from the pre-computed table of saturated water vapor mixing ratio and estimated surface temperature. More...
 
subroutine soilvegin (debug_print, soilfrac, nscat, shdmin, shdmax, mosaic_lu, mosaic_soil, NLCAT, IVGTYP, ISLTYP, iswater, MYJ, IFOREST, lufrac, vegfrac, EMISS, PC, ZNT, LAI, RDLAI2D, QWRTZ, RHOCS, BCLH, DQM, KSAT, PSIS, QMIN, REF, WILT, I, J)
 This subroutine computes effective land and soil parameters in the grid cell from the weighted contribution of soil and land categories represented in the grid cell. More...
 
subroutine, public ruclsminit (debug_print, landmask, nzs, isltyp, ivgtyp, xice, mavail, sh2o, smfr3d, tslb, smois, ims, ime, jms, jme, kms, kme, its, ite, jts, jte, kts, kte )
 This subroutine computes liquid and forezen soil moisture from the total soil moisture, and also computes soil moisture availability in the top soil layer. More...
 
subroutine soilin (ISLTYP, DQM, REF, PSIS, QMIN, BCLH)
 This subroutine specifies 19 soiltyp classification according to STATSGO. More...
 
real function, public rslf (P, T)
 This function calculates the liquid saturation vapor mixing ratio as a function of temperature and pressure (from Thompson scheme). More...