mass2vol: Calculate Biogas Production Gravimetrically

View source: R/mass2vol.R

mass2volR Documentation

Calculate Biogas Production Gravimetrically

Description

mass2vol calculates biogas volume based on measured reactor mass loss.

Usage

mass2vol(mass, xCH4, temp, pres, 
  temp.std = getOption('temp.std', as.numeric(NA)), 
  pres.std = getOption('pres.std', as.numeric(NA)), 
  unit.temp = getOption('unit.temp', 'C'), 
  unit.pres = getOption('unit.pres', 'atm'), 
  value = "CH4", headspace = NULL, headcomp = 'N2', 
  temp.init = NULL, std.message = TRUE)

Arguments

mass

reactor mass loss in g. A numeric vector.

xCH4

biogas mole fraction of methane. Must be normalised so xCH4 + xCO2 = 1.0. A numeric vector.

temp

the temperature of biogas as it exited the reactor. A length-one numeric vector. Degrees Celcius by default (see unit.temp argument).

pres

the pressure of biogas as it exited the reactor. A length-one numeric vector. Atmospheres (atm) by default (see unit.pres argument).

temp.std

standard temperature for presentation of biogas and methane results. Default value is 0 degrees C. Argument is passed to stdVol. Length one numeric vector.

pres.std

standard pressure for presentation of biogas and methane results. Default value is 1.0 atm. Argument is passed to stdVol. Length one numeric vector.

unit.temp

temperature units for temp and temp.std arguments. Default is "C". Argument is passed to stdVol.

unit.pres

pressure units for pres and pres.std arguments. Default is "atm". Argument is passed to stdVol.

value

what should be returned? Default is "CH4", which returns methane volume in mL. "all" returns biogas, methane, and carbon dioxide volumes.

headspace

(optional) reactor headspace volume in mL. Used to correct for effect of initial reactor headspace on mass loss. A numeric vector.

headcomp

(optional) composition of the initial reactor headspace. Only required if headspace argument is specified. Used to correct for effect of initial reactor headspace on mass loss. Currently, the only option is "N2" for dinitrogen gas. Use of any other value will be ignored with a warning.

temp.init

(optional) initial headspace temperature in unit.temp units. Used to correct for effect of initial reactor headspace on mass loss.

std.message

should a message with the standard conditions be displayed? Default is TRUE.

Details

This function uses the method described in Hafner et al. (2015) to calculate biogas production from reactor mass loss. It is essential that the only change in reactor mass is due to biogas removal! Users are advised to read the original reference before applying the method. This function is vectorized. Instead of using this function directly when working with multiple measurements on multiple reactors, use the cumBg function (which can call up mass2vol).

Standard values and units of temperature and pressure can be globally set using the function options.

Value

volume of methane in mL as a numeric vector (if value = "CH4") or a matrix with columns for biogas, methane, and carbon dioxide volumes in mL.

vBg

standardised volume of biogas in mL

vCH4

standardised volume of methane in mL

vCH4

standardised volume of carbon dioxyde in mL

All volumes are standardised using pres.std and temp.std arguments (see stdVol).

Author(s)

Sasha D. Hafner and Charlotte Rennuit

References

Hafner, S.D., Rennuit, C., Triolo, J.M., Richards, B.K. 2015. Validation of a simple gravimetric method for measuring biogas production in laboratory experiments. Biomass and Bioenergy 83, 297-301.

See Also

vol2mass, stdVol, cumBg, options

Examples

  # Volume of methane if measured mass loss was 3.1 g
  mass2vol(3.1, xCH4 = 0.65, temp = 35, pres = 1)

  # More details
  mass2vol(3.1, xCH4 = 0.65, temp = 35, pres = 1, value = "all")
  
  # Vectorized
  data("massw")
  massw$massloss <- massw$start - massw$end
  massw$vCH4 <- mass2vol(massw$massloss, xCH4 = 0.65, temp = 35, 
                         pres = 1)
  massw
  

sashahafner/biogas documentation built on March 24, 2024, 1:22 p.m.