mass2vol
calculates biogas volume based on measured reactor mass loss.
mass2vol(mass, xCH4, xCO2 = 1 - xCH4 - xN2, xN2 = 0, 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)
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.
standardised volume of biogas in mL
standardised volume of methane in mL
standardised volume of carbon dioxyde in mL
All volumes are standardised using pres.std
and temp.std
arguments (see stdVol
).
reactor mass loss in g. A numeric vector.
biogas mole fraction of methane, considering CH4, CO2, and N2 content. A numeric vector.
biogas mole fraction of carbon dioxide, considering CH4, CO2, and N2 content. A numeric vector.
biogas mole fraction of dinitrogen, considering CH4, CO2, and N2 content. A numeric vector.
the temperature of biogas as it exited the reactor. A length-one numeric vector.
Degrees Celcius by default (see unit.temp
argument).
the pressure of biogas as it exited the reactor. A length-one numeric vector.
Atmospheres (atm) by default (see unit.pres
argument).
standard temperature for presentation of biogas and methane results.
Default value is 0 degrees C.
Argument is passed to stdVol
.
Length one numeric vector.
standard pressure for presentation of biogas and methane results.
Default value is 1.0 atm.
Argument is passed to stdVol
.
Length one numeric vector.
temperature units for temp
and temp.std
arguments.
Default is "C"
.
Argument is passed to stdVol
.
pressure units for pres
and pres.std
arguments.
Default is "atm"
.
Argument is passed to stdVol
.
what should be returned?
Default is "CH4"
, which returns methane volume in mL.
"all"
returns biogas, methane, and carbon dioxide volumes.
(optional) reactor headspace volume in mL. Used to correct for effect of initial reactor headspace on mass loss. A numeric vector.
(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.
(optional) initial headspace temperature in unit.temp units. Used to correct for effect of initial reactor headspace on mass loss.
should a message with the standard conditions be displayed? Default is TRUE.
Sasha D. Hafner and Charlotte Rennuit
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
.
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.
vol2mass
,
stdVol
,
cumBg
,
options
# 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
Run the code above in your browser using DataLab