phr_surface: Specify a surface

Description Usage Arguments See Also Examples

View source: R/phreeqc_input_helpers.R

Description

Surface specification happens in three places: phr_surface_master_species(), which defines the binding site names, phr_surface_species(), which defines the log_k values for the binding of solution species to the site, and this function, which defines the number and density of binding sites (defined in phr_surface_master_species()) that exist in the solution specified by the 'equilibrate' parameter. It is worth noting that "hydrous ferric oxide" (Hfo) are included in the main (and several other) databases, including log_k values for many metals with this surface. These are split into the strong (Hfo_s) and weak (Hfo_w) sites.

Usage

1
2
3
4
5
phr_surface(.number = 1, .name = NA, ..., equilibrate = 1,
  sites_units = "absolute")

phr_surface_item(sites, specific_area_per_gram = NULL, grams = NULL,
  diffusion_coefficient = NULL)

Arguments

.number, .name

Identifiers for this surface

...

One or more phr_surface_item() objects or key/value pairs added to the block. Surface items should be in the form binding_site_name = phr_surface_item(...) (where binding_site_name is defined in phr_surface_master_species()).

equilibrate

A phr_solution() number with which this surface should equilibrate. Defaults to 1.

sites_units

Either absolute (sites speciried in moles) or density (sites specified in sites/ng).

sites

The number of sites in moles (if sites_units is "absolute"), or the density of sites in sites / square nanometer (if sites_units is "density").

specific_area_per_gram

Area of the surface per gram, in square meters / gram

grams

The number of grams, for specific area calculation

diffusion_coefficient

The diffusion coefficient in square meters / second, which applies in a TRANSPORT calculation to make the surface transport in space (like a colloid rather than an immobile surface).

See Also

https://wwwbrr.cr.usgs.gov/projects/GWC_coupled/phreeqc/phreeqc3-html/phreeqc3-45.htm

A phr_input_section()

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# specify a hydrous ferric oxide surface and see if there is any sorption by Zn
# similar to example 8 in the documentation
phr_input(
  phr_solution(pH = 8, Zn = 0.1),
  phr_surface(
    Hfo_sOH = phr_surface_item(sites = 5e-6, specific_area_per_gram = 600, grams = 0.09),
    # no need to specify mass of this binding site, because it shares a surface
    # with Hfo
    Hfo_wOH = phr_surface_item(sites = 2e-4),
  ),
  phr_selected_output(molalities = c("Zn+2", "Hfo_sOZn+", "Hfo_wOZn+"))
) %>%
  phr_run()

paleolimbot/tidyphreeqc documentation built on Aug. 29, 2019, 11:14 p.m.