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 the code (DOI 10.5281/zenodo.3352249), 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.
SOILWAT2 comes with a detailed manual and short overviews of inputs and outputs. A full code documentation may be built, see here.
-
Requirements:
- the
gccorclang/llvmtoolchains compliant withC99- for unit tests (using
googletest) and debugging- toolchains compliant with
C++17(>=gcc13, >=clang-15) POSIX API
- toolchains compliant with
- for unit tests (using
- GNU-compliant
make - On Windows OS: an installation of
cygwin - the
netCDF-Clibrary (if compiled with netCDF support) - the
udunits2library (if compiled with udunits2 support) - a
MPIlibrary (tested with OpenMPI) and a parallelnetCDF-Clibrary (if compiled with MPI support)
- the
-
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(seemake helpto print information about all available targets). For instance,
make CPPFLAGS=-DSWTXT # text-based mode
make CPPFLAGS=-DSWNC # netCDF-based mode with units
make CPPFLAGS=-DSWMPI CC=mpicc # mpi-based mode with netCDFs and units
# (here using the `mpicc` compiler)
-
Use doxygen to generate help pages (locally) on the command-line with
make doc(which basically runsdoxygen doc/Doxyfile) -
View documentation in your browser with
make doc_open
You can help us in different ways
- Reporting issues
- Contributing code and sending a pull request
Thank you!
Please follow our code development and contribution guidelines here