Skip to content

AeroViz.voc

Ozone formation potential (OFP), secondary organic aerosol potential (SOAP) and OH reactivity (LOH) from VOC concentrations. Worked example: VOC Analysis. Theory: OFP / SOAP. Species table with MIR / SOAP factors: VOC data.

Input

# columns are species names, validated against support_voc.json (unknown names raise)
df_voc.columns = ['Benzene', 'Toluene', 'Ethylbenzene', 'm,p-Xylene', ...]
df_voc.index   = DatetimeIndex
# units: ppb or µg/m³

There is no VOC reader — read the export with pandas (see the guide) and call voc_potentials directly.

Output

voc_potentials returns a dict of four time-indexed DataFrames. Each carries one column per species, per-class subtotals (alkane_total, aromatic_total, …) and a grand Total:

Key Content
Conc mass concentration (µg/m³)
OFP ozone formation potential (µg O₃/m³), from MIR
SOAP secondary organic aerosol potential
LOH OH reactivity (loss rate)

Functions

AeroViz.voc

Top-level functions for VOC analysis.

These are convenience wrappers — see AeroViz.dataProcess.VOC.* for full algorithm details. Each function here is a thin re-export of an underlying implementation, with the DataProcess / Writer boilerplate (path_out, excel, csv, on-disk side effects) stripped away so results are returned directly.

Example

from AeroViz.voc import voc_potentials result = voc_potentials(df_voc)

Attributes

__all__ module-attribute

__all__ = ['voc_potentials']

Functions:

voc_potentials

voc_potentials(df_voc: DataFrame) -> dict

Compute VOC chemical-reactivity potentials and concentration summaries.

For each VOC species in df_voc (ppb), this function uses the bundled support_voc.json parameter table (MW, MIR, SOAP, KOH) to compute:

  • Mass concentrations (μg/m³)
  • Ozone Formation Potential (OFP, μg O₃/m³ via MIR × ppb)
  • Secondary Organic Aerosol Potential (SOAP-scaled)
  • OH-reactivity (KOH × concentration)

Species are also aggregated into chemistry classes (alkane, alkene, aromatic, alkyne, OVOC, ClVOC).

Parameters:

Name Type Description Default
df_voc DataFrame

VOC concentrations in ppb. Column names must match the supported species in AeroViz/dataProcess/VOC/support_voc.json (see AeroViz/docs/instruments/voc.md).

required

Returns:

Type Description
dict

Per-species and per-class summaries of concentration, OFP, SOAP, and OH-reactivity.

Raises:

Type Description
KeyError

If any column in df_voc is not a supported VOC species.