Learn R Programming

PoolDilutionR

An R package for easy calculation of rates from isotope pool dilution experiments.

To load the package, type library(PoolDilutionR).

Overview

This code calculates gross production and consumption from pool dilution time series data. Target pool size (e.g., methane, nitrate) and isotopic composition (e.g., 13C, 15N) are measured from a closed system over time, the model optimizes production rate (P) and the first order rate constant (k), by minimizing error in the model-predicted total pool size (unit volume or mass), as well as the isotopic signature. The optimization weighs the signal:noise ratio of pool and signatures using measurement precision as well as the magnitude of change over time. The calculations used here are based on von Fischer and Hedin 2002, 10.1029/2001GB001448, with some modifications (manuscript link pending).

Original code was written for data collected on a Picarro CRDS equipped with a SSIM2 unit.

Inputs

Time series data of pool and isotopic composition.

Functions

Prediction of P, gross production rate, and k, first order rate constant for consumption.

`pred <- pdr_predict(time = dat$time_days,
                      m0 = dat$cal12CH4ml[1] + dat$cal13CH4ml[1],
                      n0 = dat$cal13CH4ml[1],
                      P = P,
                      k = result$par["k"],
                      pool = "CH4")`

Optimization of predictions using data quality and deviation in pool size (Nm) and isotopic composition (Nd) over time.

`result <- pdr_optimize(time = dat$time_days,
                      m = dat$cal12CH4ml + dat$cal13CH4ml,
                      n = dat$cal13CH4ml,
                      Nm = dat$Nm,
                      Nd = dat$Nd,
                      pool = "CH4",
                      params = params)`
                 

Output

Optimized rates based on total pool size and atom percent composition.

Copy Link

Version

Install

install.packages('PoolDilutionR')

Monthly Downloads

388

Version

1.0.0

License

MIT + file LICENSE

Maintainer

Kendalynn A. Morris

Last Published

February 15th, 2023

Functions in PoolDilutionR (1.0.0)

pdr_estimate_k0

Estimate initial k from heavy isotope concentration data
frac_k_default

Retrieve default k fractionation value for a pool
Morris2023

Example time series data from a methane dilution pool experiment.
pdr_optimize_df

Optimize production and consumption parameters for pool dilution data
pdr_cost

Cost function between observed and predicted pools
frac_P_default

Retrieve default P fractionation value for a pool
pdr_optimize

Optimize production and consumption parameters for pool dilution data
pdr_predict

Predict total pool, heavy isotope pool, and atom percent
pdr_fractionation

P and k fractionation values