ratio2conc/std ratio2conc/std#

Description#

ratio2conc transform: convert isotopic ratios back to isotopologue concentrations.

Given a set of per-mil δ-value signatures and a total species concentration, reconstructs the individual isotopologue concentrations using:

\[[iso_i] = C_{tot} \cdot \prod_j \frac{a_j^{\epsilon_{ij}}}{1 + a_j}\]

where \(a_j = (1 + \delta_j/1000) \cdot R_{std,j}\) and \(\epsilon_{ij}\) is determined by a binary-tree assignment of isotopologues to δ-value signatures.

Supports arbitrary numbers of isotopologues, an optional mass-based unit correction, and ensemble (batch sampling) runs.

The forward saves the signature and total concentration to disk (chain/ratio2conc/) for use by the adjoint.

YAML arguments#

The following arguments are used to configure the plugin. pyCIF will return an exception at the initialization if mandatory arguments are not specified, or if any argument does not fit accepted values or type:

Mandatory arguments#

component : list, mandatory

Two-element list [component_in, component_out]: the component of the input δ-signature/total tracers, and the component assigned to the reconstructed isotopologue outputs.

parameters_in : dict, mandatory

Input tracers, given as names: the list of δ-value signature names (one per isotopic ratio), followed by the name of the total-concentration tracer.

parameters_out : dict, mandatory

Output isotopologues, with:

  • names: list of the 2**N reconstructed isotopologue names, in binary-tree order (isotopologue k takes the high branch of signature j when bit j of k is set).

  • iso_mass: molar mass of each output isotopologue, in the same order as names. Only used when unit is mass.

  • spec_mass: molar mass of the total species. Only used when unit is mass.

  • one entry per signature name (as listed in parameters_in), each holding a standard key: the isotopic standard ratio \(R_{std}\) used to compute \(a = (1 + \delta/1000) \cdot R_{std}\).

unit : “mass” or “volume”, mandatory

Unit convention of the total/isotopologue concentrations.

  • “mass”: Scales each reconstructed isotopologue by iso_mass[i] / spec_mass.

  • “volume”: No mass correction; concentrations are treated as mole/volume mixing ratios.

Optional arguments#

parameter : str, optional

Parameter name on which the transform works on

orig_parameter_plg : Plugin, optional

Plugin object on which the transform works on

orig_component_plg : Plugin, optional

Corresponding component object on which the transform works on

successor : str, optional

Name of the successor transform

precursor : str, optional

Name of the precursor transform

Requirements#

The current plugin requires the present plugins to run properly:

Requirement name

Requirement type

Explicit definition

Any valid

Default name

Default version

model

Model

False

True

None

None

YAML template#

Please find below a template for a YAML configuration:

 1transform:
 2  plugin:
 3    name: ratio2conc
 4    version: std
 5    type: transform
 6
 7  # Mandatory arguments
 8  component: XXXXX  # list
 9  parameters_in: XXXXX  # dict
10  parameters_out: XXXXX  # dict
11  unit: XXXXX  # mass|volume
12
13  # Optional arguments
14  parameter: XXXXX  # str
15  orig_parameter_plg: XXXXX  # Plugin
16  orig_component_plg: XXXXX  # Plugin
17  successor: XXXXX  # str
18  precursor: XXXXX  # str