CCPP Scientific Documentation
v5.0.0
module_sf_noahmplsm Module Reference

Data Types

type  noahmp_parameters
 

Functions/Subroutines

subroutine, public noahmp_sflx (parameters, iloc , jloc , lat , yearlen, julian , cosz , dt , dx , dz8w , nsoil , zsoil , nsnow , shdfac , shdmax , vegtyp , ice , ist , smceq , sfctmp , sfcprs , psfc , uu , vv , q2 , qc , soldn , lwdn , prcpconv, prcpnonc, prcpshcv, prcpsnow, prcpgrpl, prcphail, tbot , co2air , o2air , foln , ficeold, zlvl , albold , sneqvo , stc , sh2o , smc , tah , eah , fwet , canliq , canice , tv , tg , qsfc , qsnow , isnow , zsnso , snowh , sneqv , snice , snliq , zwt , wa , wt , wslake , lfmass , rtmass , stmass , wood , stblcp , fastcp , lai , sai , cm , ch , tauss , smcwtd ,deeprech, rech , z0wrf , fsa , fsr , fira , fsh , ssoil , fcev , fgev , fctr , ecan , etran , edir , trad , tgb , tgv , t2mv , t2mb , q2v , q2b , runsrf , runsub , apar , psn , sav , sag , fsno , nee , gpp , npp , fveg , albedo , qsnbot , ponding, ponding1, ponding2, rssun , rssha , bgap , wgap , chv , chb , emissi , shg , shc , shb , evg , evb , ghv , ghb , irg , irc , irb , tr , evc , chleaf , chuc , chv2 , chb2 , fpice , pahv , ifdef CCPP
 
subroutine, private atm (parameters, sfcprs,sfctmp ,q2 , prcpconv, prcpnonc, prcpshcv, prcpsnow, prcpgrpl, prcphail, soldn ,cosz ,thair ,qair , eair ,rhoair ,qprecc,qprecl,solad , solai , swdown,bdfall ,rain ,snow ,fp , fpice ,prcp)
 re-process atmospheric forcing More...
 
subroutine, private phenology (parameters, vegtyp, snowh, tv , lat , yearlen, julian, lai , sai , troot, elai , esai , igs)
 vegetation phenology considering vegeation canopy being buries by snow and evolution in time More...
 
subroutine, private precip_heat (parameters, iloc ,jloc ,vegtyp, dt ,uu ,vv , elai ,esai ,fveg ,ist , bdfall, rain ,snow ,fp , canliq, canice, tv ,sfctmp, tg , qintr,qdripr, qthror, qints,qdrips, qthros, pahv ,pahg ,pahb ,qrain,qsnow,snowhin, fwet ,cmc )
 
subroutine, private error (parameters, swdown,fsa ,fsr ,fira ,fsh ,fcev , fgev ,fctr ,ssoil ,beg_wb,canliq,canice, sneqv ,wa ,smc ,dzsnso,prcp ,ecan , etran ,edir ,runsrf,runsub,dt ,nsoil , nsnow ,ist ,errwat, iloc ,jloc ,fveg , sav ,sag ,fsrv ,fsrg ,zwt ,pah , ifdef CCPP
 check surface energy balance and water balance More...
 
subroutine, private energy (parameters, ice ,vegtyp,ist ,nsnow ,nsoil , isnow ,dt ,rhoair,sfcprs,qair , sfctmp,thair ,lwdn ,uu ,vv ,zref , co2air,o2air ,solad ,solai ,cosz ,igs , eair ,tbot ,zsnso ,zsoil , elai ,esai ,fwet ,foln , fveg ,pahv ,pahg ,pahb , qsnow ,dzsnso,lat ,canliq,canice,iloc , jloc, z0wrf , imelt ,snicev,snliqv,epore ,t2m ,fsno , sav ,sag ,qmelt ,fsa ,fsr ,taux , tauy ,fira ,fsh ,fcev ,fgev ,fctr , trad ,psn ,apar ,ssoil ,btrani,btran , ponding, ts ,latheav, latheag, frozen_canopy, frozen_ground, tv ,tg ,stc ,snowh ,eah ,tah , sneqvo,sneqv ,sh2o ,smc ,snice ,snliq , albold,cm ,ch ,dx ,dz8w ,q2 , ifdef CCPP
 we use different approaches to deal with subgrid features of radiation transfer and turbulent transfer. we use 'tile' approach to compute turbulent fluxes, while we use modified two- stream to compute radiation transfer. tile approach, assemblying vegetation canopies together, may expose too much ground surfaces (either covered by snow or grass) to solar radiation. the modified two-stream assumes vegetation covers fully the gridcell but with gaps between tree crowns. More...
 
subroutine, private thermoprop (parameters, nsoil ,nsnow ,isnow ,ist ,dzsnso, dt ,snowh ,snice ,snliq , smc ,sh2o ,tg ,stc ,ur , lat ,z0m ,zlvl ,vegtyp, df ,hcpct ,snicev,snliqv,epore , fact )
 
subroutine, private csnow (parameters, isnow ,nsnow ,nsoil ,snice ,snliq ,dzsnso, tksno ,cvsno ,snicev,snliqv,epore )
 
subroutine, private tdfcnd (parameters, df, smc, sh2o)
 
subroutine, private radiation (parameters, vegtyp,ist ,ice ,nsoil , sneqvo,sneqv ,dt ,cosz ,snowh , tg ,tv ,fsno ,qsnow ,fwet , elai ,esai ,smc ,solad ,solai , fveg ,iloc ,jloc , albold,tauss , fsun ,laisun,laisha,parsun,parsha, sav ,sag ,fsr ,fsa ,fsrv , fsrg ,bgap ,wgap)
 
subroutine, private albedo (parameters, vegtyp, ist ,ice ,nsoil, dt ,cosz ,fage ,elai ,esai , tg ,tv ,snowh,fsno ,fwet , smc ,sneqvo, sneqv,qsnow,fveg , iloc ,jloc , albold, tauss , albgrd, albgri, albd ,albi ,fabd , fabi ,ftdd ,ftid ,ftii ,fsun , frevi,frevd,fregd,fregi,bgap , wgap)
 
subroutine, private surrad (parameters, mpe ,fsun ,fsha ,elai ,vai , laisun,laisha,solad ,solai ,fabd , fabi ,ftdd ,ftid ,ftii ,albgrd, albgri,albd ,albi ,iloc ,jloc , parsun,parsha,sav ,sag ,fsa , fsr , frevi ,frevd ,fregd ,fregi ,fsrv , fsrg)
 
subroutine, private snow_age (parameters, dt, tg, sneqvo, sneqv, tauss, fage)
 
subroutine, private snowalb_bats (parameters, nband, fsno, cosz, fage, albsnd, albsni)
 
subroutine, private snowalb_class (parameters, nband, qsnow, dt, alb, albold, albsnd, albsni, iloc, jloc)
 
subroutine, private groundalb (parameters, nsoil ,nband ,ice ,ist , fsno ,smc ,albsnd,albsni,cosz , tg ,iloc ,jloc , albgrd,albgri)
 
subroutine, private twostream (parameters, ib ,ic ,vegtyp,cosz ,vai , fwet ,t ,albgrd,albgri,rho , tau ,fveg ,ist ,iloc ,jloc , fab ,fre ,ftd ,fti ,gdir , frev ,freg ,bgap ,wgap)
 
subroutine, private vege_flux (parameters, nsnow ,nsoil ,isnow ,vegtyp ,veg , dt ,sav ,sag ,lwdn ,ur , uu ,vv ,sfctmp ,thair ,qair , eair ,rhoair ,snowh ,vai ,gammav ,gammag, fwet ,laisun ,laisha ,cwp ,dzsnso , zlvl ,zpd ,z0m ,fveg , z0mg ,emv ,emg ,canliq ,fsno, canice ,stc ,df ,rssun ,rssha , rsurf ,latheav,latheag ,parsun ,parsha ,igs , foln ,co2air ,o2air ,btran ,sfcprs , rhsur ,iloc ,jloc ,q2 ,pahv ,pahg , eah ,tah ,tv ,tg ,cm , ifdef CCPP
 
subroutine, private bare_flux (parameters, nsnow ,nsoil ,isnow ,dt ,sag , lwdn ,ur ,uu ,vv ,sfctmp , thair ,qair ,eair ,rhoair ,snowh , dzsnso ,zlvl ,zpd ,z0m ,fsno , emg ,stc ,df ,rsurf ,lathea , gamma ,rhsur ,iloc ,jloc ,q2 ,pahb , ifdef CCPP
 
subroutine, private ragrb (parameters, iter ,vai ,rhoair, hg ,tah , zpd ,z0mg ,z0hg ,hcan ,uc , z0h ,fv ,cwp ,vegtyp, mpe , tv ,mozg ,fhg ,iloc ,jloc , ramg ,rahg ,rawg ,rb )
 
subroutine, private sfcdif1 (parameters, iter ,sfctmp,rhoair,h ,qair , zlvl ,zpd ,z0m ,z0h ,ur , mpe ,iloc ,jloc , ifdef CCPP
 
subroutine, private sfcdif2 (parameters, iter ,z0 ,thz0 ,thlm ,sfcspd, zlm ,iloc ,jloc , akms ,akhs ,rlmo ,wstar2, ustar)
 
subroutine, private esat (t, esw, esi, desw, desi)
 
subroutine, private stomata (parameters, vegtyp,mpe ,apar ,foln ,iloc , jloc, tv ,ei ,ea ,sfctmp,sfcprs, o2 ,co2 ,igs ,btran ,rb , rs ,psn )
 
subroutine, private canres (parameters, par ,sfctmp, rcsoil, eah ,sfcprs, rc ,psn ,iloc ,jloc)
 
subroutine calhum (parameters, sfctmp, sfcprs, q2sat, dqsdt2)
 
subroutine, private tsnosoi (parameters, ice ,nsoil ,nsnow ,isnow ,ist , tbot ,zsnso ,ssoil ,df ,hcpct , sag ,dt ,snowh ,dzsnso , tg ,iloc ,jloc , ifdef CCPP
 
subroutine, private hrt (parameters, nsnow ,nsoil ,isnow ,zsnso , stc ,tbot ,zbot ,dt , df ,hcpct ,ssoil ,phi , ai ,bi ,ci ,rhsts , botflx )
 
subroutine, private hstep (parameters, nsnow ,nsoil ,isnow ,dt , ai ,bi ,ci ,rhsts , stc )
 
subroutine, private rosr12 (p, a, b, c, d, delta, ntop, nsoil, nsnow)
 
subroutine, private phasechange (parameters, nsnow ,nsoil ,isnow ,dt ,fact , dzsnso ,hcpct ,ist ,iloc ,jloc , stc ,snice ,snliq ,sneqv ,snowh , ifdef CCPP
 
subroutine, private frh2o (parameters, free, tkelv, smc, sh2o, ifdef CCPP
 
subroutine, private water (parameters, vegtyp, nsnow,nsoil,imelt,dt ,uu , vv ,fcev ,fctr ,qprecc, qprecl, elai , esai ,sfctmp, qvap ,qdew ,zsoil,btrani, ficeold, ponding, tg ,ist ,fveg ,iloc ,jloc, smceq, bdfall, fp ,rain ,snow, qsnow,qrain,snowhin, latheav, latheag, frozen_canopy, frozen_ground, isnow,canliq, canice, tv ,snowh,sneqv, snice,snliq,stc ,zsnso,sh2o ,smc , sice ,zwt ,wa ,wt ,dzsnso, wslake, smcwtd, deeprech, rech , cmc ,ecan ,etran,fwet ,runsrf, runsub, qin ,qdis ,ponding1 ,ponding2, qsnbot, esnow)
 
subroutine, private canwater (parameters, vegtyp, dt , fcev ,fctr ,elai , esai ,tg ,fveg ,iloc , jloc, bdfall, frozen_canopy, canliq, canice, tv , cmc ,ecan ,etran, fwet )
 
subroutine, private snowwater (parameters, nsnow,nsoil,imelt,dt ,zsoil, sfctmp, snowhin, qsnow,qsnfro, qsnsub, qrain,ficeold, iloc ,jloc , isnow,snowh,sneqv,snice,snliq, sh2o ,sice ,stc ,zsnso,dzsnso, qsnbot, snoflow, ponding1 ,ponding2)
 
subroutine, private snowfall (parameters, nsoil,nsnow,dt ,qsnow,snowhin, sfctmp, iloc ,jloc , isnow,snowh,dzsnso, stc ,snice , snliq,sneqv)
 
subroutine, private combine (parameters, nsnow,nsoil,iloc ,jloc , isnow,sh2o ,stc ,snice,snliq, dzsnso, sice ,snowh,sneqv, ponding1 ,ponding2)
 
subroutine, private divide (parameters, nsnow,nsoil, isnow,stc ,snice,snliq,dzsnso)
 
subroutine, private combo (parameters, dz, wliq, wice, t, dz2, wliq2, wice2, t2)
 
subroutine, private compact (parameters, nsnow,nsoil,dt ,stc ,snice, snliq,zsoil,imelt,ficeold, iloc , jloc, isnow,dzsnso, zsnso)
 
subroutine, private snowh2o (parameters, nsnow,nsoil,dt ,qsnfro, qsnsub, qrain,iloc ,jloc , isnow,dzsnso, snowh,sneqv,snice, snliq,sh2o ,sice ,stc , qsnbot, ponding1 ,ponding2)
 
subroutine, private soilwater (parameters, nsoil,nsnow,dt ,zsoil,dzsnso, qinsur, qseva,etrani, sice ,iloc , jloc, sh2o ,smc ,zwt ,vegtyp, smcwtd, deeprech , runsrf, qdrain, runsub, wcnd ,fcrmax)
 
subroutine, private zwteq (parameters, nsoil,nsnow,zsoil,dzsnso, sh2o ,zwt)
 
subroutine, private infil (parameters, nsoil,dt ,zsoil,sh2o ,sice , sicemax, qinsur, pddum,runsrf)
 
subroutine, private srt (parameters, nsoil,zsoil,dt ,pddum,etrani, qseva,sh2o ,smc ,zwt ,fcr , sicemax, fcrmax, iloc ,jloc ,smcwtd, rhstt,ai ,bi ,ci ,qdrain, wcnd )
 
subroutine, private sstep (parameters, nsoil,nsnow,dt ,zsoil,dzsnso, sice ,iloc ,jloc ,zwt , sh2o ,smc ,ai ,bi ,ci , rhstt,smcwtd, qdrain, deeprech, wplus)
 
subroutine, private wdfcnd1 (parameters, wdf, wcnd, smc, fcr)
 
subroutine, private wdfcnd2 (parameters, wdf, wcnd, smc, sice)
 
subroutine, private groundwater (parameters, nsnow,nsoil,dt ,sice ,zsoil, stc ,wcnd ,fcrmax, iloc ,jloc , sh2o ,zwt ,wa ,wt , qin ,qdis )
 
subroutine, private shallowwatertable (parameters, nsnow,nsoil,zsoil, dt , dzsnso, smceq, iloc ,jloc , smc ,wtd ,smcwtd, rech, qdrain)
 diagnoses water table depth and computes recharge when the water table is within the resolved soil layers, according to the miguez-macho&fan scheme More...
 
subroutine, private carbon (parameters, nsnow,nsoil,vegtyp, dt ,zsoil, dzsnso, stc ,smc ,tv ,tg ,psn , foln ,btran,apar ,fveg ,igs , troot,ist ,lat ,iloc ,jloc , lfmass, rtmass, stmass, wood ,stblcp, fastcp, gpp ,npp ,nee ,autors, heters, totsc, totlb,xlai ,xsai )
 
subroutine, private co2flux (parameters, nsnow,nsoil,vegtyp, igs ,dt , dzsnso, stc ,psn ,troot,tv , wroot,wstres, foln ,lapm , lat ,iloc ,jloc ,fveg , xlai ,xsai ,lfmass, rtmass, stmass, fastcp, stblcp, wood , gpp ,npp ,nee ,autors, heters, totsc,totlb)
 
subroutine, public noahmp_options (idveg ,iopt_crs,iopt_btr,iopt_run,iopt_sfc,iopt_frz, iopt_inf,iopt_rad,iopt_alb,iopt_snf,iopt_tbot, iopt_stc)
 

Variables

integer dveg
 options for dynamic vegetation: More...
 
integer opt_crs
 options for canopy stomatal resistance More...
 
integer opt_btr
 options for soil moisture factor for stomatal resistance More...
 
integer opt_run
 options for runoff and groundwater More...
 
integer opt_sfc
 options for surface layer drag coeff (ch & cm) More...
 
integer opt_frz
 options for supercooled liquid water (or ice fraction) More...
 
integer opt_inf
 options for frozen soil permeability More...
 
integer opt_rad
 options for radiation transfer More...
 
integer opt_alb
 options for ground snow surface albedo More...
 
integer opt_snf
 options for partitioning precipitation into rainfall & snowfall More...
 
integer opt_tbot
 options for lower boundary condition of soil temperature More...
 
integer opt_stc
 options for snow/soil temperature time scheme (only layer 1) More...
 
real, parameter grav = 9.80616
 acceleration due to gravity (m/s2) More...
 
real, parameter sb = 5.67e-08
 stefan-boltzmann constant (w/m2/k4) More...
 
real, parameter vkc = 0.40
 von karman constant More...
 
real, parameter tfrz = 273.16
 freezing/melting point (k) More...
 
real, parameter hsub = 2.8440e06
 latent heat of sublimation (j/kg) More...
 
real, parameter hvap = 2.5104e06
 latent heat of vaporization (j/kg) More...
 
real, parameter hfus = 0.3336e06
 latent heat of fusion (j/kg) More...
 
real, parameter cwat = 4.188e06
 specific heat capacity of water (j/m3/k) More...
 
real, parameter cice = 2.094e06
 specific heat capacity of ice (j/m3/k) More...
 
real, parameter cpair = 1004.64
 heat capacity dry air at const pres (j/kg/k) More...
 
real, parameter tkwat = 0.6
 thermal conductivity of water (w/m/k) More...
 
real, parameter tkice = 2.2
 thermal conductivity of ice (w/m/k) More...
 
real, parameter tkair = 0.023
 thermal conductivity of air (w/m/k) (not used mb: 20140718) More...
 
real, parameter rair = 287.04
 gas constant for dry air (j/kg/k) More...
 
real, parameter rw = 461.269
 gas constant for water vapor (j/kg/k) More...
 
real, parameter denh2o = 1000.
 density of water (kg/m3) More...
 
real, parameter denice = 917.
 density of ice (kg/m3) More...
 
integer, parameter, private mband = 2