LPJmL is a Dynamic Global Vegetation Model (DGVM) written in C, designed to simulate terrestrial natural vegetation, agriculture and hydrology at global scales. It is currently developed and maintained mainly by the Potsdam Institute for Climate Impact Research (PIK) in Potsdam, Germany.
- Dynamic Vegetation Modeling: Dynamic natural vegetation composition based on climate and underlying biophysical processes.
- Land-Use Integration: Representation of land use such as cropping systems, managed grassland and wood plantations
- Flexible Configuration: Highly configurable through input files and parameters.
- Scalability: Designed for global-scale simulations, with support for parallel computation.
LPJmL is written in C and requires the following tools and libraries:
- A standard C compiler (e.g., GCC or Clang).
- GNU Make for build management.
- MPI (optional, for parallel execution).
- JSON-C library.
- NetCDF and Udunits-2 library (optional).
For additional dependencies, refer to the INSTALL.md file.
-
Clone the repository:
git clone https://github.com/PIK-LPJmL/LPJmL.git cd LPJmL -
Compile the source code:
./configure.sh make all
For detailed setup instructions, see the INSTALL.md file. LPJmL requires additional input data to run simulations. Input files can be generated applying the Land Input Generator (LandInG) To test the model, use the provided test data:
-
Run a test simulation:
make test
For detailed usage instructions, refer to the documentation. For changes and bug fixes in the code refer to the changelog.
We welcome contributions to LPJmL, including:
- Bug fixes.
- New model features.
- Improvements to documentation or performance.
- Fork the repository on GitHub.
- Create a feature branch:
git checkout -b feature-name
- Submit a pull request with a detailed description of your changes.
Please adhere to LPJmL’s coding standards. Refer to the STYLESHEET.md for guidelines.
Outside of collaborative agreements with PIK:
- No official support is provided for model setup, usage, or development.
- Discussions on development features can be initiated via GitHub Issues.
LPJmL is open-source software licensed under the GNU Affero General Public License Version 3 (AGPLv3). See the LICENSE file for details.
LPJmL is the result of collaborative work. See the AUTHORS file for contributors. For scientific use of LPJmL, please cite the relevant publications listed in the REFERENCES file.