Skip to content

DrylandEcology/SOILWAT2

Repository files navigation

gh nix build status gh win build status github release DOI license codecov status doc status


SOILWAT2

SOILWAT2 is an ecosystem water balance simulation model.

This repository of SOILWAT2 contains the same code that is used by rSOILWAT2 and STEPWAT2.

If you utilize this model, please cite appropriate references, and we would like to hear about your particular study (especially a copy of any published paper).

Some references

  • Bradford, J. B., D. R. Schlaepfer, and W. K. Lauenroth. 2014. Ecohydrology of adjacent sagebrush and lodgepole pine ecosystems: The consequences of climate change and disturbance. Ecosystems 17:590-605.
  • Palmquist, K.A., Schlaepfer, D.R., Bradford, J.B., and Lauenroth, W.K. 2016. Mid-latitude shrub steppe plant communities: climate change consequences for soil water resources. Ecology 97:2342–2354.
  • Schlaepfer, D. R., W. K. Lauenroth, and J. B. Bradford. 2012. Ecohydrological niche of sagebrush ecosystems. Ecohydrology 5:453-466.

Table of contents

  1. How to get started
    1. Compilation
    2. Documentation
  2. How to contribute

How to get started

SOILWAT2 comes with a detailed manual and short overviews of inputs and outputs. A full code documentation may be built, see here.

Compilation

  • Requirements:

    • the gcc or clang/llvm toolchains compliant with C99
      • for unit tests (using googletest)
        • toolchains compliant with C++14
        • POSIX API
    • GNU-compliant make
    • On Windows OS: an installation of cygwin
    • the netCDF-C library (if compiled with netCDF support)
    • the udunits2 library (if compiled with udunits2 support)
  • Clone the repository (details can be found in the manual), for instance,

        git clone --recursive https://github.com/DrylandEcology/SOILWAT2.git SOILWAT2
  • Build with make (see make help to print information about all available targets). For instance,
        make                                    # text-based mode
        CPPFLAGS='-DSWNETCDF -DUDUNITS2' make   # netCDF-based mode with units

Documentation

  • Use doxygen to generate help pages (locally) on the command-line with make doc (which basically runs doxygen doc/Doxyfile)

  • View documentation in your browser with make doc_open


How to contribute

You can help us in different ways

  1. Reporting issues
  2. Contributing code and sending a pull request

Thank you!

Please follow our code development and contribution guidelines here