Equilibrium constant (in the form log10(Keq)) calculated using a least-squares fit to the data provided (typically taken from a geochemical database). More...
#include <EquilibriumConstantAux.h>
Public Member Functions | |
EquilibriumConstantAux (const InputParameters ¶meters) | |
Protected Member Functions | |
virtual Real | computeValue () override |
Protected Attributes | |
const VariableValue & | _temperature |
Temperature (in K) More... | |
const std::vector< Real > & | _temperature_points |
Temperature points in data set (in K) More... | |
const std::vector< Real > & | _logk_points |
log(Keq) values at each temperature point More... | |
std::unique_ptr< EquilibriumConstantFit > | _logk |
Least-squares fit to data. More... | |
std::unique_ptr< PolynomialFit > | _linear_logk |
Linear least-squares fit. More... | |
Equilibrium constant (in the form log10(Keq)) calculated using a least-squares fit to the data provided (typically taken from a geochemical database).
Fitted function is a Maier-Kelly type function for the equilibrium constant
log10(Keq)= a_0 ln(T) + a_1 + a_2 T + a_3 / T + a_4 / T^2
where T is the temperature in Kelvin.
Note: At least 5 data values must be provided in order to use the Maier-Kelley fit. In some cases, insufficient data may be available. In these cases, the following fits are used instead:
If only one data point is available, log10(Keq) is set to a constant equal to the given point.
If between 2 and 4 data points are provided, a linear least squares fit is used.
Definition at line 41 of file EquilibriumConstantAux.h.
EquilibriumConstantAux::EquilibriumConstantAux | ( | const InputParameters & | parameters | ) |
Definition at line 30 of file EquilibriumConstantAux.C.
|
overrideprotectedvirtual |
Definition at line 55 of file EquilibriumConstantAux.C.
|
protected |
Linear least-squares fit.
Definition at line 58 of file EquilibriumConstantAux.h.
Referenced by computeValue(), and EquilibriumConstantAux().
|
protected |
Least-squares fit to data.
Definition at line 56 of file EquilibriumConstantAux.h.
Referenced by computeValue(), and EquilibriumConstantAux().
|
protected |
log(Keq) values at each temperature point
Definition at line 54 of file EquilibriumConstantAux.h.
Referenced by computeValue(), and EquilibriumConstantAux().
|
protected |
Temperature (in K)
Definition at line 50 of file EquilibriumConstantAux.h.
Referenced by computeValue().
|
protected |
Temperature points in data set (in K)
Definition at line 52 of file EquilibriumConstantAux.h.
Referenced by computeValue(), and EquilibriumConstantAux().