Skip to content

Commit a82ce24

Browse files
authored
Sync with NoahMP Github version with all NoahMP updates since v4.3 (#1641)
TYPE: new feature KEYWORDS: NoahMP SOURCE: Cenlin He (NCAR) DESCRIPTION OF CHANGES: This is step one to synchronize with latest NoahMP Github code version in order to prepare for connecting WRF directly to NoahMP unified Github repo. Specifically, the updates in NoahMP since version 4.3: 1. three additional runoff schemes added (OPT_RUN=6, 7, 8) 2. new tile drainage capability/scheme added (OPT_TDRN) 3. New soil time step control capability added to allow users specify a different soil time step from main NoahMP time step 4. additional water and energy budget terms added for output and diagnosis 5. updated flood irrigation parameters 6. add constraints for snow thickness during compaction 7. updated snow viscosity coefficient in compaction process 8. add canopy heat storage in canopy temperature calculation 9. updated formulation and parameter values for TOPMODEL groundwater scheme (OPT_RUN=1) 10. Bug fixes: SWE cap value in initialization, NoahMP snow depth update, snow layer index update, floating issues in runoff scheme, and BATS albedo scheme LIST OF MODIFIED FILES: list of changed files (use `git diff --name-status master` to get formatted list) M Registry/Registry.EM_COMMON M Registry/registry.noahmp M dyn_em/module_first_rk_step_part1.F M dyn_em/start_em.F M phys/module_diag_misc.F M phys/module_diagnostics_driver.F M phys/module_physics_init.F M phys/module_sf_noahmp_glacier.F M phys/module_sf_noahmp_groundwater.F M phys/module_sf_noahmpdrv.F M phys/module_sf_noahmplsm.F M phys/module_surface_driver.F M run/MPTABLE.TBL M run/README.namelist M run/SOILPARM.TBL TESTS CONDUCTED: 1. successfully compiled and tested for running in NCAR supercomputer by Cenlin He (NCAR) 2. Jenkins tests are all pass. RELEASE NOTE: Updates from NoahMP and linking WRF directly to NoahMP Github repo.
1 parent 7b642cc commit a82ce24

15 files changed

+3593
-1309
lines changed

Registry/Registry.EM_COMMON

+12-4
Original file line numberDiff line numberDiff line change
@@ -825,6 +825,9 @@ state real SMSTOT ij misc 1 - r
825825
state real SOLDRAIN ij misc 1 - r "SOLDRAIN" "soil column drainage" "mm"
826826
state real SFCHEADRT ij misc 1 - r "SFCHEADRT" "surface water depth" "mm"
827827
state real INFXSRT ij misc 1 - r "INFXSRT" "time step infiltration excess" "mm"
828+
state real qtiledrain ij misc 1 - r "qtiledrain" "accumulated tile drainage" "mm"
829+
state real ZWATBLE2D ij misc 1 - r "ZWATBLE2D" "water table depth for tile drainage" "mm"
830+
828831
state real SFCRUNOFF ij misc 1 - rhd=(interp_mask_field:lu_index,iswater) "SFROFF" "SURFACE RUNOFF" "mm"
829832
state real UDRUNOFF ij misc 1 - rhd=(interp_mask_field:lu_index,iswater) "UDROFF" "UNDERGROUND RUNOFF" "mm"
830833
state integer IVGTYP ij misc 1 - i02rhd=(interp_fcni)u=(copy_fcni) "IVGTYP" "DOMINANT VEGETATION CATEGORY" ""
@@ -2615,7 +2618,7 @@ rconfig integer madwrf_cldinit namelist,physics 1
26152618
rconfig integer dveg namelist,noah_mp 1 4 h "dveg" "dynamic vegetation (1 -> off ; 2 -> on)" ""
26162619
rconfig integer opt_crs namelist,noah_mp 1 1 h "opt_crs" "canopy stomatal resistance (1-> Ball-Berry; 2->Jarvis)" ""
26172620
rconfig integer opt_btr namelist,noah_mp 1 1 h "opt_btr" "soil moisture factor for stomatal resistance (1-> Noah; 2-> CLM; 3-> SSiB)" ""
2618-
rconfig integer opt_run namelist,noah_mp 1 3 h "opt_run" "runoff and groundwater (1->SIMGM; 2->SIMTOP; 3->Schaake96; 4->BATS; 5->Miguez-Macho & Fan)" ""
2621+
rconfig integer opt_run namelist,noah_mp 1 3 h "opt_run" "runoff and groundwater (1->SIMGM; 2->SIMTOP; 3->Schaake96; 4->BATS; 5->Miguez-Macho & Fan; 6->VIC; 7->Xiananjiang; 8->Dynamic VIC)" ""
26192622
rconfig integer opt_sfc namelist,noah_mp 1 1 h "opt_sfc" "surface layer drag coeff (CH & CM) (1->M-O; 2->Chen97)" ""
26202623
rconfig integer opt_frz namelist,noah_mp 1 1 h "opt_frz" "supercooled liquid water (1-> NY06; 2->Koren99)" ""
26212624
rconfig integer opt_inf namelist,noah_mp 1 1 h "opt_inf" "frozen soil permeability (1-> NY06; 2->Koren99)" ""
@@ -2631,7 +2634,12 @@ rconfig integer opt_pedo namelist,noah_mp 1 1 h "
26312634
rconfig integer opt_crop namelist,noah_mp 1 0 h "opt_crop" "crop model option" ""
26322635
rconfig integer opt_irr namelist,noah_mp 1 0 h "opt_irr" "Noah-MP irrigation option" ""
26332636
rconfig integer opt_irrm namelist,noah_mp 1 0 h "opt_irrm" "Noah-MP irrigation method option" ""
2634-
rconfig real WTDDT namelist,physics max_domains 30. h "wtddt" "minutes between calls to lateral hydro" ""
2637+
rconfig integer opt_infdv namelist,noah_mp 1 0 h "opt_infdv" "Noah-MP infiltration option in dynamic VIC runoff scheme (only works with opt_run=8), 1->Philip; 2->Green-Ampt; 3->Smith-Parlange"
2638+
rconfig integer opt_tdrn namelist,noah_mp 1 0 h "opt_tdrn" "NoahMP tile drainage option (currently only tested & works with opt_run=3), 0->no tile drainage; 1->Simple drainage; 2->Hooghoudt scheme"
2639+
rconfig real soiltstep namelist,noah_mp 1 0. h "soiltstep" "NoahMP soil process timestep (s) for solving soil temperature and water (default:0->same as main noahmp timestep)"
2640+
rconfig real WTDDT namelist,physics max_domains 30. h "wtddt" "minutes between calls to lateral hydro" ""
2641+
rconfig real noahmp_acc_dt namelist,noah_mp 1 0. h "noahmp_acc_dt" "bucket reset time interval between outputs for noah-mp accumulation" "minutes"
2642+
rconfig integer noahmp_output namelist,noah_mp 1 1 h "noahmp_output" "noahmp output level" ""
26352643

26362644
# For WRF Hydro
26372645
rconfig integer wrf_hydro derived 1 0 h "wrf_hydro" "descrip" "unit"
@@ -3065,7 +3073,7 @@ package slabscheme sf_surface_physics==1 - -
30653073
package lsmscheme sf_surface_physics==2 - state:flx4,fvb,fbur,fgsn,smcrel,xlaidyn
30663074
package ruclsmscheme sf_surface_physics==3 - state:smfr3d,keepfr3dflag,soilt1,rhosnf,snowfallac,precipfr,acrunoff
30673075
package clmscheme sf_surface_physics==5 - state:numc,nump,sabv,sabg,lwup,lhsoi,lhveg,lhtran,snl,snowdp,wtc,wtp,h2osno,t_grnd,t_veg,h2ocan,h2ocan_col,t2m_max,t2m_min,t2clm,t_ref2m,q_ref2m,h2osoi_liq_s1,h2osoi_liq_s2,h2osoi_liq_s3,h2osoi_liq_s4,h2osoi_liq_s5,h2osoi_liq1,h2osoi_liq2,h2osoi_liq3,h2osoi_liq4,h2osoi_liq5,h2osoi_liq6,h2osoi_liq7,h2osoi_liq8,h2osoi_liq9,h2osoi_liq10,h2osoi_ice_s1,h2osoi_ice_s2,h2osoi_ice_s3,h2osoi_ice_s4,h2osoi_ice_s5,h2osoi_ice1,h2osoi_ice2,h2osoi_ice3,h2osoi_ice4,h2osoi_ice5,h2osoi_ice6,h2osoi_ice7,h2osoi_ice8,h2osoi_ice9,h2osoi_ice10,t_soisno_s1,t_soisno_s2,t_soisno_s3,t_soisno_s4,t_soisno_s5,t_soisno1,t_soisno2,t_soisno3,t_soisno4,t_soisno5,t_soisno6,t_soisno7,t_soisno8,t_soisno9,t_soisno10,dzsnow1,dzsnow2,dzsnow3,dzsnow4,dzsnow5,snowrds1,snowrds2,snowrds3,snowrds4,snowrds5,t_lake1,t_lake2,t_lake3,t_lake4,t_lake5,t_lake6,t_lake7,t_lake8,t_lake9,t_lake10,h2osoi_vol1,h2osoi_vol2,h2osoi_vol3,h2osoi_vol4,h2osoi_vol5,h2osoi_vol6,h2osoi_vol7,h2osoi_vol8,h2osoi_vol9,h2osoi_vol10,albedosubgrid,lhsubgrid,hfxsubgrid,lwupsubgrid,q2subgrid,sabvsubgrid,sabgsubgrid,nrasubgrid,swupsubgrid,t_veg24,t_veg240,fsun,fsun24,fsun240,fsd24,fsd240,fsi24,fsi240,laip,pct_pft_input
3068-
package noahmpscheme sf_surface_physics==4 - state:isnowxy,tvxy,tgxy,canliqxy,canicexy,eahxy,tahxy,cmxy,chxy,fwetxy,sneqvoxy,alboldxy,qsnowxy,qrainxy,wslakexy,zwtxy,waxy,wtxy,tsnoxy,zsnsoxy,snicexy,snliqxy,lfmassxy,rtmassxy,stmassxy,woodxy,stblcpxy,fastcpxy,xsaixy,taussxy,t2mvxy,t2mbxy,q2mvxy,q2mbxy,tradxy,neexy,gppxy,nppxy,fvegxy,qinxy,runsfxy,runsbxy,ecanxy,edirxy,etranxy,fsaxy,firaxy,aparxy,psnxy,savxy,sagxy,rssunxy,rsshaxy,bgapxy,wgapxy,tgvxy,tgbxy,chvxy,chbxy,shgxy,shcxy,shbxy,evgxy,evbxy,ghvxy,ghbxy,irgxy,ircxy,irbxy,trxy,evcxy,chleafxy,chucxy,chv2xy,chb2xy,chstarxy,smoiseq,smcwtdxy,rechxy,deeprechxy,fdepthxy,areaxy,rivercondxy,riverbedxy,eqzwt,pexpxy,qrfxy,qrfsxy,qspringxy,qspringsxy,qslatxy,stepwtd,rechclim,gddxy,grainxy,croptype,planting,harvest,season_gdd,cropcat,pgsxy,soilcomp,soilcl1,soilcl2,soilcl3,soilcl4,irfract,sifract,mifract,fifract,irnumsi,irnummi,irnumfi,irwatsi,irwatmi,irwatfi,irsivol,irmivol,irfivol,ireloss,irrsplh
3076+
package noahmpscheme sf_surface_physics==4 - state:isnowxy,tvxy,tgxy,canliqxy,canicexy,eahxy,tahxy,cmxy,chxy,fwetxy,sneqvoxy,alboldxy,qsnowxy,qrainxy,wslakexy,zwtxy,waxy,wtxy,tsnoxy,zsnsoxy,snicexy,snliqxy,lfmassxy,rtmassxy,stmassxy,woodxy,stblcpxy,fastcpxy,xsaixy,taussxy,t2mvxy,t2mbxy,q2mvxy,q2mbxy,tradxy,neexy,gppxy,nppxy,fvegxy,qinxy,runsfxy,runsbxy,ecanxy,edirxy,etranxy,fsaxy,firaxy,aparxy,psnxy,savxy,sagxy,rssunxy,rsshaxy,bgapxy,wgapxy,tgvxy,tgbxy,chvxy,chbxy,shgxy,shcxy,shbxy,evgxy,evbxy,ghvxy,ghbxy,irgxy,ircxy,irbxy,trxy,evcxy,chleafxy,chucxy,chv2xy,chb2xy,chstarxy,smoiseq,smcwtdxy,rechxy,deeprechxy,fdepthxy,areaxy,rivercondxy,riverbedxy,eqzwt,pexpxy,qrfxy,qrfsxy,qspringxy,qspringsxy,qslatxy,stepwtd,rechclim,gddxy,grainxy,croptype,planting,harvest,season_gdd,cropcat,pgsxy,soilcomp,soilcl1,soilcl2,soilcl3,soilcl4,irfract,sifract,mifract,fifract,irnumsi,irnummi,irnumfi,irwatsi,irwatmi,irwatfi,irsivol,irmivol,irfivol,ireloss,irrsplh,td_fraction,qtdrain,acrech,acqspring,qlatxy,qintsxy,qintrxy,qdripsxy,qdriprxy,qthrosxy,qthrorxy,qsnsubxy,qsnfroxy,qsubcxy,qfrocxy,qevacxy,qdewcxy,qfrzcxy,qmeltcxy,qsnbotxy,pondingxy,pahxy,pahgxy,pahvxy,pahbxy,fpicexy,rainlsm,snowlsm,acints,acintr,acdripr,acthror,acevac,acdewc,forctlsm,forcqlsm,forcplsm,forczlsm,forcwlsm,acrainlsm,acrunsb,acrunsf,acecan,acetran,acedir,acqlat,acqrf,acetlsm,acsnowlsm,acsubc,acfroc,acfrzc,acmeltc,acsnbot,acponding,acsnsub,acsnfro,acrainsnow,acdrips,acthros,acsagb,acirb,acshb,acevb,acghb,acpahb,acsagv,acirg,acshg,acevg,acghv,acpahg,acsav,acirc,acshc,acevc,actr,acpahv,acswdnlsm,acswuplsm,aclwdnlsm,aclwuplsm,acshflsm,aclhflsm,acghflsm,acpahlsm,accanhs,canhsxy,soilenergy,snowenergy,acc_ssoil,acc_qinsur,acc_qseva,acc_etrani,aceflxb,eflxbxy,acc_dwaterxy,acc_prcpxy,acc_ecanxy,acc_etranxy,acc_edirxy
30693077
package ctsmscheme sf_surface_physics==6 - -
30703078
package pxlsmscheme sf_surface_physics==7 - state:t2_ndg_new,q2_ndg_new,t2_ndg_old,q2_ndg_old,t2obs,q2obs,vegf_px,imperv,canfra,lai_px,wwlt_px,wfc_px,wsat_px,clay_px,csand_px,fmsand_px
30713079
package ssibscheme sf_surface_physics==8 - state:ssib_fm,ssib_fh,ssib_cm,ssibxdd,ssib_br,ssib_lhf,ssib_shf,ssib_ghf,ssib_egs,ssib_eci,ssib_ect,ssib_egi,ssib_egt,ssib_sdn,ssib_sup,ssib_ldn,ssib_lup,ssib_wat,ssib_shc,ssib_shg,ssib_lai,ssib_vcf,ssib_z00,ssib_veg,isnow,swe,snowden,snowdepth,tkair,dzo1,wo1,tssn1,tssno1,bwo1,bto1,cto1,fio1,flo1,bio1,blo1,ho1,dzo2,wo2,tssn2,tssno2,bwo2,bto2,cto2,fio2,flo2,bio2,blo2,ho2,dzo3,wo3,tssn3,tssno3,bwo3,bto3,cto3,fio3,flo3,bio3,blo3,ho3,dzo4,wo4,tssn4,tssno4,bwo4,bto4,cto4,fio4,flo4,bio4,blo4,ho4
@@ -3294,7 +3302,7 @@ package io_netcdfpar io_form_restart==13 - -
32943302

32953303
#WRF Hydro
32963304
package no_wrfhydro wrf_hydro==0 - -
3297-
package wrfhydro wrf_hydro==1 - state:SOLDRAIN, SFCHEADRT, INFXSRT
3305+
package wrfhydro wrf_hydro==1 - state:SOLDRAIN,SFCHEADRT,INFXSRT,qtiledrain,ZWATBLE2D
32983306

32993307
#WRF Windfarm
33003308
package no_windfarm windfarm_opt==0 - -

0 commit comments

Comments
 (0)