Learn R Programming

CHNOSZ (version 0.9-7)

equil: Calculate Logarithms of Activity of Species

Description

Calculate equilibrium chemical activities of species taking as input the affinities of formation of the species at unit activity.

Usage

equil.boltz(Astar, nbalance, thisloga)
  equil.react(Astar, av, nbalance, thisloga)

Arguments

Astar
numeric, affinities of formation reactions excluding species contribution.
nbalance
numeric, vector of balance coefficients.
thisloga
numeric, logarithm of total activity of balanced thing.
av
numeric, values of affinities of formation reactions.

Value

  • A numeric value (possibly an array) with dimensions equal to those of one of the list elements of Astar.

Details

The chemical activities of species shown by diagram are calculated using either the equil.boltz or equil.react functions. The former is used if residue in diagram is set to TRUE, and the latter if residue is set to FALSE.

The input values are in a list, Astar, all elements of the list having the same dimensions. Each element contains the chemical affinities of the formation reactions of one of the species of interest at unit activity. The metastable equilibrium activities calculated using either equil.* function satisfy the constraints that 1) the resulting chemical affinities of the formation reactions of the species are all equal and 2) the total activity of the conserved component (thisloga) is unchanged.

In equil.react (the algorithm described in Dick, 2008 and the only one available prior to CHNOSZ-0.8), the calculations of relative abundances of species use the activities in the affinity output as initial guesses, and attempt to solve a system of equations that represent the two constraints stated above. So, if you supply a value for thisloga that is much different from that of the initial guess you may end up with errors from uniroot such as "f() values at end points not of opposite sign".

In equil.boltz (algorithm available beginning with CHNOSZ-0.8), the chemical activities of species are calculated using the Boltzmann distribution. This calculation is faster than the equation-solving approach used above, but is limited to systems where the balance coefficients are all unity. Therefore, this function is only called by diagram for systems of proteins when residue set to TRUE.