CCPP SciDoc  v6.0.0
Common Community Physics Package Developed at DTC
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, croptype, smceq, sfctmp, sfcprs, psfc, uu, vv, q2, garea1, qc, soldn, lwdn, thsfc_loc, prslkix, prsik1x, prslk1x, 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, qrain, isnow, zsnso, snowh, sneqv, snice, snliq, zwt, wa, wt, wslake, lfmass, rtmass, stmass, wood, stblcp, fastcp, lai, sai, cm, ch, tauss, grain, gdd, pgs, smcwtd,deeprech, rech, ustarx, z0wrf, z0hwrf, ts, 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, albd, albi, albsnd, albsni, bgap, wgap, chv, chb, emissi, shg, shc, shb, evg, evb, ghv, ghb, irg, irc, irb, tr, evc, chleaf, chuc, chv2, chb2, fpice, pahv, pahg, pahb, pah, esnow, laisun, laisha, rb 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-precess atmospheric forcing. More...
 
subroutine, private phenology (parameters, vegtyp, croptype, snowh, tv, lat, yearlen, julian, lai, sai, troot, elai, esai, igs, pgs)
 vegetation phenology considering vegetation canopy being buried 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)
 Michael Barlage: Oct 2013 - Split canwater to calculate precip movement for tracking of advected heat. More...
 
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,shdfac, pahv,pahg,pahb, qsnow,dzsnso,lat,canliq,canice,iloc, jloc, thsfc_loc, prslkix, prsik1x, prslk1x, garea1, z0wrf,z0hwrf, 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, ustarx, 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)
 snow bulk density,volumetric capacity, and thermal conductivity More...
 
subroutine, private tdfcnd (parameters, isoil, df, smc, sh2o)
 calculate thermal diffusivity and conductivity of the soil. peters-lidard approach (peters-lidard et al., 1998) More...
 
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, albd, albi, albsnd, albsni, 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, albsnd, albsni)
 surface albedos. also fluxes (per unit incoming direct and diffuse radiation) reflected, transmitted, and absorbed by vegetation. also sunlight fraction of the canopy. More...
 
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)
 use two-stream approximation of Dickinson (1983) adv geophysics 25: 305-353 and sellers (1985) int j remote sensing 6: 1335-1372 to calculate fluxes absorbed by vegetation, reflected by vegetation, and transmitted through vegetation for unit incoming direct or diffuse flux given an underlying surface with known albedo. More...
 
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,shdfac, 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, thsfc_loc, prslkix, prsik1x, prslk1x, garea1, eah,tah,tv,tg,cm, ustarx, ifdef CCPP
 use newton-raphson iteration to solve for vegetation (tv) and ground (tg) temperatures that balance the surface energy budgets. More...
 
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, thsfc_loc, prslkix, prsik1x, prslk1x, fveg, shdfac, garea1, ifdef CCPP
 use newton-raphson iteration to solve ground (tg) temperature that balances the surface energy budgets for bare soil fraction. More...
 
subroutine, private ragrb (parameters, iter, vai, rhoair, hg, tah, zpd, z0mg, z0hg, hcan, uc, z0h, fv, cwp, vegtyp, mpe, tv, mozg, fhg, fhgh, iloc, jloc, ramg, rahg, rawg, rb)
 compute under-canopy aerodynamic resistance rag and leaf boundary layer resistance rb. More...
 
subroutine, private sfcdif1 (parameters, iter,sfctmp,rhoair,h,qair, zlvl,zpd,z0m,z0h,ur, mpe,iloc,jloc, ifdef CCPP
 compute surface drag coefficient cm for momentum and ch for heat. More...
 
subroutine, private sfcdif2 (parameters, iter, z0, thz0, thlm, sfcspd, zlm, iloc, jloc, akms, akhs, rlmo, wstar2, ustar)
 calculate surface layer exchange coefficients via iteractive process (Chen et al. 1997, blm) More...
 
subroutine sfcdif3 (parameters, iloc, jloc, iter, sfctmp, qair, ur, zlvl, tgb, thsfc_loc, prslkix, prsik1x, prslk1x, z0m, zpd, snowh, fveg, garea1, vegetated, vaie, vegtyp, ustarx, fm, fh, fm2, fh2, z0h, fv, csigmaf, cm, ch)
 compute surface drag coefficient cm for momentum and ch for heat. More...
 
subroutine, private esat (t, esw, esi, desw, desi)
 use polynomials to calculate saturation vapor pressure and derivative with respect to temperature: over water when t > 0 c and over ice when t <= 0 c. More...
 
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)
 calculate canopy resistance which depends on incoming solar radiation, air temperature, atmospheric water vapor pressure deficit at the lowest model level, and soil moisture (preferably unfrozen soil moisture rather than total). More...
 
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
 compute snow (up to 3l) and soil (4l) temperature. note that snow temperatures during melting season may exceed melting point (tfrz) but later in phasechange subroutine the snow temperatures are reset to tfrz for melting snow. More...
 
subroutine, private hrt (parameters, nsnow, nsoil, isnow, zsnso, stc, tbot, zbot, dt, df, hcpct, ssoil, phi, ai, bi, ci, rhsts, botflx)
 calculate the right hand side of the time tendency term of the soil thermal diffusion equation. also to compute (prepare) the matrix coefficients for the tri-diagonal matrix of the implicit time scheme. More...
 
subroutine, private hstep (parameters, nsnow, nsoil, isnow, dt, ai, bi, ci, rhsts, stc)
 calculate/update the soil temperature fields. More...
 
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
 melting/freezing of snow water and soil water More...
 
subroutine, private frh2o (parameters, isoil, free, tkelv, smc, sh2o, ifdef CCPP
 calculate amount of supercooled liquid soil water content if temperature is below 273.15k (tfrz). requires newton-type iteration to solve the nonlinear implicit equation given in eqn 17 of koren et al. (1999, jgr, vol 104(d16),19569-19585) More...
 
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)
 canopy hydrology More...
 
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)
 snow depth and density to account for the new snowfall. new values of snow depth & density returned. More...
 
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)
 renew the mass of ice lens (snice) and liquid (snliq) of the surface snow layer resulting from sublimation (frost) / evaporation (dew) More...
 
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)
 calculate surface runoff and soil moisture. More...
 
subroutine, private zwteq (parameters, nsoil, nsnow, zsoil, dzsnso, sh2o, zwt)
 calculate equilibrium water table depth (niu et al., 2005) More...
 
subroutine, private infil (parameters, nsoil, dt, zsoil, sh2o, sice, sicemax, qinsur, pddum, runsrf)
 compute inflitration rate at soil surface and surface runoff More...
 
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)
 calculate the right hand side of the time tendency term of the soil water diffusion equation. also to compute (prepare) the matrix coefficients for the tri-diagonal matrix of the implicit time scheme. More...
 
subroutine, private sstep (parameters, nsoil, nsnow, dt, zsoil, dzsnso, sice, iloc, jloc, zwt, sh2o, smc, ai, bi, ci, rhstt, smcwtd, qdrain, deeprech, wplus)
 calculate/update soil moisture content values. More...
 
subroutine, private wdfcnd1 (parameters, wdf, wcnd, smc, fcr, isoil)
 calculate soil water diffusivity and soil hydraulic conductivity. More...
 
subroutine, private wdfcnd2 (parameters, wdf, wcnd, smc, sice, isoil)
 calculate soil water diffusivity and soil hydraulic conductivity. More...
 
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)
 the original code is from Dickinson et al.(1998), modified by guo-yue niu, 2004 More...
 
subroutine carbon_crop (parameters, nsnow, nsoil, vegtyp, dt, zsoil, julian, dzsnso, stc, smc, tv, psn, foln, btran, soldn, t2m, lfmass, rtmass, stmass, wood, stblcp, fastcp, grain, xlai, xsai, gdd, gpp, npp, nee, autors, heters, totsc, totlb, pgs)
 initial crop version created by xing liu initial crop version added by barlage v3.8 More...
 
subroutine co2flux_crop (parameters, dt, stc, psn, tv, wroot, wstres, foln, ipa, iha, pgs, xlai, xsai, lfmass, rtmass, stmass, fastcp, stblcp, wood, grain, gdd, gpp, npp, nee, autors, heters, totsc, totlb)
 the original code from re dickinson et al.(1998) and guo-yue niu (2004), modified by xing liu, 2014. More...
 
subroutine growing_gdd (parameters, t2m, dt, julian, gdd, ipa, iha, pgs)
 
subroutine psn_crop (parameters, soldn, xlai, t2m, psncrop)
 
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, iopt_rsf, iopt_soil, iopt_pedo, iopt_crop, iopt_trs)
 

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...
 
integer opt_rsf
 options for surface resistent to evaporation/sublimation More...
 
integer opt_soil
 options for defining soil properties More...
 
integer opt_pedo
 options for pedotransfer functions (used when opt_soil = 3) More...
 
integer opt_crop
 options for crop model More...
 
integer opt_trs
 options for thermal roughness scheme More...
 
real(kind=kind_phys), parameter grav = 9.80616
 acceleration due to gravity (m/s2) More...
 
real(kind=kind_phys), parameter sb = 5.67e-08
 stefan-boltzmann constant (w/m2/k4) More...
 
real(kind=kind_phys), parameter vkc = 0.40
 von karman constant More...
 
real(kind=kind_phys), parameter tfrz = 273.16
 freezing/melting point (k) More...
 
real(kind=kind_phys), parameter hsub = 2.8440e06
 latent heat of sublimation (j/kg) More...
 
real(kind=kind_phys), parameter hvap = 2.5104e06
 latent heat of vaporization (j/kg) More...
 
real(kind=kind_phys), parameter hfus = 0.3336e06
 latent heat of fusion (j/kg) More...
 
real(kind=kind_phys), parameter cwat = 4.188e06
 specific heat capacity of water (j/m3/k) More...
 
real(kind=kind_phys), parameter cice = 2.094e06
 specific heat capacity of ice (j/m3/k) More...
 
real(kind=kind_phys), parameter cpair = 1004.64
 heat capacity dry air at const pres (j/kg/k) More...
 
real(kind=kind_phys), parameter tkwat = 0.6
 thermal conductivity of water (w/m/k) More...
 
real(kind=kind_phys), parameter tkice = 2.2
 thermal conductivity of ice (w/m/k) More...
 
real(kind=kind_phys), parameter tkair = 0.023
 thermal conductivity of air (w/m/k) (not used mb: 20140718) More...
 
real(kind=kind_phys), parameter rair = 287.04
 gas constant for dry air (j/kg/k) More...
 
real(kind=kind_phys), parameter rw = 461.269
 gas constant for water vapor (j/kg/k) More...
 
real(kind=kind_phys), parameter denh2o = 1000.
 density of water (kg/m3) More...
 
real(kind=kind_phys), parameter denice = 917.
 density of ice (kg/m3) More...
 
integer, parameter, private mband = 2
 
integer, parameter, private nsoil = 4
 
integer, parameter, private nstage = 8