12 #define _USE_MATH_DEFINES
17 #define DBL_EPSILON std::numeric_limits<double>::epsilon()
32 virtual double base(
double tau,
double delta) = 0;
36 virtual double dTau(
double tau,
double delta) = 0;
40 virtual double dTau2(
double tau,
double delta) = 0;
44 virtual double dDelta_dTau(
double tau,
double delta) = 0;
48 virtual double dDelta(
double tau,
double delta) = 0;
52 virtual double dDelta2(
double tau,
double delta) = 0;
56 virtual double dDelta2_dTau(
double tau,
double delta) = 0;
60 virtual double dDelta_dTau2(
double tau,
double delta) = 0;
64 virtual double dTau3(
double tau,
double delta) = 0;
68 virtual double dDelta3(
double tau,
double delta) = 0;
97 std::vector<double>
n,
105 phir_power(std::vector<double>,std::vector<double>,std::vector<double>,
int,
int);
106 phir_power(std::vector<double>,std::vector<double>,std::vector<double>,std::vector<double>,
int,
int);
108 phir_power(
const double[],
const double[],
const double[],
int,
int,
int);
109 phir_power(
double[],
double[],
double[],
int,
int,
int);
110 phir_power(
const double[],
const double[],
const double[],
const double[],
int,
int,
int);
111 phir_power(
double[],
double[],
double[],
double[],
int,
int,
int);
122 double base(
double tau,
double delta)
throw();
123 double dDelta(
double tau,
double delta)
throw();
124 double dTau(
double tau,
double delta)
throw();
126 double dDelta2(
double tau,
double delta)
throw();
127 double dDelta_dTau(
double tau,
double delta)
throw();
128 double dTau2(
double tau,
double delta)
throw();
130 double dDelta3(
double tau,
double delta)
throw();
133 double dTau3(
double tau,
double delta)
throw();
136 std::vector<double>
dDeltaV(std::vector<double> tau, std::vector<double> delta)
throw();
137 std::vector<double>
dDelta2V(std::vector<double> tau, std::vector<double> delta)
throw();
138 std::vector<double>
dTau2V(std::vector<double> tau, std::vector<double> delta)
throw();
139 std::vector<double>
dDelta_dTauV(std::vector<double> tau, std::vector<double> delta)
throw();
142 double A(
double log_tau,
double log_delta,
double delta,
int i)
throw();
143 double dA_dDelta(
double log_tau,
double log_delta,
double delta,
int i)
throw();
144 double dA_dTau(
double log_tau,
double log_delta,
double delta,
int i)
throw();
145 double d2A_dTau2(
double log_tau,
double log_delta,
double delta,
int i)
throw();
146 double d2A_dDelta2(
double log_tau,
double log_delta,
double delta,
int i)
throw();
147 double d2A_dDelta_dTau(
double log_tau,
double log_delta,
double delta,
int i)
throw();
161 std::vector<double> n,
166 unsigned int iStart,iEnd;
169 phir_exponential(std::vector<double>,std::vector<double>,std::vector<double>,std::vector<double>,std::vector<double>,
int,
int);
170 phir_exponential(
const double[],
const double[],
const double[],
const double[],
const double[],
int,
int,
int);
178 double base(
double tau,
double delta)
throw();
179 double dDelta(
double tau,
double delta)
throw();
180 double dTau(
double tau,
double delta)
throw();
182 double dDelta2(
double tau,
double delta)
throw();
183 double dDelta_dTau(
double tau,
double delta)
throw();
184 double dTau2(
double tau,
double delta)
throw();
186 double dDelta3(
double tau,
double delta)
throw();
189 double dTau3(
double tau,
double delta)
throw();
202 std::vector<double> n,d,t,alpha,epsilon,beta,gamma;
203 unsigned int iStart,iEnd;
209 std::vector<double> d_in,
210 std::vector<double> t_in,
211 std::vector<double> alpha_in,
212 std::vector<double> epsilon_in,
213 std::vector<double> beta_in,
214 std::vector<double> gamma_in,
215 unsigned int iStart_in,
unsigned int iEnd_in);
223 unsigned int iStart_in,
unsigned int iEnd_in,
unsigned int N);
227 const double alpha_in[],
228 const double epsilon_in[],
229 const double beta_in[],
230 const double gamma_in[],
231 unsigned int iStart_in,
unsigned int iEnd_in,
unsigned int N);
239 double base(
double tau,
double delta)
throw();
240 double dDelta(
double tau,
double delta)
throw();
241 double dTau(
double tau,
double delta)
throw();
243 double dDelta2(
double tau,
double delta)
throw();
244 double dDelta_dTau(
double tau,
double delta)
throw();
245 double dTau2(
double tau,
double delta)
throw();
247 double dDelta3(
double tau,
double delta)
throw();
250 double dTau3(
double tau,
double delta)
throw();
263 std::vector<double> n,d,t,eta,epsilon,beta,gamma;
264 unsigned int iStart,iEnd;
270 std::vector<double> d_in,
271 std::vector<double> t_in,
272 std::vector<double> eta_in,
273 std::vector<double> epsilon_in,
274 std::vector<double> beta_in,
275 std::vector<double> gamma_in,
276 unsigned int iStart_in,
277 unsigned int iEnd_in);
285 unsigned int iStart_in,
286 unsigned int iEnd_in,
294 double base(
double tau,
double delta);
295 double dDelta(
double tau,
double delta);
296 double dTau(
double tau,
double delta);
298 double dDelta2(
double tau,
double delta);
300 double dTau2(
double tau,
double delta);
317 std::vector<double> n,d,t,a,b,A,B,C,D,beta;
321 phir_critical(std::vector<double> n_in, std::vector<double> d_in, std::vector<double> t_in,
322 std::vector<double> a_in, std::vector<double> b_in, std::vector<double> beta_in,
323 std::vector<double> A_in, std::vector<double> B_in, std::vector<double> C_in,
324 std::vector<double> D_in,
int iStart_in,
int iEnd_in);
327 double a[],
double b[],
double beta[],
328 double A[],
double B[],
double C[],
329 double D[],
int iStart,
int iEnd,
int N);
337 double base(
double tau,
double delta)
throw();
338 double dDelta(
double tau,
double delta)
throw();
339 double dTau(
double tau,
double delta)
throw();
341 double dDelta2(
double tau,
double delta)
throw();
342 double dDelta_dTau(
double tau,
double delta)
throw();
343 double dTau2(
double tau,
double delta)
throw();
345 double dDelta3(
double tau,
double delta)
throw();
348 double dTau3(
double tau,
double delta)
throw();
370 std::vector<double> n,
375 unsigned int iStart,iEnd;
378 phir_Lemmon2005(std::vector<double>,std::vector<double>,std::vector<double>,std::vector<double>,std::vector<double>,
int,
int);
380 phir_Lemmon2005(
const double[],
const double[],
const double[],
const double[],
const double[],
int,
int,
int);
381 phir_Lemmon2005(
double[],
double[],
double[],
double[],
double[],
int,
int,
int);
388 double base(
double tau,
double delta)
throw();
389 double dDelta(
double tau,
double delta)
throw();
390 double dTau(
double tau,
double delta)
throw();
392 double dDelta2(
double tau,
double delta)
throw();
393 double dDelta_dTau(
double tau,
double delta)
throw();
394 double dTau2(
double tau,
double delta)
throw();
396 double dDelta3(
double tau,
double delta)
throw();
399 double dTau3(
double tau,
double delta)
throw();
417 double Deltabar(
double tau,
double delta);
431 double dX_dtau(
double tau,
double delta);
432 double dX_ddelta(
double tau,
double delta);
433 double d2X_dtau2(
double tau,
double delta);
437 double d3X_dtau3(
double tau,
double delta);
442 double g(
double eta);
446 double eta(
double delta);
448 double base(
double tau,
double delta);
449 double dDelta(
double tau,
double delta);
450 double dTau(
double tau,
double delta);
452 double dDelta2(
double tau,
double delta);
454 double dTau2(
double tau,
double delta);
456 double dDelta3(
double tau,
double delta);
459 double dTau3(
double tau,
double delta);
513 double base(
double tau,
double delta){
return log(delta)+c1+c2*tau;};
514 double dTau(
double tau,
double delta){
return c2;};
515 double dTau2(
double tau,
double delta){
return 0.0;};
516 double dDelta(
double tau,
double delta){
return 1.0/delta;};
517 double dDelta2(
double tau,
double delta){
return -1.0/delta/delta;};
521 double dTau3(
double tau,
double delta){
return 0.0;};
522 double dDelta3(
double tau,
double delta){
return 2/delta/delta/delta;};
549 double base(
double tau,
double delta){
return c1+c2*tau;};
550 double dTau(
double tau,
double delta){
return c2;};
551 double dTau2(
double tau,
double delta){
return 0.0;};
552 double dDelta(
double tau,
double delta){
return 1.0/delta;};
553 double dDelta2(
double tau,
double delta){
return -1.0/delta/delta;};
557 double dTau3(
double tau,
double delta){
return 0.0;};
558 double dDelta3(
double tau,
double delta){
return 2/delta/delta/delta;};
588 double base(
double tau,
double delta){
return c1*log(tau);};
589 double dTau(
double tau,
double delta){
return c1/tau;};
590 double dTau2(
double tau,
double delta){
return -c1/tau/tau;};
591 double dDelta(
double tau,
double delta){
return 0.0;};
592 double dDelta2(
double tau,
double delta){
return 0.0;};
596 double dTau3(
double tau,
double delta){
return 2*c1/tau/tau/tau;};
597 double dDelta3(
double tau,
double delta){
return 0;};
608 std::vector<double> a,theta;
614 a=a_in; theta=theta_in; iStart = iStart_in; iEnd = iEnd_in;
618 a=std::vector<double>(a_in,a_in+N);
619 theta=std::vector<double>(theta_in,theta_in+N);
620 iStart = iStart_in; iEnd = iEnd_in;
624 a=std::vector<double>(a_in,a_in+N);
625 theta=std::vector<double>(theta_in,theta_in+N);
626 iStart = iStart_in; iEnd = iEnd_in;
631 a=std::vector<double> (1,a_in);
632 theta=std::vector<double> (1,theta_in);
633 iStart = 0; iEnd = 0;
642 double base(
double tau,
double delta);
643 double dTau(
double tau,
double delta);
644 double dTau2(
double tau,
double delta);
645 double dTau3(
double tau,
double delta);
646 double dDelta(
double tau,
double delta){
return 0.0;};
647 double dDelta2(
double tau,
double delta){
return 0.0;};
651 double dDelta3(
double tau,
double delta){
return 0;};
661 std::vector<double> a,theta,c;
667 this->a=std::vector<double> (1,a);
668 this->theta=std::vector<double> (1,theta);
669 this->c=std::vector<double> (1,c);
670 iStart = 0; iEnd = 0;
679 double base(
double tau,
double delta);
680 double dTau(
double tau,
double delta);
681 double dTau2(
double tau,
double delta);
682 double dTau3(
double tau,
double delta);
683 double dDelta(
double tau,
double delta){
return 0.0;};
684 double dDelta2(
double tau,
double delta){
return 0.0;};
688 double dDelta3(
double tau,
double delta){
return 0.0;};
699 std::vector<double> a,b;
703 phi0_power(std::vector<double> a, std::vector<double> b,
int iStart,
int iEnd)
707 this->iStart = iStart;
710 phi0_power(
double a[],
double b[],
int iStart,
int iEnd,
int N)
712 this->a = std::vector<double>(a,a+N);
713 this->b = std::vector<double>(b,b+N);
714 this->iStart = iStart;
717 phi0_power(
const double a[],
const double b[],
int iStart,
int iEnd,
int N)
719 this->a = std::vector<double>(a,a+N);
720 this->b = std::vector<double>(b,b+N);
721 this->iStart = iStart;
727 this->a=std::vector<double>(1,a);
728 this->b=std::vector<double>(1,b);
740 for (
int i=iStart;i<=iEnd;i++)
750 double base(
double tau,
double delta)
753 for (
int i=iStart;i<=iEnd;i++){
754 summer += a[i]*pow(tau,b[i]);
758 double dTau(
double tau,
double delta)
762 for (
int i=iStart;i<=iEnd;i++) {
763 summer += a[i]*b[i]*pow(tau,b[i]-1);
767 double dTau2(
double tau,
double delta)
770 for (
int i=iStart; i<=iEnd; i++){
771 summer += a[i]*b[i]*(b[i]-1)*pow(tau,b[i]-2);
775 double dTau3(
double tau,
double delta)
778 for (
int i=iStart; i<=iEnd; i++){
779 summer += a[i]*b[i]*(b[i]-1)*(b[i]-2)*pow(tau,b[i]-3);
783 double dDelta(
double tau,
double delta){
return 0.0;};
784 double dDelta2(
double tau,
double delta){
return 0.0;};
788 double dDelta3(
double tau,
double delta){
return 0.0;};
812 phi0_cp0_constant(
double c,
double Tc,
double T0) { this->c=c; this->T0=T0; this->Tc=Tc; this->tau0=Tc/T0;};
826 double base(
double tau,
double delta){
827 return c-c*tau/tau0+c*log(tau/tau0);
829 double dTau(
double tau,
double delta)
833 double dTau2(
double tau,
double delta)
837 double dTau3(
double tau,
double delta)
839 return 2*c/(tau*tau*tau);
841 double dDelta(
double tau,
double delta){
return 0.0;};
842 double dDelta2(
double tau,
double delta){
return 0.0;};
846 double dDelta3(
double tau,
double delta){
return 0.0;};
883 std::vector<double> a,tv;
889 this->a=std::vector<double>(1,a);
890 this->tv=std::vector<double>(1,t);
891 this->Tc=Tc; this->T0=T0; iStart=0; iEnd=0; tau0=Tc/T0;
895 phi0_cp0_poly(std::vector<double> a, std::vector<double> t,
double Tc,
double T0,
int iStart,
int iEnd) {
896 this->a=a; this->tv=t; this->Tc = Tc; this->T0=T0; this->iStart=iStart; this->iEnd=iEnd; tau0=Tc/T0;
905 double base(
double tau,
double delta){
907 for (
int i = iStart; i<=iEnd; i++){
911 sum += a[i]-a[i]*tau/tau0+a[i]*log(tau/tau0);
915 sum += a[i]*tau/Tc*log(tau0/tau)+a[i]/Tc*(tau-tau0);
919 sum += -a[i]*pow(Tc,t)*pow(tau,-t)/(t*(t+1))-a[i]*pow(T0,t+1)*tau/(Tc*(t+1))+a[i]*pow(T0,t)/t;
924 double dTau(
double tau,
double delta);
925 double dTau2(
double tau,
double delta);
926 double dDelta(
double tau,
double delta){
return 0.0;};
927 double dDelta2(
double tau,
double delta){
return 0.0;};
931 double dTau3(
double tau,
double delta);
932 double dDelta3(
double tau,
double delta){
return 0.0;};
941 std::vector<double> a;
942 double Tc,tau0,T0,R_u;
947 a=_a; Tc = _Tc; T0=_T0; tau0=Tc/T0; R_u = _R;
955 double base(
double tau,
double delta);
956 double dTau(
double tau,
double delta);
957 double dTau2(
double tau,
double delta);
958 double dDelta(
double tau,
double delta){
return 0.0;};
959 double dDelta2(
double tau,
double delta){
return 0.0;};
962 double cp0(
double tau);
966 double dTau3(
double tau,
double delta);
967 double dDelta3(
double tau,
double delta){
return 0.0;};
double d3Deltabar_dtau3__constdelta(double tau, double delta)
double d3Deltabar_ddelta_dtau2(double tau, double delta)
std::vector< double > dTau2V(std::vector< double > tau, std::vector< double > delta)
double dDelta3(double tau, double delta)
phir_exponential(std::vector< double >, std::vector< double >, std::vector< double >, std::vector< double >, std::vector< double >, int, int)
double dTau(double tau, double delta)
double dDelta2(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dDelta3(double tau, double delta)
double dDeltabar_dtau__constdelta(double tau, double delta)
double dTau(double tau, double delta)
double dDelta3(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
phi0_lead(double a1, double a2)
double dDelta2_dTau(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
virtual double dTau(double tau, double delta)=0
double A(double log_tau, double log_delta, double delta, int i)
Derivatives for a single term for use in fitter.
double base(double tau, double delta)
double dDelta(double tau, double delta)
double dTau3(double tau, double delta)
~phir_GERG2008_gaussian()
double dTau(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dDelta(double tau, double delta)
virtual double dDelta2(double tau, double delta)=0
double dDelta(double tau, double delta)
double dX_dtau(double tau, double delta)
double dDelta3(double tau, double delta)
phir_SAFT_associating_2B(double m, double epsilonbar, double vbarn, double kappabar)
double dDelta_dTau(double tau, double delta)
double dDelta2(double tau, double delta)
double dTau(double tau, double delta)
double dDelta(double tau, double delta)
double dDelta(double tau, double delta)
virtual double dDelta2_dTau(double tau, double delta)=0
double dDelta_dTau(double tau, double delta)
double dTau3(double tau, double delta)
double d2A_dDelta_dTau(double log_tau, double log_delta, double delta, int i)
double d3Deltabar_ddelta3__consttau(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dDelta(double tau, double delta)
phi0_Planck_Einstein(std::vector< double > a_in, std::vector< double > theta_in, int iStart_in, int iEnd_in)
void cache()
Cache some terms for internal use.
double dA_dDelta(double log_tau, double log_delta, double delta, int i)
double dTau(double tau, double delta)
std::vector< double > dDelta2V(std::vector< double > tau, std::vector< double > delta)
double dDelta_dTau(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dDelta2(double tau, double delta)
double d2Deltabar_ddelta_dtau(double tau, double delta)
double dTau2(double tau, double delta)
double d2g_deta2(double eta)
double dTau(double tau, double delta)
double dDelta(double tau, double delta)
double dTau3(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
virtual void to_json(rapidjson::Value &el, rapidjson::Document &doc)=0
double dDelta_dTau(double tau, double delta)
double dDelta3(double tau, double delta)
double X(double delta, double Deltabar)
double dTau(double tau, double delta)
double dDelta2(double tau, double delta)
double dTau3(double tau, double delta)
double dDelta3(double tau, double delta)
phir_Lemmon2005(std::vector< double >, std::vector< double >, std::vector< double >, std::vector< double >, std::vector< double >, int, int)
double dDelta_dTau2(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dX_ddelta(double tau, double delta)
double dX_ddelta__constDeltabar(double delta, double Deltabar)
double dDelta_dTau2(double tau, double delta)
double dDelta(double tau, double delta)
double dTau2(double tau, double delta)
double dTau3(double tau, double delta)
double dTau2(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dDelta2(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dDelta_dTau2(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dDelta2(double tau, double delta)
~phi0_enthalpy_entropy_offset()
double anti_deriv_cp0_tau(double tau)
double d2Deltabar_ddelta2__consttau(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double d2X_ddeltadtau(double tau, double delta)
double dA_dTau(double log_tau, double log_delta, double delta, int i)
phi0_Planck_Einstein(double a_in, double theta_in)
double dTau2(double tau, double delta)
phi0_cp0_poly(double a, double t, double Tc, double T0)
Constructor with just a single double value.
phi0_Planck_Einstein2(double a, double theta, double c)
phi0_cp0_constant(double c, double Tc, double T0)
Constructor with just a single double value.
~phi0_cp0_poly()
Destructor.
double d2X_dtau2(double tau, double delta)
double anti_deriv_cp0_tau2(double tau)
double dDelta2(double tau, double delta)
double base(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
virtual double base(double tau, double delta)=0
std::vector< double > d
The power for the delta terms.
double dTau2(double tau, double delta)
double dDelta3(double tau, double delta)
GenericValue & AddMember(GenericValue &name, GenericValue &value, Allocator &allocator)
Add a member (name-value pair) to the object.
double dDelta2_dTau(double tau, double delta)
phi0_cp0_poly(std::vector< double > a, std::vector< double > t, double Tc, double T0, int iStart, int iEnd)
Constructor with std::vectors.
double dDelta(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dTau3(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double base(double tau, double delta)
double d3X_ddeltadtau2(double tau, double delta)
double dDelta3(double tau, double delta)
virtual double dDelta_dTau2(double tau, double delta)=0
double base(double tau, double delta)
double dTau2(double tau, double delta)
double d3X_ddelta3(double tau, double delta)
double dTau(double tau, double delta)
double dDeltabar_ddelta__consttau(double tau, double delta)
double dTau(double tau, double delta)
double dDelta(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dDelta2(double tau, double delta)
double dDelta2(double tau, double delta)
virtual double dDelta(double tau, double delta)=0
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dDelta2_dTau(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dTau2(double tau, double delta)
GenericValue & PushBack(GenericValue &value, Allocator &allocator)
Append a value at the end of the array.
double dTau2(double tau, double delta)
double dTau3(double tau, double delta)
~phi0_cp0_constant()
Destructor.
double dX_dDeltabar__constdelta(double delta, double Deltabar)
double dTau(double tau, double delta)
double dDelta(double tau, double delta)
double dDelta3(double tau, double delta)
phi0_power(std::vector< double > a, std::vector< double > b, int iStart, int iEnd)
double base(double tau, double delta)
A document for parsing JSON text as DOM.
double dDelta2(double tau, double delta)
double base(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
phi0_enthalpy_entropy_offset(double a1, double a2)
double dTau(double tau, double delta)
double base(double tau, double delta)
double dDelta3(double tau, double delta)
double d2Deltabar_dtau2__constdelta(double tau, double delta)
virtual double dTau2(double tau, double delta)=0
std::vector< double > dDelta_dTauV(std::vector< double > tau, std::vector< double > delta)
double dTau3(double tau, double delta)
double dTau3(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dTau3(double tau, double delta)
double dTau3(double tau, double delta)
virtual double dTau3(double tau, double delta)=0
double dDelta3(double tau, double delta)
double d2X_ddelta2(double tau, double delta)
double d3X_ddelta2dtau(double tau, double delta)
std::vector< double > t
The powers for the tau terms.
double dDelta2_dTau(double tau, double delta)
double dTau(double tau, double delta)
double dTau2(double tau, double delta)
double dTau(double tau, double delta)
phi0_Planck_Einstein(double a_in[], double theta_in[], int iStart_in, int iEnd_in, int N)
double dDelta2(double tau, double delta)
Allocator & GetAllocator()
Get the allocator of this document.
double dDelta2_dTau(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dDelta3(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double base(double tau, double delta)
double dDelta(double tau, double delta)
double d3g_deta3(double eta)
double base(double tau, double delta)
double dTau2(double tau, double delta)
phi0_power(double a, double b)
double dTau2(double tau, double delta)
double d2A_dDelta2(double log_tau, double log_delta, double delta, int i)
double dTau3(double tau, double delta)
phi0_Planck_Einstein(const double a_in[], const double theta_in[], int iStart_in, int iEnd_in, int N)
double base(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
phir_SAFT_associating_1(double m, double epsilonbar, double vbarn, double kappabar)
Term in the ideal-gas specific heat equation that is polynomial term.
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dTau3(double tau, double delta)
double base(double tau, double delta)
double dDelta2(double tau, double delta)
double dTau2(double tau, double delta)
double base(double tau, double delta)
double dDelta3(double tau, double delta)
double dDelta(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
phi0_power(const double a[], const double b[], int iStart, int iEnd, int N)
double base(double tau, double delta)
double dDelta3(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dDelta_dTau2(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
std::vector< double > dDeltaV(std::vector< double > tau, std::vector< double > delta)
Vectorized form so iteration happens at c++ level.
double dTau3(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dTau(double tau, double delta)
phi0_cp0_AlyLee(std::vector< double > _a, double _Tc, double _T0, double _R)
Constructor with std::vectors.
double dTau2(double tau, double delta)
double d3X_dtau3(double tau, double delta)
virtual double dDelta3(double tau, double delta)=0
double dDelta(double tau, double delta)
This is the abstract base class upon which each residual Helmholtz energy class is built...
double dg_deta(double eta)
double Deltabar(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dDelta2(double tau, double delta)
Term in the ideal-gas specific heat equation that is constant.
phir_critical(std::vector< double > n_in, std::vector< double > d_in, std::vector< double > t_in, std::vector< double > a_in, std::vector< double > b_in, std::vector< double > beta_in, std::vector< double > A_in, std::vector< double > B_in, std::vector< double > C_in, std::vector< double > D_in, int iStart_in, int iEnd_in)
double dDelta_dTau(double tau, double delta)
double dDelta3(double tau, double delta)
double d3Deltabar_ddelta2_dtau(double tau, double delta)
double dTau3(double tau, double delta)
double dDelta2(double tau, double delta)
void check_derivatives(phi_BC *phi, double tau, double delta, double ddelta=1e-10, double dtau=1e-10)
Represents a JSON value. Use Value for UTF8 encoding and default allocator.
double dTau3(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dDelta(double tau, double delta)
double dTau2(double tau, double delta)
double dTau2(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double dTau2(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dDelta_dTau(double tau, double delta)
std::vector< double > n
The coefficients multiplying each term.
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
double d2A_dTau2(double log_tau, double log_delta, double delta, int i)
double base(double tau, double delta)
double base(double tau, double delta)
double dDelta3(double tau, double delta)
void to_json(rapidjson::Value &el, rapidjson::Document &doc)
phi0_power(double a[], double b[], int iStart, int iEnd, int N)
double dDelta2(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dTau(double tau, double delta)
double dDelta_dTau2(double tau, double delta)
double dDelta(double tau, double delta)
double base(double tau, double delta)
virtual double dDelta_dTau(double tau, double delta)=0
~phi0_cp0_AlyLee()
Destructor.
double dDelta_dTau(double tau, double delta)
double dDelta2(double tau, double delta)
double dDelta2_dTau(double tau, double delta)
double dDelta_dTau(double tau, double delta)
double dTau(double tau, double delta)