Skip to main content

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.

Project description

GitHub Repo stars Issues License

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

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
Cinputs=2.7   #Annual C inputs to soil in Mg/ha/yr


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

df = rothC.compute()

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

Structure of the RothC model

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

FastAPI

Equations

$$ \begin{aligned} & \frac{d \boldsymbol{C}}{\mathrm{d} t}=I\left(\begin{array}{c} \gamma \ 1-\gamma \ 0 \ 0 \ 0 \end{array}\right) +\left(\begin{array}{ccccc} -k_1 & 0 & 0 & 0 & 0 \ 0 & -k_2 & 0 & 0 & 0 \ a_{3,1} & a_{3,2} & -k_3+a_{3,3} & a_{3,4} & 0 \ a_{4,1} & a_{4,2} & a_{4,3} & -k_4+a_{4,4} & 0 \ 0 & 0 & 0 & 0 & 0 \end{array}\right)\left(\begin{array}{l} C_1 \ C_2 \ C_3 \ C_4 \ C_5 \end{array}\right) \ & \end{aligned} $$

Optional Dependencies

Matplotlib

License

This project is licensed under the terms of the CC0 1.0 Universal license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyRothC-0.0.1.tar.gz (164.0 kB view details)

Uploaded Source

Built Distribution

pyRothC-0.0.1-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file pyRothC-0.0.1.tar.gz.

File metadata

  • Download URL: pyRothC-0.0.1.tar.gz
  • Upload date:
  • Size: 164.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.9

File hashes

Hashes for pyRothC-0.0.1.tar.gz
Algorithm Hash digest
SHA256 91307f8990dda5d7e65bef12817fc490c74dfe9ed203896cffd95c6b132cde5d
MD5 d7a47b2531fb1e9b2f7e7c7111c7e5a9
BLAKE2b-256 9d58b2bbe67281f83e8caa2ab101f9fb792b3e3d4bdc774f40a3d0d880b3d5e9

See more details on using hashes here.

Provenance

File details

Details for the file pyRothC-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pyRothC-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.9

File hashes

Hashes for pyRothC-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0e5f360162f7a3dc065dabf18a59893e46b2925312ea32ed97956cf5639ba126
MD5 760a2d86c8f858570a9d2a55064f9fac
BLAKE2b-256 03803cb53bdb1ca0bd8aed8d769829d92bbb1e1d635e04064db9797bf829546d

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page