chemdose_toc {tidywater} | R Documentation |
Determine TOC removal from coagulation
Description
This function applies the Edwards (1997) model to a water created by define_water to determine coagulated
DOC. Coagulated UVA is from U.S. EPA (2001) equation 5-80. Note that the models rely on pH of coagulation. If
only raw water pH is known, utilize chemdose_ph first.
For a single water use chemdose_toc
; for a dataframe use chemdose_toc_chain
.
Use pluck_water to get values from the output water as new dataframe columns.
For most arguments in the _chain
helper
"use_col" default looks for a column of the same name in the dataframe. The argument can be specified directly in the
function instead or an unquoted column name can be provided.
Usage
chemdose_toc(
water,
alum = 0,
ferricchloride = 0,
ferricsulfate = 0,
coeff = "Alum"
)
chemdose_toc_chain(
df,
input_water = "defined_water",
output_water = "coagulated_water",
alum = "use_col",
ferricchloride = "use_col",
ferricsulfate = "use_col",
coeff = "use_col"
)
Arguments
water |
Source water object of class "water" created by |
alum |
Amount of hydrated aluminum sulfate added in mg/L: Al2(SO4)3*14H2O + 6HCO3 -> 2Al(OH)3(am) +3SO4 + 14H2O + 6CO2 |
ferricchloride |
Amount of ferric chloride added in mg/L: FeCl3 + 3HCO3 -> Fe(OH)3(am) + 3Cl + 3CO2 |
ferricsulfate |
Amount of ferric sulfate added in mg/L: Fe2(SO4)3*8.8H2O + 6HCO3 -> 2Fe(OH)3(am) + 3SO4 + 8.8H2O + 6CO2 |
coeff |
String specifying the Edwards coefficients to be used from "Alum", "Ferric", "General Alum", "General Ferric", or "Low DOC" or named vector of coefficients, which must include: k1, k2, x1, x2, x3, b |
df |
a data frame containing a water class column, which has already been computed using define_water_chain. The df may include a column named for the coagulant being dosed, and a column named for the set of coefficients to use. |
input_water |
name of the column of Water class data to be used as the input for this function. Default is "defined_water". |
output_water |
name of the output column storing updated parameters with the class, Water. Default is "coagulated_water". |
Value
chemdose_toc
returns a single water class object with an updated DOC, TOC, and UV254 concentration.
chemdose_toc_chain
returns a data frame containing a water class column with updated DOC, TOC, and UV254 concentrations.
Source
Edwards (1997)
U.S. EPA (2001)
See reference list at: https://github.com/BrownandCaldwell-Public/tidywater/wiki/References
See Also
Examples
water <- define_water(ph = 7, temp = 25, alk = 100, toc = 3.7, doc = 3.5, uv254 = .1)
dosed_water <- chemdose_ph(water, alum = 30) %>%
chemdose_toc(alum = 30, coeff = "Alum")
dosed_water <- chemdose_ph(water, ferricsulfate = 30) %>%
chemdose_toc(ferricsulfate = 30, coeff = "Ferric")
dosed_water <- chemdose_ph(water, alum = 10, h2so4 = 10) %>%
chemdose_toc(alum = 10, coeff = c(
"x1" = 280, "x2" = -73.9, "x3" = 4.96,
"k1" = -0.028, "k2" = 0.23, "b" = 0.068
))
library(dplyr)
example_df <- water_df %>%
define_water_chain() %>%
chemdose_toc_chain(input_water = "defined_water", alum = 30)
example_df <- water_df %>%
define_water_chain() %>%
mutate(FerricDose = seq(1, 12, 1)) %>%
chemdose_toc_chain(ferricchloride = FerricDose, coeff = "Ferric")
# Initialize parallel processing
library(furrr)
plan(multisession, workers = 2) # Remove the workers argument to use all available compute
example_df <- water_df %>%
define_water_chain() %>%
mutate(ferricchloride = seq(1, 12, 1)) %>%
chemdose_toc_chain(coeff = "Ferric")
# Optional: explicitly close multisession processing
plan(sequential)