28 static double dMolarFraction(
double xm,
double M_this,
double M_other);
30 static double getLoading(
const double rho_curr,
const double rho_dry);
35 double getEnthalpy(
const double p_Ads,
const double T_Ads,
36 const double M_Ads)
const override;
39 const double loading)
const override;
43 virtual double getAlphaT(
const double T_Ads)
const = 0;
48 double getEntropy(
const double T_Ads,
const double A)
const;
55 return (coeffs[0] + coeffs[2] * x + coeffs[4] * std::pow(x, 2) +
56 coeffs[6] * std::pow(x, 3)) /
57 (1.0 + coeffs[1] * x + coeffs[3] * std::pow(x, 2) +
58 coeffs[5] * std::pow(x, 3));
63 const double x2 = x*x;
64 const double x3 = x2*x;
65 const double u = coeffs[0] + coeffs[2] * x + coeffs[4] * x2 + coeffs[6] * x3;
66 const double du = coeffs[2] + 2.0*coeffs[4] * x + 3.0*coeffs[6] * x2;
67 const double v = 1.0 + coeffs[1] * x + coeffs[3] * x2 + coeffs[5] * x3;
68 const double dv = coeffs[1] + 2.0*coeffs[3] * x + 3.0*coeffs[5] * x2;
70 return (du*v - u*dv) / v / v;
static double getMolarFraction(double xm, double M_this, double M_other)
static double dMolarFraction(double xm, double M_this, double M_other)
virtual double getAlphaT(const double T_Ads) const =0
virtual double dCharacteristicCurve(const double A) const =0
double getEntropy(const double T_Ads, const double A) const
static double getEquilibriumVapourPressure(const double T_Ads)
double getEnthalpy(const double p_Ads, const double T_Ads, const double M_Ads) const override
static double getEvaporationEnthalpy(const double T_Ads)
static double getLoading(const double rho_curr, const double rho_dry)
virtual double characteristicCurve(const double A) const =0
double getReactionRate(const double p_Ads, const double T_Ads, const double M_Ads, const double loading) const override
virtual double getAdsorbateDensity(const double T_Ads) const =0
double getEquilibriumLoading(const double p_Ads, const double T_Ads, const double M_Ads) const override
double curvePolyfrac(const double *coeffs, const double x)
double dCurvePolyfrac(const double *coeffs, const double x)