pyRothC 0.0.4

Last updated:

0 purchases

pyRothC 0.0.4 Image
pyRothC 0.0.4 Images
Add to Cart

Description:

pyRothC 0.0.4

pyRothC










Python version of The Rothamsted carbon model (RothC) 26.3.


Documentation: Rothamsted RothC Model
Source Code: https://github.com/mishagrol/pyRothC

pyRothc is a Python version of The Rothamsted carbon model (RothC) 26.3.
RothC is a model for the turnover of organic carbon in non-waterlogged topsoil that allows for the effects of soil type, temperature, soil moisture and plant cover on the turnover process.
Inspired by SoilR version SoilR RothC
Requirements
Python 3.7+
SciPy
NumPy
Pandas
Installation

$ pip install pyRothC


Example
Below is an example of how the RothC class should be used. It needs
matplotlib library to be installed in
order to draw the graphs.
import numpy as np
import matplotlib.pyplot as plt

from pyRothC.RothC import RothC


Temp=np.array([-0.4, 0.3, 4.2, 8.3, 13.0, 15.9,18.0,
17.5, 13.4, 8.7, 3.9, 0.6])
Precip=np.array([49, 39, 44, 41, 61, 58,
71, 58, 51,48, 50, 58])
Evp=np.array([12, 18, 35, 58, 82, 90,
97, 84, 54, 31,14, 10])

soil_thick=25 #Soil thickness (organic layer topsoil), in cm
SOC=69.7 #Soil organic carbon in Mg/ha
clay=48 #Percent clay
input_carbon=2.7 #Annual C inputs to soil in Mg/ha/yr

IOM=0.049*SOC**(1.139) # Falloon et al. (1998)

rothC = RothC(temperature=Temp,
precip=Precip,
evaporation=Evp,
clay = 48,
input_carbon=input_carbon,
pE=1.0,
C0=np.array([0, 0, 0, 0, IOM]))

df = rothC.compute()
df.index = rothC.t
fig, ax = plt.subplots(1,1,figsize=(6,4))
df.plot(ax=ax)
ax.set_ylabel('C stocks (Mg/ha)')
ax.set_ylabel('Years')
plt.show()

Testing
If you need to run the test suite, first install the package in "editable" mode with the test
optional dependencies:
git clone [email protected]:mishagrol/pyRothC.git
cd pyRothC
pip install -e ".[test]"

Now you can run the tests by simply running this command:
pytest tests

Structure of the RothC model
Credits: Theoretical Ecosystem Ecology group of the Max Planck Institute for Biogeochemistry



Equations
dCdt=I(γ 1−γ 0 0 0)+(−k10000 0−k2000 a3,1a3,2−k3+a3,3a3,40 a4,1a4,2a4,3−k4+a4,40 00000)(C1 C2 C3 C4 C5) 
Optional Dependencies
Matplotlib
License
This project is licensed under the terms of the CC0 1.0 Universal license.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.