Search for species by name or formula, retrieve their thermodynamic properties and parameters, and add proteins to the thermodynamic database.
character, names or formulas of species, or (for
character, physical states of the species
logical, check GHS and EOS parameters for self-consistency?
info is the primary function used for querying the thermodynamic database (
It is often called recursively; first with a character value (or values) for
species indicating the name(s) or formula(s) of the species of interest.
The result of this call is a numeric value, which can be provided as an argument in a second call to
info in order to retrieve a data frame of the thermodynamic properties of the species.
The searches of the indicated
species are made among the names, chemical formulas, and abbreviations (in the abbrv column) in the thermodynamic database.
If the text of the
species is matched the index of that species is returned.
If there are multiple matches for the
state is NULL, the index of first match is returned.
The order of entries in
thermo$obigt is grouped by states in the order aq, cr, gas, liq, so for species in both aqueous and gaseous states the index of the aqueous species is returned, unless
state is set to gas.
Note that entries for minerals using the
berman equations are placed after the dataset derived from Helgeson et al., 1978, so the latter data are used by default in case of duplicates.
This behavior can be changed by setting
thermo$opt$Berman to TRUE; alternatively, individual minerals in the Berman dataset can be identifed by setting
state to cr_Berman.
Names of species including an underscore character are indicative of proteins, e.g. LYSC_CHICK.
If the name of a protein is provided to
info and the composition of the protein can be found using
protein, the thermodyamic properties and parameters of the nonionized protein (calculated using amino acid group additivity) are added to the thermodynamic database.
Included in the return value, as for other species, is the index of the protein in the thermodynamic database or
NA if the protein is not found. Names of proteins and other species can be mixed.
If no exact matches are found,
info searches the database for similar names or formulas using
If any of these are found, the results are summarized on the screen, but the function always returns NA in this case.
With a numeric argument, the rows of
thermo$obigt indicated by
ispecies are returned, after removing any order-of-magnitude scaling factors.
If these species are all aqueous or are all not aqueous, the compounded column names used in
thermo$obigt are replaced with names appropriate for the corresponding equations of state.
A missing value of one of the standard molal Gibbs energy (
G) or enthalpy (
H) of formation from the elements or entropy (
S) is calculated from the other two, if available.
check.it is TRUE, several checks of self consistency among the thermodynamic properties and parameters are performed using
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
## summary of available data info() ## species information # search for something named (or whose formula is) "Fe" si <- info("Fe") # use the number to get the full record info(si) # it is possible to get a range of records info(si:(si+3)) ## dealing with states # default order of preference for names: aq > gas > cr,liq info(c("methane","ethanol","glycinate")) # aq, aq, aq info(c("adenosine","alanine","hydroxyapatite")) # aq, aq, cr # state argument overrides the default info(c("ethanol","adenosine"),state=c("gas","cr")) # formulas default to aqueous species, if available info(c("CH4","CO2","CS2","MgO")) # aq, aq, gas, cr # state argument overrides the default info(c("CH4","CO2","MgO"),"gas") # gas, gas, NA # exceptions to the aqueous default is O2 info("O2") # gas ## partial name or formula searches info("ATP") info("thiol") info("MgC") # add an extra character to refine a search # or to search using terms that have exact matches info("MgC ") info("acetate ") info(" H2O")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.