Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ For more information about this file see also [Keep a Changelog](http://keepacha

- Package `PEcAn.uncertainty` has changed licensing. With approval from all its contributors, we now provide it under a BSD 3-clause license rather than the previously used NCSA Open Source license.
- Ensemble and sensitivity analyses now assign an ensemble ID if one is not specified in the XML, even when running with no DB (#3654).
- Improved PEcAn.SIPNET documentation: enhanced README with comprehensive model description, updated book pages with proper metadata and current installation instructions, and connected all SIPNET documentation resources (#3703, #3705).
- `download.ERA5_cds` now uses the R package ecmwfr (replacing python dependency of cdsapi via reticulate), enabling direct NetCDF downloads; and made flexible for both reanalysis and ensemble data product.
- `extract_soil_gssurgo` now supports spatial sampling using a grid of user-defined size and spacing. And supports ensemble simulation of soil organic carbon (SOC) stocks, using area-weighted aggregation
- The ERA5 NC extraction function can now handle multi-site instead of one
Expand Down
58 changes: 16 additions & 42 deletions book_source/03_topical_pages/05_models/sipnet.Rmd
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
## SiPNET {#models-sipnet}
## SIPNET {#models-sipnet}

| Model Information ||
| -- | -- |
| Home Page | |
| Source Code | |
| License | |
| Authors | |
| Home Page | https://pecanproject.github.io/sipnet |
| Source Code | https://github.com/PecanProject/sipnet |
| License | BSD 3-Clause |
| Authors | Michael Longfritz, William Sacks, David Moore, John M. Zobitz, Bobby H. Braswell, David S. Schimel, Rob Kooper, Michael C. Dietze, Istem Fer, Chris Black, David S. LeBauer|
| PEcAn Integration | Michael Dietze, Rob Kooper |

**Introduction**

Introduction about model
SIPNET (Simplified Photosynthesis and Evapotranspiration Model) is a lightweight ecosystem model designed to simulate complex environmental dynamics. It tracks carbon, water, nitrogen, and trace greenhouse-gas (N₂O, CH₄) interactions, supporting applications from forest carbon inventories to managed croplands.

Key features include simulation of photosynthesis, respiration, allocation, soil water, soil temperature, and nitrogen cycling on sub-daily time steps. The model tracks vegetation, litter, soil, and mineral-N pools, and includes event-based management for agricultural processes.

For model documentation including model structure, user guide, and developer guide, see the [SIPNET documentation](https://pecanproject.github.io/sipnet). For PEcAn.SIPNET documentation, see the [package website](https://pecanproject.github.io/package-documentation/develop/PEcAn.SIPNET/).

**PEcAn configuration file additions**

Expand All @@ -30,39 +34,9 @@ SIPNET is configured using 3 files which are placed in the run folder, as well a

**Installation notes**

This section contains notes on how to compile the model. The notes for the VM might work on other machines or configurations as well.

SIPNET version unk:

```
if [ ! -e ${HOME}/sipnet_unk ]; then
cd
curl -o sipnet_unk.tar.gz http://isda.ncsa.illinois.edu/~kooper/PEcAn/models/sipnet_unk.tar.gz
tar zxf sipnet_unk.tar.gz
rm sipnet_unk.tar.gz
fi
cd ${HOME}/sipnet_unk/
make clean
make
sudo cp sipnet /usr/local/bin/sipnet.runk
make clean
```

SIPNET version 136:

```
if [ ! -e ${HOME}/sipnet_r136 ]; then
cd
curl -o sipnet_r136.tar.gz http://isda.ncsa.illinois.edu/~kooper/EBI/sipnet_r136.tar.gz
tar zxf sipnet_r136.tar.gz
rm sipnet_r136.tar.gz
sed -i 's#$(LD) $(LIBLINKS) \(.*\)#$(LD) \1 $(LIBLINKS)#' ${HOME}/sipnet_r136/Makefile
fi
cd ${HOME}/sipnet_r136/
make clean
make
sudo cp sipnet /usr/local/bin/sipnet.r136
make clean
```

**VM**
For current SIPNET installation instructions, please see:

- [Installing SIPNET in the PEcAn documentation](https://pecanproject.github.io/pecan-documentation/develop/osinstall.html#sipnet-inst-sipnet)
- [SIPNET Installation Guide](https://pecanproject.github.io/sipnet/install.html)

The recommended approach is to install SIPNET from the official [SIPNET repository](https://github.com/PecanProject/sipnet)
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@
#### SIPNET {inst-sipnet}
#### SIPNET {#inst-sipnet}

You can download a compiled binary from the [SIPNET releases page](https://github.com/PecanProject/sipnet/releases).

You can also install SIPNET is from the repository:


```bash
cd
curl -o sipnet_unk.tar.gz http://isda.ncsa.illinois.edu/~kooper/EBI/sipnet_unk.tar.gz
tar zxf sipnet_unk.tar.gz
rm sipnet_unk.tar.gz
# Clone the SIPNET repository
git clone https://github.com/PecanProject/sipnet.git
cd sipnet

cd sipnet_unk
# Build SIPNET
make
sudo cp sipnet /usr/local/bin/sipnet.runk

# Install the executable (optional - adjust path as needed)
sudo cp sipnet /usr/local/bin/sipnet
```

##### SIPNET testrun
For detailed installation instructions, build options, and dependencies, please see the [SIPNET Installation Guide](https://pecanproject.github.io/sipnet/install.html).

```bash
cd
curl -o testrun.sipnet.tar.gz http://isda.ncsa.illinois.edu/~kooper/EBI/testrun.sipnet.tar.gz
tar zxf testrun.sipnet.tar.gz
rm testrun.sipnet.tar.gz
cd testrun.sipnet
sipnet.runk
```
**Note:** Previous installation methods using tarballs (`sipnet_unk.tar.gz`, `sipnet_r136.tar.gz`) are deprecated. Please use the repository method above for the most up-to-date version. All previous tagged releases are available as source code and compiled binaries from the SIPNET releases page.
7 changes: 7 additions & 0 deletions models/sipnet/NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@

* `write.events.SIPNET()` to generate SIPNET `events.in` files from a `events.json` file.

## Documentation

* Updated Package Documentation #3705
* Improved README with comprehensive description of SIPNET model and its integration with PEcAn
* Updated PEcAn book SIPNET page with model metadata and proper documentation links
* Replaced outdated installation instructions with current methods pointing to official SIPNET repository

# PEcAn.SIPNET 1.9.1

## Changed
Expand Down
63 changes: 50 additions & 13 deletions models/sipnet/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,45 @@

<!-- badges: start -->

[![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental)
[![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental)
[![PEcAn.SIPNET status badge](https://pecanproject.r-universe.dev/badges/PEcAn.SIPNET)](https://pecanproject.r-universe.dev/PEcAn.SIPNET)

<!-- badges: end -->

PEcAn Functions Used for Ecological Forecasts and Reanalysis
## What is SIPNET?

The SIPNET v1 (**S**implified PnET (**P**hotosynthesis** and **E**vapo**t**ranspiration)) model is a lightweight ecosystem model designed to simulate ecosystem carbon and water dynamics.

SIPNET v2 added a nitrogen cycle, trace greenhouse-gas (N₂O, CH₄) fluxes, and support for cropland and ecosystem management. As of PEcAn v1.10, support for SIPNET v2 is partially implemented and under active development.

**Key Features:**
- Simulates photosynthesis, respiration, allocation, soil water, soil temperature, and nitrogen cycling
- Operates on sub-daily time steps
- Tracks vegetation, litter, soil, and mineral-N pools
- Event-based management for agricultural processes (planting, harvest, tillage, irrigation)
- Clean, modular, BSD-licensed codebase suitable for research and production

For comprehensive SIPNET documentation, see the [SIPNET project website](https://pecanproject.github.io/sipnet).

## Using SIPNET via PEcAn

PEcAn.SIPNET is the PEcAn interface package that enables SIPNET integration with the PEcAn workflow system. This package:
- Converts PEcAn-standard inputs to SIPNET format
- Manages SIPNET model configuration and execution
- Converts SIPNET outputs to netCDF in PEcAn standard format
- Enables data assimilation, sensitivity analysis, and ensemble runs
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Enables data assimilation, sensitivity analysis, and ensemble runs
- Enables data assimilation, sensitivity analysis, and ensemble runs within the PEcAn modeling framework


**Getting Started:**
- [Demo 1: Basic PEcAn Run](https://pecanproject.github.io/pecan-documentation/develop/basic-users-guide.html)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AritraDey-Dev what is the correct URL for the new Demo 1?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [Demo 1: Basic PEcAn Run](https://pecanproject.github.io/pecan-documentation/develop/basic-users-guide.html)
- [Demo 1: Basic PEcAn Run](https://pecanproject.github.io/pecan-documentation/develop/rendered-demo-notebooks/run_pecan.html)

- [SIPNET in the PEcAn Book](https://pecanproject.github.io/pecan-documentation/develop/models-sipnet.html)

## Installation

You can install the development version of `PEcAn.SIPNET` from r-universe like so:
### Install PEcAn.SIPNET Package

You can install the development version of `PEcAn.SIPNET` from r-universe:

``` r
```r
# Enable repository from pecanproject
options(repos = c(
pecanproject = 'https://pecanproject.r-universe.dev',
Expand All @@ -22,18 +49,28 @@ options(repos = c(
install.packages('PEcAn.SIPNET')
```

Or you can install directly from GitHub with the remotes package like so:
Or install directly from GitHub:

``` r
```r
library(remotes)
install_github('pecanproject/pecan', subdir = "models/sipnet")
install_github('pecanproject/pecan', subdir = "models/sipnet")
```

## Example
### Install SIPNET Model

This is a basic example which shows you how to solve a common problem:
To use PEcAn.SIPNET, you also need the SIPNET model executable installed on your system. For installation instructions, see:
- [Installing SIPNET](https://pecanproject.github.io/pecan-documentation/develop/install-models.html#inst-sipnet)
- [SIPNET Installation Guide](https://pecanproject.github.io/sipnet/install.html)

``` r
library(PEcAn.SIPNET)
## basic example code
```
## Documentation

- **PEcAn.SIPNET Package Docs:** https://pecanproject.github.io/package-documentation/develop/PEcAn.SIPNET/
- **SIPNET Model Docs:** https://pecanproject.github.io/sipnet
- **PEcAn Book - SIPNET Chapter:** https://pecanproject.github.io/pecan-documentation/develop/models-sipnet.html
- **Source Code:** https://github.com/PecanProject/pecan/tree/develop/models/sipnet

## Learn More

- **PEcAn Project:** https://pecanproject.github.io
- **Tutorials:** https://pecanproject.github.io/tutorials.html
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Tutorials:** https://pecanproject.github.io/tutorials.html
- **Tutorials:** https://pecanproject.github.io/tutorials/

- **SIPNET Repository:** https://github.com/PecanProject/sipnet