lpjmlkit

lpjmlkit: A toolkit for operating LPJmL and model-specific data processing - Published in JOSS (2024)

https://github.com/pik-lpjml/lpjmlkit

Science Score: 98.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

cran r r-package
Last synced: 6 months ago · JSON representation ·

Repository

A collection of basic functions to facilitate the work with the DGVM LPJmL hosted at the Potsdam Institute for Climate Impact Research. It provides functions for running LPJmL, as well as reading, processing and writing model-related data such as inputs and outputs or configuration files.

Basic Info
  • Host: GitHub
  • Owner: PIK-LPJmL
  • License: agpl-3.0
  • Language: R
  • Default Branch: master
  • Homepage:
  • Size: 5.63 MB
Statistics
  • Stars: 10
  • Watchers: 1
  • Forks: 5
  • Open Issues: 0
  • Releases: 3
Topics
cran r r-package
Created about 4 years ago · Last pushed 11 months ago
Metadata Files
Readme Contributing License Citation

README.md

logo Toolkit for Basic LPJmL Handling

R package lpjmlkit, version 1.7.9

CRAN status DOI R build status codecov r-universe

Purpose and Functionality

A collection of basic functions to facilitate the work with the Dynamic Global Vegetation Model (DGVM) Lund-Potsdam-Jena managed Land (LPJmL) hosted at the Potsdam Institute for Climate Impact Research (PIK). It provides functions for performing LPJmL simulations, as well as reading, processing and writing model-related data such as inputs and outputs or configuration files.

Overview

LPJmL Runner 🏃 to perform LPJmL simulations

LPJmL Runner only supports Unix-based operating systems that have an LPJmL version >= 4 installed. - ✍ write_config() write config.json files using a data frame with parameters to be changed and a base configuration file - 🔍 check_config() check if generated config.json files are valid for LPJmL simulations - ▶ run_lpjml() run LPJmL directly (e.g. single cell simulations) or 🚀 submit_lpjml() to SLURM (e.g. global simulations)

LPJmL Data 💾 for reading and processing LPJmL data

  • read_io() read LPJmL input and output as a LPJmLData object, containing the data array and LPJmLMetaData

    • 📈 plot() the data or get insights via summary() and other base stats
    • 🔁 transform() it to other time and space formats
    • subset() the underlying data
    • 📦 as_array(), as_tibble() and as_raster() / as_terra() to export into common R data formats
  • read_meta() read meta or header files as LPJmLMetaData object

miscellaneous

  • calc_cellarea() to calculate the area of LPJmLData objects underlying grid or for other objects latitudes
  • functions to handle LPJmL file headers, read_header() read the header of LPJmL files, get_headersize() get the size of a file header or create_header() to create a header object for writing input files
  • get_datatype() get information on the data type used in different LPJmL files
  • asub() functionality of the subset method to be used on a base array, also to replace data
  • ... more functions via library(help = "lpjmlkit")

Installation

For installation of the most recent package version an additional repository has to be added in R:

r options(repos = c(CRAN = "@CRAN@", pik = "https://rse.pik-potsdam.de/r/packages")) The additional repository can be made available permanently by adding the line above to a file called .Rprofile stored in the home folder of your system (Sys.glob("~") in R returns the home directory).

After that the most recent version of the package can be installed using install.packages:

r install.packages("lpjmlkit")

Package updates can be installed using update.packages (make sure that the additional repository has been added before running that command):

r update.packages()

Tutorial

The package comes with vignettes describing the basic functionality of the package and how to use it. You can load them with the following command (the package needs to be installed):

r vignette("lpjml-data") # LPJmL Data vignette("lpjml-runner") # LPJmL Runner

Questions / Problems

In case of questions / problems please contact Jannes Breier jannesbr@pik-potsdam.de.

Citation

To cite package lpjmlkit in publications use:

Breier J, Ostberg S, Wirth S, Minoli S, Stenzel F, Hötten D, Müller C (2025). "lpjmlkit: Toolkit for Basic LPJmL Handling." doi:10.5281/zenodo.7773134 https://doi.org/10.5281/zenodo.7773134, Version: 1.7.9, https://github.com/PIK-LPJmL/lpjmlkit.

A BibTeX entry for LaTeX users is

latex @Misc{, title = {lpjmlkit: Toolkit for Basic LPJmL Handling}, author = {Jannes Breier and Sebastian Ostberg and Stephen Björn Wirth and Sara Minoli and Fabian Stenzel and David Hötten and Christoph Müller}, doi = {10.5281/zenodo.7773134}, date = {2025-04-02}, year = {2025}, url = {https://github.com/PIK-LPJmL/lpjmlkit}, note = {Version: 1.7.9}, }

Owner

  • Name: LPJmL group @ PIK
  • Login: PIK-LPJmL
  • Kind: organization

JOSS Publication

lpjmlkit: A toolkit for operating LPJmL and model-specific data processing
Published
November 22, 2024
Volume 9, Issue 103, Page 5447
Authors
Jannes Breier ORCID
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany, Geography Department, Humboldt-Universität zu Berlin, Unter den Linden 6, 10099 Berlin, Germany
Sebastian Ostberg ORCID
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany
Stephen Björn Wirth ORCID
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany, Institute of Crop Science and Plant Breeding, Grass and Forage Science/Organic Agriculture, Kiel University, Hermann-Rodewald-Str. 9, 24118, Kiel, Germany
David Hötten
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany
Sara Minoli ORCID
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany, Climate Focus, Germany
Fabian Stenzel ORCID
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany
Christoph Müller ORCID
Potsdam Institute for Climate Impact Research (PIK), Member of the Leibniz Association, P.O. Box 60 12 03, 14412 Potsdam, Germany
Editor
Marcos Vital ORCID
Tags
LPJmL DGVM biogeochemical modeling model simulations data analysis hpc

Citation (CITATION.cff)

cff-version: 1.2.0
message: If you use this software, please cite it using the metadata from this file.
type: software
title: 'lpjmlkit: Toolkit for Basic LPJmL Handling'
version: 1.7.9
date-released: '2025-04-02'
abstract: A collection of basic functions to facilitate the work with the Dynamic
  Global Vegetation Model (DGVM) Lund-Potsdam-Jena managed Land (LPJmL) hosted at
  the Potsdam Institute for Climate Impact Research (PIK). It provides functions for
  performing LPJmL simulations, as well as reading, processing and writing model-related
  data such as inputs and outputs or configuration files.
authors:
- family-names: Breier
  given-names: Jannes
  email: jannesbr@pik-potsdam.de
  orcid: https://orcid.org/0000-0002-9055-6904
- family-names: Ostberg
  given-names: Sebastian
  email: ostberg@pik-potsdam.de
  orcid: https://orcid.org/0000-0002-2368-7015
- family-names: Wirth
  given-names: Stephen Björn
  email: wirth@pik-potsdam.de
  orcid: https://orcid.org/0000-0003-3090-3318
- family-names: Minoli
  given-names: Sara
  email: minoli@pik-potsdam.de
  orcid: https://orcid.org/0000-0001-7920-3107
- family-names: Stenzel
  given-names: Fabian
  email: stenzel@pik-potsdam.de
  orcid: https://orcid.org/0000-0002-5109-0048
- family-names: Hötten
  given-names: David
  email: davidho@pik-potsdam.de
- family-names: Müller
  given-names: Christoph
  email: cmueller@pik-potsdam.de
  orcid: https://orcid.org/0000-0002-9491-3550
license: AGPL-3.0
repository-code: https://github.com/PIK-LPJmL/lpjmlkit
doi: 10.5281/zenodo.7773134

GitHub Events

Total
  • Watch event: 2
  • Push event: 6
  • Pull request event: 2
  • Fork event: 2
Last Year
  • Watch event: 2
  • Push event: 6
  • Pull request event: 2
  • Fork event: 2

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 157
  • Total Committers: 6
  • Avg Commits per committer: 26.167
  • Development Distribution Score (DDS): 0.408
Past Year
  • Commits: 17
  • Committers: 4
  • Avg Commits per committer: 4.25
  • Development Distribution Score (DDS): 0.529
Top Committers
Name Email Commits
Jannes j****r@p****e 93
Sebastian Ostberg o****g@p****e 28
Stephen Wirth w****h@p****e 22
deepyama d****a@p****e 8
davidho d****o@p****e 5
cmueller c****r@p****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 5
  • Total pull requests: 1
  • Average time to close issues: 2 months
  • Average time to close pull requests: 27 days
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 1.4
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 27 days
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • kanishkan91 (5)
Pull Request Authors
  • kthyng (2)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 35 last-month
  • Total dependent packages: 1
  • Total dependent repositories: 0
  • Total versions: 1
  • Total maintainers: 1
cran.r-project.org: lpjmlkit

Toolkit for Basic LPJmL Handling

  • Versions: 1
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Downloads: 35 Last month
Rankings
Forks count: 21.9%
Stargazers count: 26.2%
Dependent packages count: 29.8%
Dependent repos count: 35.5%
Average: 40.6%
Downloads: 89.6%
Maintainers (1)
Last synced: 6 months ago