7.2.emissions.code: Emission calculations

7.2.emissions.calculationsR Documentation

Emission calculations

Description

Functions associated with emissions calculations.

Usage


calcEm(conc = NULL, calc.method = calcEm_HoribaPitot, 
          analyte = NULL, ..., data = NULL, fun.name = "calcEm", 
          force = FALSE, this.call = NULL)

calcEm_HoribaPitot(conc = NULL, time = local.time, exflow = exh.flow.rate, 
          extemp = exh.temp, express = exh.press, analyte = NULL, 
          delay = NULL, mm = NULL, ..., force = force, data = NULL, 
          fun.name = "calcEm_HoribaPitot", this.call = NULL)

Arguments

conc

(Data series, typically pems.element vector) Analyte/species concentrations, the main input for calculating emissions. If conc is a concentration data series from a standard pems source it should be named conc.[analyte] and pems.utils will manage it accordingly. See below for further details.

time, exflow, extemp, express

(Data series, typically pems.element vectors) Other inputs used when calculating emissions. The combination depending on the calcuation method used (and set by calc.method).

calc.method

(Required function) The function to use to calculate emissions. (Default calcEm_HoribaPitot). See below for further details.

analyte

(Optional character vector) The analyte emissions are to be calculated for. If supplied, this is used as a reference when assigning molecule weight and other analyte properties if these are not provided as part of calculate call. If not supplied, pems.utils attempts to recover these from available sources, e.g. data if supplied as part of the calculation call or package references such as ref.chem.

...

(Optional) Other arguments, currently passed on to function provided as calc.method (default calcEm_HoribaPitot) and appropriate pems.utils functions.

data

(Optional pems object) The data source for inputs.

fun.name, this.call, force

(Various pems management functions) fun.name (character vector) the name of the parent function, to be used in error messaging. this.call the initial call (can generally be ignored). force (Logical) Should calcEm and calc.method ignore any error checking, e.g. units assignments, and do calculations anyway?

delay, mm

(Optional numerics) Emissions calculation constants. delay is the time delay between conc measurements and other timeseries. mm is the molecular mass of the analyte. If supplied, these in-call values supercede any preset in e.g. package look-up.tables.

Details

calcEm... functions calculate emissions.

calcEm is a wrapper function which is intended to provide a conventient front for emissions calculation methods. It accepts an input codeconc which it checks and passes on to calc.method, along with other supplied arguments.

calcEm_HoribaPitot calculates emissions using methods described in the Horiba OBS Operators Manual. In addition to conc, the function requires the time, and exhaust flow data series (measured by the OBS Pitot flow meter). By default, the function assumes that these are default names that are generated for these when standard OBS files are imported into R using the pems.utils import function importOBS2PEMS. See References and Note below.

Value

calcEm_HoribaPitot (and calcEm by default) use Horiba Manual methods to calculate emissions (in g/s).

Note

calcEm... constants can be set/modified in the calculation call, e.g. calcEm(..., delay = [new.value]). If not supplied, these are first checked for in the associated pems object (if supplied), or set to default values. See References. If analyte-related constants are to be added to a pems object, these should be named in the format '[type].[analyte]', e.g. delay.co for the delay constant to be used for the analyte CO.

Unit handling in pems.utils is via checkUnits, getUnits, setUnits and convertUnits. See common.calculations for details.

Author(s)

Karl Ropkins

References

calcEm_HoribaPitot uses methods described in:

The Horiba Operators Manual.

See Also

See common.calculations.

Examples


###########
##example 1 
###########

#basic usage

em.co <- calcEm(conc.co, data = pems.1)

#where the returned object, em.co, is a pems.element


pems.utils documentation built on March 31, 2023, 3:01 p.m.