Common Community Physics Package (CCPP) Scientific Documentation  Version 2.0
GFS Noah LSM Model

This is Noah LSM driver module, with the functionality of preparing variables to run Noah LSM gfssflx(), calling Noah LSM and post-processing variables for return to the parent model suite including unit conversion, as well as diagnotics calculation. More...

Detailed Description

Argument Table

local_name standard_name long_name units rank type kind intent optional
im horizontal_loop_extent horizontal loop extent count 0 integer in F
km soil_vertical_dimension soil vertical layer dimension count 0 integer in F
ps surface_air_pressure surface pressure Pa 1 real kind_phys in F
u1 x_wind_at_lowest_model_layer x component of 1st model layer wind m s-1 1 real kind_phys in F
v1 y_wind_at_lowest_model_layer y component of 1st model layer wind m s-1 1 real kind_phys in F
t1 air_temperature_at_lowest_model_layer 1st model layer air temperature K 1 real kind_phys in F
q1 specific_humidity_at_lowest_model_layer 1st model layer specific humidity kg kg-1 1 real kind_phys in F
soiltyp cell_soil_type soil type at each grid cell index 1 integer in F
vegtype cell_vegetation_type vegetation type at each grid cell index 1 integer in F
sigmaf vegetation_area_fraction areal fractional cover of green vegetation frac 1 real kind_phys in F
sfcemis surface_longwave_emissivity surface longwave emissivity frac 1 real kind_phys in F
dlwflx surface_downwelling_longwave_flux_absorbed_by_ground total sky surface downward longwave flux absorbed by the ground W m-2 1 real kind_phys in F
dswsfc surface_downwelling_shortwave_flux total sky surface downward shortwave flux W m-2 1 real kind_phys in F
snet surface_net_downwelling_shortwave_flux total sky surface net shortwave flux W m-2 1 real kind_phys in F
delt time_step_for_dynamics dynamics time step s 0 real kind_phys in F
tg3 deep_soil_temperature bottom soil temperature K 1 real kind_phys in F
cm surface_drag_coefficient_for_momentum_in_air surface exchange coeff for momentum none 1 real kind_phys in F
ch surface_drag_coefficient_for_heat_and_moisture_in_air surface exchange coeff heat & moisture none 1 real kind_phys in F
prsl1 air_pressure_at_lowest_model_layer Model layer 1 mean pressure Pa 1 real kind_phys in F
prslki ratio_of_exner_function_between_midlayer_and_interface_at_lowest_model_layer Exner function ratio bt midlayer and interface at 1st layer ratio 1 real kind_phys in F
zf height_above_ground_at_lowest_model_layer height above ground at 1st model layer m 1 real kind_phys in F
islimsk sea_land_ice_mask landmask: sea/land/ice=0/1/2 flag 1 integer in F
ddvel surface_wind_enhancement_due_to_convection surface wind enhancement due to convection m s-1 1 real kind_phys in F
slopetyp surface_slope_classification class of sfc slope index 1 integer in F
shdmin minimum_vegetation_area_fraction min fractional coverage of green veg frac 1 real kind_phys in F
shdmax maximum_vegetation_area_fraction max fractnl cover of green veg (not used) frac 1 real kind_phys in F
snoalb upper_bound_on_max_albedo_over_deep_snow upper bound on max albedo over deep snow frac 1 real kind_phys in F
sfalb surface_diffused_shortwave_albedo mean surface diffused shortwave albedo frac 1 real kind_phys in F
flag_iter flag_for_iteration flag for iteration flag 1 logical in F
flag_guess flag_for_guess_run flag for guess run flag 1 logical in F
isot soil_type soil type (not used) index 0 integer in F
ivegsrc vegetation_type vegetation type data source umd or igbp index 0 integer in F
bexppert perturbation_of_soil_type_b_parameter perturbation of soil type "b" parameter frac 1 real kind_phys in F
xlaipert perturbation_of_leaf_area_index perturbation of leaf area index frac 1 real kind_phys in F
vegfpert perturbation_of_vegetation_fraction perturbation of vegetation fraction frac 1 real kind_phys in F
pertvegf magnitude_of_perturbation_of_vegetation_fraction magnitude of perturbation of vegetation fraction frac 1 real kind_phys in F
weasd water_equivalent_accumulated_snow_depth water equivalent accumulated snow depth mm 1 real kind_phys inout F
snwdph surface_snow_thickness_water_equivalent water equivalent snow depth over land mm 1 real kind_phys inout F
tskin surface_skin_temperature surface skin temperature K 1 real kind_phys inout F
tprcp nonnegative_lwe_thickness_of_precipitation_amount_on_dynamics_timestep nonnegative precipitation amount in one dynamics time step m 1 real kind_phys inout F
srflag flag_for_precipitation_type flag for snow or rain precipitation flag 1 real kind_phys inout F
smc volume_fraction_of_soil_moisture volumetric fraction of soil moisture frac 2 real kind_phys inout F
stc soil_temperature soil temperature K 2 real kind_phys inout F
slc volume_fraction_of_unfrozen_soil_moisture volume fraction of unfrozen soil moisture frac 2 real kind_phys inout F
canopy canopy_water_amount canopy moisture content kg m-2 1 real kind_phys inout F
trans transpiration_flux total plant transpiration rate kg m-2 s-1 1 real kind_phys inout F
tsurf surface_skin_temperature_after_iteration surface skin temperature after iteration K 1 real kind_phys inout F
zorl surface_roughness_length surface roughness length cm 1 real kind_phys inout F
sncovr1 surface_snow_area_fraction_for_diagnostics surface snow area fraction frac 1 real kind_phys inout F
qsurf surface_specific_humidity surface specific humidity kg kg-1 1 real kind_phys inout F
gflux upward_heat_flux_in_soil upward soil heat flux W m-2 1 real kind_phys inout F
drain subsurface_runoff_flux subsurface runoff flux g m-2 s-1 1 real kind_phys inout F
evap kinematic_surface_upward_latent_heat_flux surface upward evaporation flux kg kg-1 m s-1 1 real kind_phys inout F
hflx kinematic_surface_upward_sensible_heat_flux surface upward sensible heat flux K m s-1 1 real kind_phys inout F
ep surface_upward_potential_latent_heat_flux surface upward potential latent heat flux W m-2 1 real kind_phys inout F
runoff surface_runoff_flux surface runoff flux g m-2 s-1 1 real kind_phys inout F
cmm surface_drag_wind_speed_for_momentum_in_air surf mom exch coef time mean surf wind m s-1 1 real kind_phys inout F
chh surface_drag_mass_flux_for_heat_and_moisture_in_air surf h&m exch coef time surf wind & density kg m-2 s-1 1 real kind_phys inout F
evbs soil_upward_latent_heat_flux soil upward latent heat flux W m-2 1 real kind_phys inout F
evcw canopy_upward_latent_heat_flux canopy upward latent heat flux W m-2 1 real kind_phys inout F
sbsno snow_deposition_sublimation_upward_latent_heat_flux latent heat flux from snow depo/subl W m-2 1 real kind_phys inout F
snowc surface_snow_area_fraction surface snow area fraction frac 1 real kind_phys inout F
stm soil_moisture_content soil moisture content kg m-2 1 real kind_phys inout F
snohf snow_freezing_rain_upward_latent_heat_flux latent heat flux due to snow and frz rain W m-2 1 real kind_phys inout F
smcwlt2 volume_fraction_of_condensed_water_in_soil_at_wilting_point soil water fraction at wilting point frac 1 real kind_phys inout F
smcref2 threshold_volume_fraction_of_condensed_water_in_soil soil moisture threshold frac 1 real kind_phys inout F
wet1 normalized_soil_wetness normalized soil wetness frac 1 real kind_phys inout F
errmsg error_message error message for error handling in CCPP none 0 character len=* out F
errflg error_flag error flag for error handling in CCPP flag 0 integer out F

GFS sfc_drv General Algorithm

Modules

module  surface_perturbation
 

Functions/Subroutines

subroutine lsm_noah::lsm_noah_run (im, km, ps, u1, v1, t1, q1, soiltyp, vegtype, sigmaf, sfcemis, dlwflx, dswsfc, snet, delt, tg3, cm, ch, prsl1, prslki, zf, islimsk, ddvel, slopetyp, shdmin, shdmax, snoalb, sfalb, flag_iter, flag_guess, isot, ivegsrc, bexppert, xlaipert, vegfpert, pertvegf, weasd, snwdph, tskin, tprcp, srflag, smc, stc, slc, canopy, trans, tsurf, zorl, sncovr1, qsurf, gflux, drain, evap, hflx, ep, runoff, cmm, chh, evbs, evcw, sbsno, snowc, stm, snohf, smcwlt2, smcref2, wet1, errmsg, errflg )
 
subroutine alcalc
 This subroutine calculates albedo including snow effect (0 -> 1). More...
 
subroutine sfcdif
 This subroutine calculates surface layer exchange coefficients via iterative process(see [14]). More...
 
subroutine gfssflx (nsoil, couple, icein, ffrozp, dt, zlvl, sldpth, swdn, swnet, lwdn, sfcems, sfcprs, sfctmp, sfcspd, prcp, q2, q2sat, dqsdt2, th2, ivegsrc, vegtyp, soiltyp, slopetyp, shdmin, alb, snoalb, bexpp, xlaip, tbot, cmc, t1, stc, smc, sh2o, sneqv, ch, cm, z0, nroot, shdfac, snowh, albedo, eta, sheat, ec, edir, et, ett, esnow, drip, dew, beta, etp, ssoil, flx1, flx2, flx3, runoff1, runoff2, runoff3, snomlt, sncovr, rc, pc, rsmin, xlai, rcs, rct, rcq, rcsoil, soilw, soilm, smcwlt, smcdry, smcref, smcmax)
 This is the entity of GFS Noah LSM model of physics subroutines. It is a soil/veg/snowpack land-surface model to update soil moisture, soil ice, soil temperature, skin temperature, snowpack water content, snowdepth, and all terms of the surface energy balance and surface water balance (excluding input atmospheric forcings of downward radiation and precipitation). More...
 
subroutine canres
 This subroutine calculates 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 csnow
 This subroutine calculates snow termal conductivity. More...
 
subroutine nopac
 This subroutine calculates soil moisture and heat flux values and update soil moisture content and soil heat content values for the case when no snow pack is present. More...
 
subroutine penman
 This subroutine calculates potential evaporation for the current point. various partial sums/products are also calculated and passed back to the calling routine for later use. More...
 
subroutine redprm
 This subroutine internally sets default values or optionally read-in via namelist i/o, all soil and vegetation parateters requied for the execusion of the Noah LSM. More...
 
subroutine snfrac
 This subroutine calculates snow fraction (0->1). More...
 
subroutine snopac
 This subroutine calculates soil moisture and heat flux values and update soil moisture content and soil heat content values for the case when a snow pack is present. More...
 
subroutine snow_new
 This subroutine calculates snow depth and densitity to account for the new snowfall. new values of snow depth & density returned. More...
 
subroutine snowz0
 This subroutine calculates total roughness length over snow. More...
 
subroutine tdfcnd
 This subroutine calculates thermal diffusivity and conductivity of the soil for a given point and time. More...
 
subroutine evapo
 This subroutine calculates soil moisture flux. The soil moisture content (smc - a per unit volume measurement) is a dependent variable that is updated with prognostic equations. The canopy moisture content (cmc) is also updated. Frozen ground version: new states added: sh2o, and frozen ground correction factor, frzfact and paramter slope. More...
 
subroutine shflx
 This subroutine updates the temperature state of the soil column based on the thermal diffusion equation and update the frozen soil moisture content based on the temperature. More...
 
subroutine smflx
 This subroutine calculates soil moisture flux. The soil moisture content (smc - a per unit vulume measurement) is a dependent variable that is updated with prognostic equations. The canopy moisture content (cmc) is also updated. Frozen ground version: new states added: sh2o and frozen ground correction factor, frzx and parameter slope. More...
 
subroutine snowpack
 This subroutine calculates compaction of a snowpack under conditions of increasing snow density, as obtained from an approximate solution of E. Anderson's differential equation (3.29),NOAA technical report NWS 19, by Victor Koren, 03/25/95. subroutine will return new values of snowh and sndens . More...
 
subroutine devap
 This subrtouine calculates direct soil evaporation. More...
 
subroutine frh2o
 This subroutine calculates amount of supercooled liquid soil water content if temperature is below 273.15K (t0). It requires Newton-type iteration to solve the nonlinear implicit equation given in eqn 17 of [54]. More...
 
subroutine hrt
 This subroutine calculates 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 hrtice
 This subroutine calculates the right hand side of the time tendency term of the soil thermal diffusion equation for sea-ice (ice = 1) or glacial-ice (ice). More...
 
subroutine hstep
 This subroutine calculates/updates the soil temperature field. More...
 
subroutine rosr12
 This subroutine inverts (solve) the tri-diagonal matrix problem. More...
 
subroutine snksrc
 This subroutine calculates sink/source term of the termal diffusion equation. More...
 
subroutine srt
 This subroutine calculates 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 sstep
 This subroutine calculates/updates soil moisture content values and canopy moisture content values. More...
 
subroutine tbnd
 This subroutine calculates temperature on the boundary of the layer by interpolation of the middle layer temperatures. More...
 
subroutine tmpavg
 This subroutine calculates soil layer average temperature (tavg) in freezing/thawing layer using up, down, and middle layer temperature (tup, tdn, tm), where tup is at top boundary of layer, tdn is at bottom boundary of layer. tm is layer prognostic state temperature. More...
 
subroutine transp
 This subroutine calculates transpiration for the veg class. More...
 
subroutine wdfcnd
 This subroutine calculates soil water diffusivity and soil hydraulic conductivity. More...