14 const std::vector<Real> & logk)
20 if (temperature.size() != logk.size())
22 "The temperature and logk data sets must be equal in length in EquilibriumConstantFit");
25 if (temperature.size() < 5)
26 mooseError(
"At least five data points are required in EquilibriumConstantFit");
32 unsigned int num_rows =
_x.size();
34 _matrix.resize(num_rows * num_cols);
36 for (
unsigned int row = 0; row < num_rows; ++row)
41 _matrix[(3 * num_rows) + row] = 1.0 /
_x[row];
42 _matrix[(4 * num_rows) + row] = 1.0 /
_x[row] /
_x[row];
void mooseError(Args &&... args)
virtual void fillMatrix() override
virtual Real sample(Real T) override
EquilibriumConstantFit(const std::vector< Real > &temperature, const std::vector< Real > &logk)
std::vector< Real > _coeffs
std::vector< Real > _matrix