Sorry, you need to enable JavaScript to visit this website.

Release Notes

LIS is now on GitHub! Please see our latest announcement for more details:  LISF on GitHub

 

Latest public release version is still 7.2r, and information for that are found below:

Land surface Data Toolkit (LDT) Public Release 7.2r (r6983:7558)

Land Information System (LIS) Public Release 7.2r (r6996:7551)

Land surface Verification Toolkit (LVT) Public Release 7.2r (r5927:7374)

Version: LDT_public_release_7.2r, LIS_public_release_7.2r, LVT_public_release_7.2r
Release date: 6 May 2017

The Land Information System Framework (LISF) is released under the terms and conditions of the NASA Open Source Agreement (NOSA) Version 1.3. To download and/or use the LISF software you must agree to the LISF NOSA.

Source Code

LDT change log

This is the public release of LDT 7.2.

  • Changed a large static array to a dynamic allocatable one, as memory issues were being found when adding other large parameter datasets.

  • Added minor updates to LDT log errors and comments.

  • Added check for when a 'CONSTANT' landcover is selected but also for when the fill option is set to 'none'. The fill option is used to specify the landcover type.

  • Updated the LDT PRISM precipitation monthly climatology reader and testcase.

  • Future updates will be needed to accommodate the newer PRISM data format (*.bil), which will make future releases.

  • Updated the LDT-based SRTM test case.

  • Updated the Noah v3.3 LSM parameter test case for LDT.

  • Updated the LDT-based USGS landcover reader.

  • Updated the LDT-based HYMAP test case

  • Updated the LDT-based GeoWRSI test case.

  • Updated log comment in ensemble restart routine

  • Updated the "Constant" parameter test case.

  • Updated the MOD44W mask file test case for LDT.

  • Updated the LDT-based CLSM F2.5 test case.

  • Added the Metforce NLDAS-2 processing test case

  • Removed the testcase for RDHM, v3.5.6, since a version of that testcase exists in the LIS public testcases.

  • Removed a couple of additional LDT test cases and added an updated NLDAS2 elevation parameter test case.

  • Updated the LDT ensemble restart upscaling test case.

  • Updated the LDT ensemble restart downscaling test case.

  • Updating and removing some of the built-in (stand-alone) LDT testcase directories.

    New testcase updates to be committed soon.

  • Commented out lines in each supplemental observed precip reader (e.g., CMAP) that calculate the ratio between a convective rainfall field and companion rainfall or total precip field.

    An error was found in each reader that the convective precip field was not getting passed from the 'baseforcing' type dataset readers and resulting in full 0-valued fields, which were overwriting the convective precip of the baseforcing in the output fields.

    So for the upcoming LIS Spring 2017 release, this feature was turned off for now and will be fully implemented in the next release.

  • Fixed subroutine calls related to the "average" upscaling option for the RFE2gdas forcing reader.

    Former lines of code no longer matched the input/output types related requirements.

  • updates to the SMAP data plugin to fix an interpolation issue when using a regional domain

  • Added the updated ECMWF reset routine, as now also found in the LIS dev branch.

  • Added minor updates to the CHIRPS daily reader; and implemented the "corrected" convective precip and snowfall fields to the MERRA2 reader.

  • Fixed an uninitialized variable in the LIS LSM data reader for DAobs

  • Fixed the requirement for the missing_data global flag in the NUWRF mode

  • Made additional corrections / updates to read_gdas routine.

  • Made minor updates to the CHIRPS2 forcing module.

  • Added Eric Kemp's correction to the pds5 array. (from LIS-7 public)

  • Update Param_SRTMtile testcase

  • Made a temporary update to the CHIRPS v2 daily reader, where the user can specify the starting name of the CHIRPS daily "annual" netcdf-formatted files.

    This update has been implemented for now to support reading in either CHIRPS ("S" - station-corrected) or the original "CHIRP" global precipitation forcing dataset.

    Options in the LDT config file can be specified as:

    1. CHIRPS station-corrected dataset: (filenames starting with: "chirps-v2.0" CHIRPS2.0 forcing directory: ../CHIRPSv2/daily_p05/chirps-v2.0
    2. Original CHIRP precipitation: (filenames starting with: "chirp" CHIRPS2.0 forcing directory: ../CHIRP/chirp
  • Added new minor features to the MERRA2 reader in LDT to support 'none' spatial and temporal interpolation options, which allow the user to read in the "native" MERRA-2 files without alteration by LDT.

    Such options are supported within each of the metforcing run mode methods.

  • Updated the GEOS5 forecast reader in the LDT development branch to match what Sujay updated in LIS dev branch.

    This updated GEOS5 code has not been tested yet as forcing ensemble support needs to be fully added into LDT. To be done in near future.

  • Implemented the zterp correction recently implemented by Jim Geiger and Hiroko Beaudoing in the LIS dev code. It incorporates Hiroko's zterp correction used at run-time.

    Please see Trac ticket #113.

    To enable this correction, add this to your LIS run-time configuration file (lis.config):

    Enable new zterp correction (met forcing): .true.
    

    This option has the default setting of .false.

  • Added minor updates to the MERRA-2 forcing reader. Allowing native fields be read in and be processed through by run-modes, like temporal downscaling and climatology generation.

  • Removed the obsolete "geos" forcing dataset option, as this will no longer be supported in future LDT versions. This forcing option supported older GEOS versions (3 and 4).

  • Added options to use NCEP-LIS slopetype and tbot datasets to RUC LSM.

LIS change log

This is the initial release of the public version of LIS 7.2.

  • Includes the NOAA Rapid Update Cycle (RUC) 3.7.1 land surface model
  • Includes the ensemble streamflow prediction (ESP) conventional forecasting runmode
  • Includes additional parameter and uncertainty estimation support
    • Differential evolution Markov chain (DEMC)
    • Levenberg-Marquardt
    • Random walk Markov chain monte carlo
  • Includes additional radiative transfer model support
    • Tau Omega
  • Data assimilation is performed on the observation grid
  • Supports HYMAP runoff data
  • Supports ANSA snow depth observations
  • Supports GCOMW AMSR2 L3 soil moisture observations
  • Supports GCOMW AMSR2 L3 snow depth observations
  • Supports NASA SMAP soil moisture observations
  • Supports PILDAS soil moisture observations
  • Supports SMMR snow depth observations
  • Supports SMOS L2 soil moisture observations
  • Supports SMOS NESDIS soil moisture observations
  • Supports SSMI snow depth observations
  • Supports AWAP precipitation data
  • Supports LDT generated met forcing climatology data
  • Supports generic ensemble forecast met forcing data
  • Supports GRIB 2 formatted output

LVT change log

This is the public release of LDT 7.2.

  • Changed a large static array to a dynamic allocatable one, as memory issues were being found when adding other large parameter datasets.

  • Added minor updates to LDT log errors and comments.

  • Added check for when a 'CONSTANT' landcover is selected but also for when the fill option is set to 'none'. The fill option is used to specify the landcover type.

  • Updated the LDT PRISM precipitation monthly climatology reader and testcase.

  • Future updates will be needed to accommodate the newer PRISM data format (*.bil), which will make future releases.

  • Updated the LDT-based SRTM test case.

  • Updated the Noah v3.3 LSM parameter test case for LDT.

  • Updated the LDT-based USGS landcover reader.

  • Updated the LDT-based HYMAP test case

  • Updated the LDT-based GeoWRSI test case.

  • Updated log comment in ensemble restart routine

  • Updated the "Constant" parameter test case.

  • Updated the MOD44W mask file test case for LDT.

  • Updated the LDT-based CLSM F2.5 test case.

  • Added the Metforce NLDAS-2 processing test case

  • Removed the testcase for RDHM, v3.5.6, since a version of that testcase exists in the LIS public testcases.

  • Removed a couple of additional LDT test cases and added an updated NLDAS2 elevation parameter test case.

  • Updated the LDT ensemble restart upscaling test case.

  • Updated the LDT ensemble restart downscaling test case.

  • Updating and removing some of the built-in (stand-alone) LDT testcase directories.

    New testcase updates to be committed soon.

  • Commented out lines in each supplemental observed precip reader (e.g., CMAP) that calculate the ratio between a convective rainfall field and companion rainfall or total precip field.

    An error was found in each reader that the convective precip field was not getting passed from the 'baseforcing' type dataset readers and resulting in full 0-valued fields, which were overwriting the convective precip of the baseforcing in the output fields.

    So for the upcoming LIS Spring 2017 release, this feature was turned off for now and will be fully implemented in the next release.

  • Fixed subroutine calls related to the "average" upscaling option for the RFE2gdas forcing reader.

    Former lines of code no longer matched the input/output types related requirements.

  • updates to the SMAP data plugin to fix an interpolation issue when using a regional domain

  • Added the updated ECMWF reset routine, as now also found in the LIS dev branch.

  • Added minor updates to the CHIRPS daily reader; and implemented the "corrected" convective precip and snowfall fields to the MERRA2 reader.

  • Fixed an uninitialized variable in the LIS LSM data reader for DAobs

  • Fixed the requirement for the missing_data global flag in the NUWRF mode

  • Made additional corrections / updates to read_gdas routine.

  • Made minor updates to the CHIRPS2 forcing module.

  • Added Eric Kemp's correction to the pds5 array. (from LIS-7 public)

  • Update Param_SRTMtile testcase

  • Made a temporary update to the CHIRPS v2 daily reader, where the user can specify the starting name of the CHIRPS daily "annual" netcdf-formatted files.

    This update has been implemented for now to support reading in either CHIRPS ("S" - station-corrected) or the original "CHIRP" global precipitation forcing dataset.

    Options in the LDT config file can be specified as:

    1. CHIRPS station-corrected dataset: (filenames starting with: "chirps-v2.0" CHIRPS2.0 forcing directory: ../CHIRPSv2/daily_p05/chirps-v2.0
    2. Original CHIRP precipitation: (filenames starting with: "chirp" CHIRPS2.0 forcing directory: ../CHIRP/chirp
  • Added new minor features to the MERRA2 reader in LDT to support 'none' spatial and temporal interpolation options, which allow the user to read in the "native" MERRA-2 files without alteration by LDT.

    Such options are supported within each of the metforcing run mode methods.

  • Updated the GEOS5 forecast reader in the LDT development branch to match what Sujay updated in LIS dev branch.

    This updated GEOS5 code has not been tested yet as forcing ensemble support needs to be fully added into LDT. To be done in near future.

  • Implemented the zterp correction recently implemented by Jim Geiger and Hiroko Beaudoing in the LIS dev code. It incorporates Hiroko's zterp correction used at run-time.

    Please see Trac ticket #113.

    To enable this correction, add this to your LIS run-time configuration file (lis.config):

    Enable new zterp correction (met forcing): .true.
    

    This option has the default setting of .false.

  • Added minor updates to the MERRA-2 forcing reader. Allowing native fields be read in and be processed through by run-modes, like temporal downscaling and climatology generation.

  • Removed the obsolete "geos" forcing dataset option, as this will no longer be supported in future LDT versions. This forcing option supported older GEOS versions (3 and 4).

  • Added options to use NCEP-LIS slopetype and tbot datasets to RUC LSM.

Land surface Data Toolkit (LDT) Public Release 7.1rp3 (r6607:6982)

Land Information System (LIS) Public Release 7.1rp8 (r6602:6995)

Version: LDT_public_release_7.1rp3, LIS_public_release_7.1rp8
Release date: 9 Nov 2016

The Land Information System Framework (LISF) is released under the terms and conditions of the NASA Open Source Agreement (NOSA) Version 1.3. To download and/or use the LISF software you must agree to the LISF NOSA.

Source Code

LDT change log

This patch release includes updates r6607:6982.

  • Remove print statement

  • Replaced missing lines of code to the core/LDT_albedoMod.F90 routine, due to recent r6956 commit. Please update your LDT branch.

  • Added support in several metforcing datasets (the "supplemental" precipitation forcings mostly) to assign the LDT "universal" undefined value to when a precipitation value it missing.

    So if the user selects several overlapping precipitation products (in addition to a "base forcing" dataset), this additional code defaults to the baseforcing field or another supplemental forcing value that is present when a forcing dataset has "missing" values.

  • Minor modifications to the logging diagnostic statements. Mainly, updating messages with the following convention:

    [ERR] -- When an error message is needed.
    [WARN] -- Warning statement, but LDT may
    continue to run
    [INFO] -- Normal routine statements to inform
    user of what is happening during runtime
  • Completed reimplementing and testing of the 'CONSTANT' parameter options in the latest LDT version (was originally in earlier versions of LDT).

    The use of the 'CONSTANT' parameter option allows users to set a contant value for most parameter types and for any domain, given a desired mask.

    For an example of different 'constant' parameter values set for a CONUS mask (on discover), please see the ldt.config file and output files here:

    /discover/nobackup/projects/lis/Projects/LDT/LDT_testnew/Param_CONSTANTS

  • Added documentation and updated the log diagnostic statements in relation to several of the LDT temporal downscaling code and met forcing core routines.

    Also, the updated code contains a new option (commented out at this time) that allows the user to specify the starting and ending time window hours, used in the temporal downscaling approaches. Not included at this time but may appear in future releases.

  • Minor updates to the LDT_paramProcMod routines (e.g., added some documentation) and just some slight improvement to readability in the domains/latlon/readinput_latlon.F90 routine

  • Made minor updates to the log diagnostic statements and minor print statement clean up

  • Updates to the CHIRPS v2 forcing reader.

    • A bug fix was implemented to account for a file read error associated with timesteps less than a day.
    • Additional clean up to the log diagnostic statements and added more documentation.
    • Replaced the LDT "rstflag" parameter with a local CHIRPS struc reset_flag (logical).

    The fix added in this commit corrects a problem found with the temporal downscaling issue.

  • Minor clean up to the HYMAP parameter and restart processing code.

  • Made fix to the LDT ensemble generation for HYMAP.

  • Updates to support GRACE obs processing in the observations space

  • Removed debugging print statements.

  • Removed a section of code that is repeated.

  • Adding a HYMAP router version 2 option to support future HYMAP model version (by A. Getirana) and features (e.g., 8 state variables for restart files).

    Option is: 'HYMAP2'

  • Cleaned up and added more documentation to the LDT_domainMod.F90 subroutine.

  • Adding documentation for the MERRA2 terrain height field option.

  • Added the capability to process the NASA SMAP retrievals for DA preprocessing. The CDFs will be computed on the EASE V2 grid. LDT has been modified to add the support for EASE V2 grid as one of the target grids

  • Added the ability to do spatial sampling within a specified radius while doing CDF computations. The config file has two new options related to this capability.

    Enable spatial sampling for CDF calculations:
    Spatial sampling window radius for CDF calculations:
    

If the "Enable spatial sampling for CDF calculations:" is not specified in the config file, the code assumes a sampling radius of 0. i.e., CDF calculations will only use the values at the respective grid cells.

  • Adding new MERRA-2 terrain height reader in LDT to support lapse-rate adjustment to the MERRA-2 forcing fields (Tair, Qair, SurfPres, and LWdown) in LIS.

    LDT config file entries to turn on the MERRA-2 terrain height (i.e., geopotential height) reader and read in the file include:

    Number of met forcing sources:        1                 # Enter number of forcing types
    Met forcing sources:                "MERRA2"            # Enter 'none' if no forcing selected
    Topographic correction method (met forcing):  "lapse-rate"    # none | lapse-rate
    
    MERRA2 geopotential terrain height file: ./MERRA2_100/MERRA2_101.const_2d_asm_Nx.00000000.nc4/
    

    Some simple testcases reside here on discover: /discover/nobackup/projects/lis/Projects/LDT/LDT_testnew/Metparm_MERRA2

  • Adding the missing MOD10A1 plugin for ANN support

  • Adding the new plugin for SMOS NESDIS datastream

  • updates to LDT related to the support for DA in observation space

  • Made simple correction and update to the albedo parameter module for when quarterly files are being read in for the former "NCEP_LIS" option. Number of levels was not being set to "4" for the four seasons.

  • Remove time checking in readRTSMOPSsmObs routine

    This is Sujay Kumar's patch to the readRTSMOPSsmObs routine that fixes a problem processing RT SMOPS observations.

  • Updated the climatological restart generation capability in LDT by expanding support for different LSMs, including Noah-MP, different Noah versions and VIC LSMs.

  • Revert back to real*4

  • Declare real variables as real*8

  • Compute eps based on number of latitude circles

  • Clean up gausslat routine

  • Update Gaussian support to use gausslat routine

  • Remove gaussian_mod.F90 file

    I am saving a copy of this file as gaussian_mod.F90.keep for reference.

    I need a few routines from this module. They will be modifyied and re-added.

  • Updated the MERRA2 grid description array parameters and added some additional information lines.

  • Update Ensrst_Downscale ldt.config file

  • Added back the "CONSTANT" option for the soil texture parameter field.

    This is the first of many commits to add back the "CONSTANT" parameter options and some parameter option updates.

  • Corrected bug related to the number of ensemble members selected for generating ensemble HYMAP restart file.

  • Fixed the config HYMAP router name option inside ensemble restart inflation/deflation core code.

    Also, added and updated checks and ldt log statements for Ensemble restart options during runtime, like error messages when options are not supported.

  • Correct reset_merra2

    Resetting the MERRA2 reader now reads both the left and right bookends. Before this fix the reader would only read the right bookend after a reset.

  • Adding logging message to help catch for a user when a parameter or dataset is being spatially transformed to the polar or hrap grid to indicate that this feature is not supported at this time.

  • Restored the HRAP ("hrap") grid domain, but it will only work with certain LSM options:

    LDT_rc%lsm == "RDHM.3.5.6",
                  "SACHTET.3.5.6"
                  "SNOW17"
    

    since the HRAP grid was mainly used with the Sacramento model (e.g., SAC-HTET), Snow-17, and the combined RDHM version.

    HRAP grid works in both serial and parallel modes, when selecting one of these model options.

    If any other options are selected, LDT will exit the runtime, until additional features are implemented and supported.

  • Minor bug fix for warning about function w/o explicit type declaration.

    This bug and bug fix was submitted by Hamada Badr.

  • Force stop if Polar Stereographic or HRAP projection code is called.

    These map projections are broken due to recent multi-parallelization changes. Plus, polar stereographic support is missing from LDT_gridmappingMod.F90.

    This is a band-aid for Trac tickets #235 and #236. Work on true fixes is postponed until we have an actual use case and customer that needs these to work.

  • Call map_set for ldtglbproj in readinput_gaussian routine

  • MERCATOR BUG FIX: Copy ldtproj struc to new ldtglbproj struct in LDT_domain.

    Recent changes to LDT to add support for parallel processing makes this update necessary. Otherwise LDT fails when writing Mercator map projection data to file.

    This addresses Trac ticket #226.

  • BUG FIX: Copy ldtproj structure to new ldtglbproj structure in LDT_domain.

    Recent changes to LDT to add support for parallel processing makes this update necessary. Otherwise LDT fails when writing lambert data to file.

    NOTE: Similar bugs may be present with the Gaussian, HRAP, Mercator, and Polar Stereographic projections.

  • Fixed error statements in subroutine setVarAttributes.

    Error statements (in calls to LDT_verify) erroneously referred to a different subroutine. Also, the statements were not sufficiently descriptive in explaining which call to nf90_put_att failed.

    This addresses LIS Trac Ticket #73.

  • Updates made to the RFE2 Daily reader

  • Made update to CHIRPS reader to allow reading in CHIRPS files when missing and a "baseforcing" is present.

  • Minor updates to the CHIRPS2 and MERRA-2 forcing modules

  • Updated the CHIRPS Daily reader to fix an issue whenever an CHIRPS precipitation file is missing and a baseforcing precipitation (like GDAS or MERRA2) are not defaulted to. (Issue: Previous day CHIRPS precipitation was filling in instead).

    • Issue mainly found within time_interp routine
    • Now corrected.
  • Updated the RFE2 Daily reader to fix an issue whenever an RFE2 precipitation file is missing and a baseforcing precipitation (like GDAS or MERRA2) are not defaulted to. (Issue: Previous day RFE2 precipitation was filling in instead).

    • Issue mainly found within time_interp routine
    • Now corrected.

LIS change log

This patch release includes updates r6602:6995.

  • Update gaussian_t1534 testcase

  • Correct pcp_flag

    The pcp_flag was incorrectly set for var_index 1 (pds5=11), which is temperature. It is now set for var_index 8 (pds5=59), which is precipitaion rate.

  • Revert back to real*4

  • Port updated Gaussian support from LDT into LIS

  • Port updated Gaussian support from LDT into LIS

  • Rename gaussian_mod.F90 to gaussian_mod.F90.keep

    I am no longer using this module. But I want to keep for reference.

  • Update gaussian_t126 testcase

  • Rename several gaussian_t126 testcase ctl files

  • Significant bug fixes to GDAS reader.

    1. Shortened pds5, pds7, and pds16 arrays to remove entries for albedo. This variable is not read in from GDAS, and the extra entries were cause buffer overflows (10th entry to arrays declared with 9 elements).
    2. Fixed logic for loading GDAS terrain for lapse rate correction. Code now recognises the combined "lapse-rate and slope-aspect" option.
  • Updates for compiling with GCC compilers

  • Merging Noah-MP revisions from development to public7.1.

    1. Fixed the behavior of snowfall forcing. Noah-MP just uses total precipitation as forcing, and depending on the config option chosen, will determine how much of the total precip is rainfall or snowfall.
    2. Checked in fixes to prevent divide-by-zero crashes in the code. These crashes are very rare, and for the most part, are already in later versions of Noah-MP as released by NCAR.
  • Removed "stop" statement in file, which was accidentally left in the code and used for testing purposes.

  • Updated the log error statement if a LIS config file wanting to be read in is missing or typed in correctly at the command line. The error statement no longer tries to print to the log diagnostic file (since that call to read in that line is actually in the LIS config file).

  • Fix bug regarding reading MERRA2 elevation

    The init_merra2 routine now reads elevation whenever LIS_rc%met_ecor is not "none".

  • Add support to read MERRA2 elevation data for lapse rate correction

  • Fixed minor bugs triggering warnings from Intel compiler.

    This fixes:

    • Warnings from surfacemodels/land/clm2/csm_share/clm2_shr_sys_mod.F90 about unused argument, which were related to missing preprocessor flag.
    • Warning from surfacemodels/land/mosaic/umd_sibalb.F90 about function with undeclared return type.

    These patches were submitted by Hamada Badr (JHU).

  • BUG FIX: Added irrigation support to WRF-LIS coupling.

    This code is already in the NU-WRF trunk and has been confirmed to work.

  • Update gaussian_t1534 testcase

  • Update MERRA-Land and MERRA2 testcases

  • Changed default output directory permissions to a+rwx. Fixed code indentation.

    The calls to the POSIX C function 'mkdir' are changed to set the mode to 0777, which grants all permissions to user, group, and other as a first-guess. The shell 'umask' command can be used to revoke permissions at run-time. This gives the user more flexibility in setting the permissions of the output directories created by LIS. Before this change, no permissions were granted to group or other by the 'mkdir' call, and the umask setting could not reverse this.

  • ProTeX updates for LIS Reference Manual

  • Minor update to the README_discover file as for the make module is only:

    lib/mkl-10.1.2.024

  • Updated the entries in the README_discover file to match more closely to the notes on the Modeling Guru forum:

    https://modelingguru.nasa.gov/community/atmospheric/lis/blog/2015/03/09/compiling-lis-7-on-sles11-sp3