-
Notifications
You must be signed in to change notification settings - Fork 151
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1567 from jvgeiger/feature/smopsv4_testcase
Add SMOPSv4 testcase
- Loading branch information
Showing
5 changed files
with
381 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#Subsurface state variables | ||
SoilMoist: 1 m3/m3 - 2 0 0 4 201 1000 # Average layer soil moisture (kg/m2) | ||
RelSMC: 0 m3/m3 - 0 0 0 4 141 1000 # Relative soil moisture | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
Noah-MP.4.0.1 SMOPS-ASCAT v4 soil moisture EnKF Assimilation Testcase | ||
|
||
This case demonstrates the EnKF-based assimilation of SMOPS-ASCAT v4 data into the NoahMP 4.0.1 LSM. | ||
|
||
It uses: | ||
(a) The AGRMET foring | ||
(b) retrospective running mode | ||
(c) The NoahMP version 4.0.1 land surface model | ||
(d) Global domain at 0.09 degree spatial resolution | ||
(e) A time period from 23:45Z 30 Apr 2024 to 00Z 2 May 2024 | ||
|
||
This directory contains: | ||
(a) This README file | ||
(b) The "lis.config" file used for this testcase | ||
(c) The "MODEL_OUTPUT_LIST.TBL" file used by the lis.config file | ||
to select the output variables | ||
(d) An "output.ctl" file used to display the output in GrADS from | ||
the LIS run | ||
|
||
Note that the "lis.config" file should be edited | ||
to make sure that the locations of the parameter and forcing files | ||
are specified correctly. | ||
|
||
To run this testcase: | ||
(a) Run the LIS executable using the "lis.config" file with the | ||
testcase input data | ||
(b) View the binary output using the testcase GrADS files | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,305 @@ | ||
#Overall driver options | ||
Running mode: "retrospective" | ||
Map projection of the LIS domain: latlon | ||
Number of nests: 1 | ||
Number of surface model types: 2 | ||
Surface model types: "LSM" "Openwater" | ||
Surface model output interval: 12hr #6hr #1da #1mo | ||
Land surface model: "Noah-MP.4.0.1" | ||
Open water model: "template open water" | ||
Number of met forcing sources: 1 | ||
Blending method for forcings: overlay | ||
Met forcing sources: "AGRMET" | ||
Met forcing chosen ensemble member: 1 | ||
Topographic correction method (met forcing): "none" | ||
Enable spatial downscaling of precipitation: 0 | ||
Spatial upscaling method (met forcing): average | ||
Spatial interpolation method (met forcing): bilinear | ||
Temporal interpolation method (met forcing): linear | ||
|
||
#Runtime options | ||
Forcing variables list file: ./input/forcing_variables.txt | ||
Output methodology: "2d gridspace" #"2d ensemble gridspace" | ||
Output model restart files: 1 | ||
Output data format: netcdf #binary | ||
Output naming style: "3 level hierarchy" | ||
Start mode: restart #coldstart Starting year: 2021 #2008 | ||
Starting year: 2024 #2008 | ||
Starting month: 04 #31 | ||
Starting day: 30 #31 | ||
Starting hour: 23 #23 | ||
Starting minute: 45 #45 | ||
Starting second: 0 | ||
Ending year: 2024 | ||
Ending month: 05 | ||
Ending day: 02 | ||
Ending hour: 00 | ||
Ending minute: 0 | ||
Ending second: 0 | ||
Undefined value: -9999 | ||
Output directory: OUTPUT #"output/EXP200/NOAHMP401/Run-A" | ||
Diagnostic output file: OUTPUT/log/lislog #"output/EXP200/NOAHMP401/Run-A/logs/lislog" | ||
Number of ensembles per tile: 12 | ||
|
||
#The following options are used for subgrid tiling based on vegetation | ||
Maximum number of surface type tiles per grid: 1 | ||
Minimum cutoff percentage (surface type tiles): 0.05 | ||
Maximum number of soil texture tiles per grid: 1 | ||
Minimum cutoff percentage (soil texture tiles): 0.05 | ||
Maximum number of soil fraction tiles per grid: 1 | ||
Minimum cutoff percentage (soil fraction tiles): 0.05 | ||
Maximum number of elevation bands per grid: 1 | ||
Minimum cutoff percentage (elevation bands): 0.05 | ||
Maximum number of slope bands per grid: 1 | ||
Minimum cutoff percentage (slope bands): 0.05 | ||
Maximum number of aspect bands per grid: 1 | ||
Minimum cutoff percentage (aspect bands): 0.05 | ||
|
||
#Processor layout | ||
#Should match the total number of processors used | ||
Number of processors along x: 12 | ||
Number of processors along y: 10 | ||
Halo size along x: 0 | ||
Halo size along y: 0 | ||
|
||
#Sub-models | ||
Routing model: none | ||
Radiative transfer model: none | ||
Number of application models: 0 | ||
|
||
#---------------------DATA ASSIMILATION ---------------------------------- | ||
#Data assimilation options | ||
Number of data assimilation instances: 1 | ||
Data assimilation algorithm: "EnKF" | ||
Data assimilation set: "SMOPS-ASCAT soil moisture" | ||
Number of state variables: 4 # added by Shugong | ||
Data assimilation exclude analysis increments: 0 | ||
Data assimilation output interval for diagnostics: "1da" | ||
Data assimilation number of observation types: 1 | ||
Data assimilation output ensemble spread: 0 | ||
Data assimilation output ensemble members: 1 | ||
Data assimilation output processed observations: 1 | ||
Data assimilation output innovations: 0 | ||
Data assimilation use a trained forward model: 0 | ||
Data assimilation trained forward model output file: none | ||
|
||
Data assimilation scaling strategy: "CDF matching" | ||
Data assimilation observation domain file: ./lis_input.global.noahmp401.nc | ||
|
||
#Bias estimation option../proc_LSM/lis_input.noahmp401.nc s | ||
Bias estimation algorithm: none none | ||
Bias estimation attributes file: none none | ||
Bias estimation restart output frequency: 1da 1da | ||
Bias estimation start mode: none none | ||
Bias estimation restart file: none none | ||
|
||
#Perturbation options | ||
Perturbations start mode: "coldstart" | ||
Perturbations restart output interval: "1mo" | ||
Perturbations restart filename: "none" | ||
Apply perturbation bias correction: 1 | ||
|
||
Forcing perturbation algorithm: "GMAO scheme" #none | ||
Forcing perturbation frequency: "1hr" | ||
Forcing attributes file: ./input/attribs/forcing_attribs.txt | ||
Forcing perturbation attributes file: ./input/attribs/forcing_pertattribs.txt | ||
|
||
State perturbation algorithm: "GMAO scheme" #none | ||
State perturbation frequency: "6hr" | ||
State attributes file: ./input/attribs/noahmp_sm_attribs.txt | ||
State perturbation attributes file: ./input/attribs/noahmp_sm_pertattribs.txt | ||
|
||
Observation perturbation algorithm: "GMAO scheme" #none | ||
Observation perturbation frequency: "6hr" | ||
Observation attributes file: ./input/attribs/smops_attribs.txt | ||
Observation perturbation attributes file: ./input/attribs/smops_pertattribs.txt | ||
|
||
SMOPS ASCAT soil moisture data directory: ./input/RS_DATA/smops_data | ||
SMOPS ASCAT soil moisture use scaled standard deviation model: 0 | ||
SMOPS ASCAT use realtime data: 1 | ||
|
||
SMOPS ASCAT model CDF file: ./input/cdf/noahmp401_cdf_200obs.nc | ||
SMOPS ASCAT observation CDF file: ./input/cdf/ASCAT_cdf_10km_100obs.nc | ||
|
||
SMOPS ASCAT soil moisture number of bins in the CDF: 100 | ||
SMOPS ASCAT CDF read option: 1 | ||
|
||
SMOPS ASCAT naming convention: "AGRMET ops" | ||
SMOPS ASCAT version: 'date-based' | ||
|
||
#------------------------DOMAIN SPECIFICATION-------------------------- | ||
#The following options list the choice of parameter maps to be used | ||
LIS domain and parameter data file: ./lis_input.global.noahmp401.nc | ||
Landmask data source: LDT | ||
Landcover data source: LDT | ||
Soil texture data source: LDT | ||
Soil fraction data source: none | ||
Soil color data source: none | ||
Elevation data source: LDT | ||
Slope data source: LDT | ||
Aspect data source: LDT | ||
Curvature data source: none | ||
LAI data source: none | ||
SAI data source: none | ||
Albedo data source: LDT | ||
Max snow albedo data source: LDT | ||
Greenness data source: LDT | ||
Roughness data source: none | ||
Porosity data source: none | ||
Ksat data source: none | ||
B parameter data source: none | ||
Quartz data source: none | ||
Emissivity data source: none | ||
|
||
TBOT lag skin temperature update option: 0 | ||
TBOT skin temperature lag days: 0 | ||
|
||
#--------------------------------FORCINGS---------------------------------- | ||
AGRMET forcing map projection: latlon | ||
AGRMET forcing domain lower left lat: -89.9531250 | ||
AGRMET forcing domain lower left lon: -179.9296875 | ||
AGRMET forcing domain upper right lat: 89.9531250 | ||
AGRMET forcing domain upper right lon: 179.9296875 | ||
AGRMET forcing domain resolution (dx): 0.1406250 | ||
AGRMET forcing domain resolution (dy): 0.0937500 | ||
|
||
AGRMET forcing directory: ./input/MET_FORCING/usaf_lis75s2s_gfs2galwem | ||
AGRMET precip obs file format: 1 | ||
AGRMET sfc obs file format: 1 | ||
|
||
AGRMET first guess source: GALWEM | ||
AGRMET retrospective root filename: "/PS.AFWA_SC.U_DI.C_DC.ANLYS_GP.LIS_GR.C0P09DEG_AR.GLOBAL_PA.03-HR-SUM_DD." | ||
|
||
AGRMET analysis directory: Analysis_UMFG_1 | ||
AGRMET use timestamp on directories: 1 | ||
AGRMET use timestamp on gfs: 1 | ||
|
||
AGRMET security classification: U | ||
AGRMET distribution classification: C | ||
AGRMET data category: ANLYS | ||
AGRMET area of data: GLOBAL | ||
|
||
# For 10-km domain | ||
AGRMET GALWEM Precip background error scale length (m): 85000. | ||
AGRMET GALWEM Precip background error variance: 0.43 | ||
AGRMET GALWEM Precip Gauge observation error variance: 0.64 | ||
AGRMET GALWEM Precip GEOPRECIP observation error scale length (m): 78000. | ||
AGRMET GALWEM Precip GEOPRECIP observation error variance: 2.68 | ||
AGRMET GALWEM Precip SSMI observation error scale length (m): 30000. | ||
AGRMET GALWEM Precip SSMI observation error variance: 7.40 | ||
AGRMET GALWEM Precip CMORPH observation error scale length (m): 62000. | ||
AGRMET GALWEM Precip CMORPH observation error variance: 1.53 | ||
AGRMET GALWEM T2M background error scale length (m): 30000. | ||
AGRMET GALWEM T2M background error variance: 1.15 | ||
AGRMET GALWEM T2M station observation error variance: 2.75 | ||
AGRMET GALWEM RH2M background error scale length (m): 55000. | ||
AGRMET GALWEM RH2M background error variance: 32.5 | ||
AGRMET GALWEM RH2M station observation error variance: 48.0 | ||
AGRMET GALWEM SPD10M background error scale length (m): 100000. | ||
AGRMET GALWEM SPD10M background error variance: 0.35 | ||
AGRMET GALWEM SPD10M station observation error variance: 2.52 | ||
|
||
AGRMET GALWEM nominal resolution (km): 17 # 17 or 10; for now, just use 17 | ||
|
||
# 10-km | ||
AGRMET GFS Precip background error scale length (m): 75000. | ||
AGRMET GFS Precip background error variance: 0.58 | ||
AGRMET GFS Precip Gauge observation error variance: 0.6 | ||
AGRMET GFS Precip GEOPRECIP observation error scale length (m): 90000. | ||
AGRMET GFS Precip GEOPRECIP observation error variance: 2.22 | ||
AGRMET GFS Precip SSMI observation error scale length (m): 30000. | ||
AGRMET GFS Precip SSMI observation error variance: 7.4 | ||
AGRMET GFS Precip CMORPH observation error scale length (m): 65000. | ||
AGRMET GFS Precip CMORPH observation error variance: 1.43 | ||
AGRMET GFS T2M background error scale length (m): 60000. | ||
AGRMET GFS T2M background error variance: 0.78 | ||
AGRMET GFS T2M station observation error variance: 3.48 | ||
AGRMET GFS RH2M background error scale length (m): 95000. | ||
AGRMET GFS RH2M background error variance: 34.6 | ||
AGRMET GFS RH2M station observation error variance: 62.1 | ||
AGRMET GFS SPD10M background error scale length (m): 76000. | ||
AGRMET GFS SPD10M background error variance: 0.86 | ||
AGRMET GFS SPD10M station observation error variance: 2.44 | ||
AGRMET GFS filename version: 1 #recently added | ||
|
||
AGRMET maximum precip obs: 2000000 | ||
|
||
#IMERG settings | ||
AGRMET use IMERG data: 0 | ||
AGRMET IMERG temperature threshold: 278 | ||
AGRMET IMERG data directory: ../IMERG | ||
AGRMET IMERG product: 3B-HHR-E | ||
AGRMET IMERG version: V05B | ||
AGRMET IMERG Probability Liquid Precip Threshold: 100 | ||
AGRMET GALWEM Precip IMERG observation error scale length (m): 62000. | ||
AGRMET GALWEM Precip IMERG observation error variance: 1.53 | ||
AGRMET GFS Precip IMERG observation error scale length (m): 65000. | ||
AGRMET GFS Precip IMERG observation error variance: 1.43 | ||
|
||
#Only use for Bratseth tuning | ||
AGRMET output OBA data: 0 | ||
AGRMET skip backQC: 0 | ||
AGRMET skip superstatQC : 0 | ||
|
||
AGRMET WWMCA GRIB1 read option: 1 | ||
AGRMET snow distribution shape parameter: 2.6 | ||
|
||
AGRMET PPT Background bias correction option: 0 # 0 = turn off (not ready yet) | ||
|
||
#-----------------------LAND SURFACE MODELS-------------------------- | ||
Noah-MP.4.0.1 model timestep: 15mn | ||
Noah-MP.4.0.1 restart output interval: 1mo | ||
#Noah-MP.4.0.1 restart file: ../DA_ensrst/LIS_EnRST_NOAHMP401_201503312345.d01.ens12.nc | ||
#Noah-MP.4.0.1 restart file: ../output_David/SURFACEMODEL/200801/LIS_RST_NOAHMP401_200801312345.d01.nc | ||
#Noah-MP.4.0.1 restart file: ./OUTPUT/SURFACEMODEL/201811/LIS_RST_NOAHMP401_201811302345.d01.nc | ||
#Noah-MP.4.0.1 restart file: ./data/LIS_EnRST_NOAHMP401_202404302345.d01.ens12.nc | ||
Noah-MP.4.0.1 restart file: ./LIS_RST_NOAHMP401_202404302345.d01.nc | ||
Noah-MP.4.0.1 restart file format: netcdf | ||
Noah-MP.4.0.1 soil parameter table: ./input/LS_PARAMETERS/noahmp401_parms/SOILPARM.TBL | ||
Noah-MP.4.0.1 general parameter table: ./input/LS_PARAMETERS/noahmp401_parms/GENPARM.TBL | ||
Noah-MP.4.0.1 MP parameter table: ./input/LS_PARAMETERS/noahmp401_parms/MPTABLE.TBL | ||
Noah-MP.4.0.1 number of soil layers: 4 | ||
Noah-MP.4.0.1 thickness of soil layers: 0.1 0.3 0.6 1.0 | ||
Noah-MP.4.0.1 dynamic vegetation option: 4 # 9 options available | ||
Noah-MP.4.0.1 canopy stomatal resistance option: 1 # 1=Ball-Berry; 2=Jarvis | ||
Noah-MP.4.0.1 soil moisture factor for stomatal resistance: 1 # 1=Noah; 2=CLM; 3=SSiB | ||
Noah-MP.4.0.1 runoff and groundwater option: 1 # 1=SIMGM; 2=SIMTOP; 3=Schaake96; 4=BATS | ||
Noah-MP.4.0.1 surface layer drag coefficient option: 1 # 1=M-O; 2=Chen97 | ||
Noah-MP.4.0.1 supercooled liquid water option: 1 # 1=NY06; 2=Koren99 | ||
Noah-MP.4.0.1 frozen soil permeability option: 1 # 1=NY06; 2=Koren99 | ||
Noah-MP.4.0.1 radiation transfer option: 3 # 1=gap=F(3D;cosz); 2=gap=0; 3=gap=1-Fveg | ||
Noah-MP.4.0.1 snow surface albedo option: 2 # 1=BATS; 2=CLASS | ||
Noah-MP.4.0.1 rainfall & snowfall option: 1 # 1=Jordan91; 2=BATS; 3=Noah | ||
Noah-MP.4.0.1 lower boundary of soil temperature option: 2 # 1=zero-flux; 2=Noah | ||
Noah-MP.4.0.1 snow&soil temperature time scheme option: 1 # 1=semi-implicit; 2=fully implicit | ||
Noah-MP.4.0.1 glacier option: 1 # 1=include phase change; 2=slab ice (Noah) | ||
Noah-MP.4.0.1 surface resistance option: 1 # 1=Sakaguchi and Zeng 2009; 2=Sellers (1992); 3=adjusted Sellers; 4=option1 for non-snow and rsurf_snow for snow | ||
Noah-MP.4.0.1 soil configuration option: 1 # 1=input dominant soil texture; 2=input soil texture varies that varies with depth; 3=soil composition and pedotransfer functions | ||
Noah-MP.4.0.1 soil pedotransfer function option: 1 # 1=Saxton and Rawls (2006) (used when soil_opt=3) | ||
Noah-MP.4.0.1 crop model option: 0 # 0=No crop model; 1=Liu et al. 2016; 2=Gecros | ||
Noah-MP.4.0.1 urban physics option: 0 # 0=No; 1=Single-layer; 2=Multi-layer BEP scheme; 3=Multi-layer BEM scheme | ||
Noah-MP.4.0.1 initial surface skin temperature: 288.0 | ||
Noah-MP.4.0.1 initial soil temperatures: 288.0 288.0 288.0 288.0 | ||
Noah-MP.4.0.1 initial total soil moistures: 0.20 0.20 0.20 0.20 | ||
Noah-MP.4.0.1 initial snow water equivalent: 0.0 | ||
Noah-MP.4.0.1 initial snow depth: 0.0 | ||
Noah-MP.4.0.1 initial total canopy surface water: 0.0 | ||
Noah-MP.4.0.1 initial leaf area index: 0.5 | ||
Noah-MP.4.0.1 initial water table depth: 2.5 | ||
Noah-MP.4.0.1 initial water in the aquifer: 4900.0 | ||
Noah-MP.4.0.1 initial water in aquifer and saturated soil: 4900.0 | ||
Noah-MP.4.0.1 reference height of temperature and humidity: 10.0 | ||
|
||
Template open water timestep: 15mn | ||
|
||
#---------------------------MODEL OUTPUT CONFIGURATION----------------------- | ||
#Specify the list of ALMA variables that need to be featured in the | ||
#LSM model output | ||
Output start year: | ||
Output start month: | ||
Output start day: | ||
Output start hour: | ||
Output start minutes: | ||
Output start seconds: | ||
|
||
Model output attributes file: './MODEL_OUTPUT_LIST.TBL' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
dset ^OUTPUT/SURFACEMODEL/%y4%m2/LIS_HIST_%y4%m2%d2%h200.d01.nc | ||
dtype netcdf | ||
options template | ||
undef -9999 | ||
xdef 2560 linear -179.9297 0.140625 | ||
ydef 1920 linear -89.95312 0.09375 | ||
zdef 1 linear 1 1 | ||
* dummy tdef | ||
tdef 3 linear 00z01may2024 12hr | ||
vars 10 | ||
lat=>lat 1 y,x description | ||
lon=>lon 1 y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg1 0 0,y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg2 0 1,y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg3 0 2,y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg4 0 3,y,x description | ||
SoilMoist_inst=>SoilMoist_inst1 0 0,y,x description | ||
SoilMoist_inst=>SoilMoist_inst2 0 1,y,x description | ||
SoilMoist_inst=>SoilMoist_inst3 0 2,y,x description | ||
SoilMoist_inst=>SoilMoist_inst4 0 3,y,x description | ||
endvars |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
dset ^TARGET_OUTPUT/SURFACEMODEL/%y4%m2/LIS_HIST_%y4%m2%d2%h200.d01.nc | ||
dtype netcdf | ||
options template | ||
undef -9999 | ||
xdef 2560 linear -179.9297 0.140625 | ||
ydef 1920 linear -89.95312 0.09375 | ||
zdef 1 linear 1 1 | ||
* dummy tdef | ||
tdef 3 linear 00z01may2024 12hr | ||
vars 10 | ||
lat=>lat 1 y,x description | ||
lon=>lon 1 y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg1 0 0,y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg2 0 1,y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg3 0 2,y,x description | ||
SoilMoist_tavg=>SoilMoist_tavg4 0 3,y,x description | ||
SoilMoist_inst=>SoilMoist_inst1 0 0,y,x description | ||
SoilMoist_inst=>SoilMoist_inst2 0 1,y,x description | ||
SoilMoist_inst=>SoilMoist_inst3 0 2,y,x description | ||
SoilMoist_inst=>SoilMoist_inst4 0 3,y,x description | ||
endvars |