9 double n[] = {0, 1.09415573664603E+00, -2.68265247887176E+00, 1.73403070801418E+00, -1.63611253452478E+00, 3.04834511239559E-01, 1.02771559991302E-01, -2.32367914087730E-02, 1.66151971110653E-01, -2.50103944487447E-02, 9.35681090149423E-02, 4.31929196624930E-02, -1.33439867188959E-01, 2.55416683254970E-02, -1.04729119771286E+00, 1.38034128674154E+00, -3.33625770182218E-01, -5.10485822124397E-01, 1.81840742529488E+00, -1.38530904967474E+00, 1.04729119771286E+00, -1.38034128674154E+00, 3.33625770182218E-01};
10 double t[] = {0, 0, 1, 2, 3, 4, 0, 1, 2, 0, 1, 0, 1, 1, 3, 4, 5, 3, 4, 5, 3, 4, 5};
11 double d[] = {0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 0, 0, 0, 2, 2, 2, 0, 0, 0};
12 double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2};
13 double g[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.99944, 0.99944, 0.99944, 0.99944, 0.99944, 0.99944};
22 params.molemass = 200.0312;
24 params.accentricfactor = 0.355345;
41 const double a0[] = {1.21e-1/
R, 2.903e-3/
R, -2.5327e-6/
R, 7.7191e-10/R};
42 const double n0[] = {0, 1, 2, 3, 4};
43 std::vector<double> a0_v(a0,a0+
sizeof(a0)/
sizeof(
double));
44 std::vector<double> n0_v(n0,n0+
sizeof(n0)/
sizeof(
double));
63 const double t[]={0, 0.353, 0.3585, 0.38899999999999996, 0.39499999999999996, 0.39649999999999996, 1.0, 2.6666666666666665, 4.166666666666667};
64 const double N[]={0, -4692.4741793345729, 7715.2503820566762, -49464.460331933777, 188185.25751683454, -141744.53054929635, -5.7257304556280664, -1.8133107974678764, -3.2381748043228629};
65 double summer=0,theta;
67 for (
int i=1; i<=8; i++)
69 summer += N[i]*pow(theta,t[i]);
77 const double t[] = {0, 0.6666666666666666, 0.8333333333333334, 1.0, 1.1666666666666667, 1.3333333333333333};
78 const double N[] = {0, 53.969051563565969, -197.00365240301335, 308.27001401289408, -229.95393573809568, 67.664593178058581};
79 double summer=0,theta;
81 for (
int i=1; i<=5; i++)
83 summer += N[i]*pow(theta,t[i]);
91 const double t[] = {0, 0.6666666666666666, 1.0, 1.1666666666666667, 1.3333333333333333, 1.6666666666666667};
92 const double N[] = {0, -30.078583058035335, 296.09241082699941, -657.70383115910977, 480.88414718079628, -98.797638989440159};
93 double summer=0,theta;
95 for (
int i=1; i<=5; i++)
97 summer += N[i]*pow(theta,t[i]);
104 double n[] = {0, 5.04676623751950E-01, -7.32431416212257E-01, -8.68403860880684E-01, 1.46234705622829E-01, -2.80576335158724E-01, 8.64743657302055E-01, -2.70767234069002E+00, 3.30476391081085E+00, -2.10878239585469E-01, 4.49531450327333E-01, 1.20779813434928E-01, -2.77297954448155E-01, 3.05441292206290E-02, -4.43864848810647E+01, 9.26505601085111E+00, -5.51709104525115E-01, 1.21128809697908E+00, 1.67119476809363E-01, -5.04876793555323E-02, 4.43864848810647E+01, -9.26505601085111E+00, 5.51709104525115E-01};
105 double t[] = {0, 0, 1, 2, 3, 4, 0, 1, 2, 0, 1, 0, 1, 1, 3, 4, 5, 3, 4, 5, 3, 4, 5};
106 double d[] = {0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 0, 0, 0, 2, 2, 2, 0, 0, 0};
107 double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2};
108 double g[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.07470252, 0.07470252, 0.07470252, 0.07470252, 0.07470252, 0.07470252};
117 params.molemass = 102.9227;
119 params.accentricfactor = 0.2061;
121 params.ptriple = 0.872834974943;
136 const double a0[] = {2.376576e-1/
R, 1.271433e-3/
R, 3.241352e-7/
R, -2.492428e-9/
R, 1.717208e-12/R};
137 const double n0[] = {0, 1, 2, 3, 4};
138 std::vector<double> a0_v(a0,a0+
sizeof(a0)/
sizeof(
double));
139 std::vector<double> n0_v(n0,n0+
sizeof(n0)/
sizeof(
double));
155 const double t[]={0, 5.166666666666667, 0.5, 0.8333333333333334, 1.1666666666666667, 4.5, 15.5};
156 const double N[]={0, 10.622994048827298, 0.24340767266291899, -3.6806156929627569, -2.8391976402596844, -11.694192853896972, -105.73416753738717};
157 double summer=0,theta;
159 for (
int i=1; i<=6; i++)
161 summer += N[i]*pow(theta,t[i]);
169 const double t[] = {0, 0.16666666666666666, 0.3333333333333333, 0.5, 0.6666666666666666, 0.8333333333333334, 1.0, 1.1666666666666667, 1.3333333333333333, 1.5, 1.8333333333333333, 2.1666666666666665};
170 const double N[] = {0, 8.1962989012252336, -126.69432982418643, 1052.8278007078461, -5339.195030700148, 17403.906139256076, -36983.75602624529, 50768.854983414814, -42575.104120024254, 17904.251888750605, -2429.6221450543758, 319.29162336471995};
171 double summer=0,theta;
173 for (
int i=1; i<=11; i++)
175 summer += N[i]*pow(theta,t[i]);
183 const double t[] = {0, 0.16666666666666666, 0.3333333333333333, 0.5, 0.6666666666666666, 0.8333333333333334, 1.0, 1.1666666666666667, 1.3333333333333333, 1.5, 1.8333333333333333, 2.1666666666666665};
184 const double N[] = {0, -11.965216242817384, 231.11620211923858, -2211.2434959327638, 12215.991323317601, -42096.616452521615, 93406.800295160952, -133237.72543166098, 115857.13120320938, -50458.426055336175, 7329.6177378866341, -1033.9002422581893};
185 double summer=0,theta;
187 for (
int i=1; i<=11; i++)
189 summer += N[i]*pow(theta,t[i]);
196 double n[] = {0, 1.07938940032879E+00, -1.99243731009857E+00, -1.55135220175231E-01, -1.21465858429101E-01, -1.65038674558161E-02, -1.86916017480622E-01, 3.08074956770949E-01, 1.15861545567346E-01, 2.76358779813890E-02, 1.08043424159349E-01, 4.60684822539207E-02, -1.74822007470687E-01, 3.17531741331376E-02, -3.40776521025164E-01, 3.23001398918284E-01, -4.24950543505197E-02, -1.66940287525002E+00, 4.08693538568874E+00, -2.41739233911370E+00, 3.40776521025164E-01, -3.23001398918284E-01, 4.24950543505197E-02};
197 double t[] = {0, 0, 1, 2, 3, 4, 0, 1, 2, 0, 1, 0, 1, 1, 3, 4, 5, 3, 4, 5, 3, 4, 5};
198 double d[] = {0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 0, 0, 0, 2, 2, 2, 0, 0, 0};
199 double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2};
200 double g[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.21104, 1.21104, 1.21104, 1.21104, 1.21104, 1.21104};
209 params.molemass = 170.921;
211 params.accentricfactor = 0.2523;
213 params.ptriple = 88.1623867625;
228 const double a0[] = {9.765138e-2/
R, 3.240861e-3/
R, -5.895364e-6/
R, 6.737929e-9/
R, -3.546364e-12/R};
229 const double n0[] = {0, 1, 2, 3, 4};
230 std::vector<double> a0_v(a0,a0+
sizeof(a0)/
sizeof(
double));
231 std::vector<double> n0_v(n0,n0+
sizeof(n0)/
sizeof(
double));
247 const double t[]={0, 0.07400000000000001, 0.39849999999999997, 1.0, 1.3333333333333333, 1.6666666666666667, 3.6666666666666665};
248 const double N[]={0, -0.0034645011523141735, 0.023157592718005465, -7.5688152387880105, 1.8469739464041124, -0.64855802507466331, -3.5293610438916647};
249 double summer=0,theta;
251 for (
int i=1; i<=6; i++)
253 summer += N[i]*pow(theta,t[i]);
261 const double t[] = {0, 0.16666666666666666, 0.3333333333333333, 0.5, 0.6666666666666666, 0.8333333333333334, 1.0, 1.1666666666666667, 1.3333333333333333, 1.5};
262 const double N[] = {0, 8.0724210238996115, -96.761335399409077, 605.872851511985, -2291.2376321628576, 5509.0583210078776, -8366.137761880449, 7757.0256536890611, -4008.5271350615171, 885.72702898357159};
263 double summer=0,theta;
265 for (
int i=1; i<=9; i++)
267 summer += N[i]*pow(theta,t[i]);
275 const double t[] = {0, 0.16666666666666666, 0.3333333333333333, 0.5, 0.6666666666666666, 0.8333333333333334, 1.0, 1.1666666666666667, 1.3333333333333333, 1.8333333333333333};
276 const double N[] = {0, -9.6930811880906287, 117.96522621847706, -743.74723241355264, 2787.1929722048621, -6489.5985188809345, 9217.6641583192031, -7448.5109382036526, 2703.4677823598959, -143.67224624062317};
277 double summer=0,theta;
279 for (
int i=1; i<=9; i++)
281 summer += N[i]*pow(theta,t[i]);
288 double n[] = {0, 7.61143010172E-01, -1.94465098795E+00, 9.40938700406E-01, -1.08107050239E+00, 1.17501564976E-01, 2.28305167217E-01, -4.03338888789E-01, 3.75585713420E-01, -6.17543677315E-02, 1.70326226881E-01, 5.36612457231E-02, -1.51603010301E-01, 2.52033265074E-02, -6.28346559920E-01, 7.92797111341E-01, -1.34038992692E-01, -3.99863840975E-02, 4.36410910529E-01, -4.48724904991E-01, 6.28346559920E-01, -7.92797111341E-01, 1.34038992692E-01};
289 double t[] = {0, 0, 1, 2, 3, 4, 0, 1, 2, 0, 1, 0, 1, 1, 3, 4, 5, 3, 4, 5, 3, 4, 5};
290 double d[] = {0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 0, 0, 0, 2, 2, 2, 0, 0, 0};
291 double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2};
292 double g[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.98230055, 0.98230055, 0.98230055, 0.98230055, 0.98230055, 0.98230055};
301 params.molemass = 104.459;
303 params.accentricfactor = 0.174586327798;
305 params.ptriple = 0.000907038339057;
320 const double a0[] = {1.971309e-1/
R, 1.438638e-3/
R, 1.746775e-6/
R, -6.830175e-9/
R, 5.030396e-12/R};
321 const double n0[] = {0, 1, 2, 3, 4};
322 std::vector<double> a0_v(a0,a0+
sizeof(a0)/
sizeof(
double));
323 std::vector<double> n0_v(n0,n0+
sizeof(n0)/
sizeof(
double));
342 const double t[]={0, 0.383, 0.38999999999999996, 1.1666666666666667, 5.5, 0.3695, 23.333333333333332};
343 const double N[]={0, 577.42725600666131, -400.21572594632761, -4.9874139876628041, -4.222492303172193, -178.69585671516839, -1720.3585941933911};
344 double summer=0,theta;
346 for (
int i=1; i<=6; i++)
348 summer += N[i]*pow(theta,t[i]);
356 const double t[] = {0, 0.113, 0.364, 0.3695, 0.3785, 1.3333333333333333, 6.666666666666667};
357 const double N[] = {0, 2.4784634077003043, -4743.997952071094, 7615.934031115753, -2872.7859164099727, 1.0823469621368702, 0.12626188722376672};
358 double summer=0,theta;
361 for (
int i=1; i<=6; i++)
363 summer += N[i]*pow(theta,t[i]);
370 const double t[] = {0, 0.138, 0.14300000000000002, 0.38599999999999995, 0.38799999999999996, 0.38899999999999996, 0.39099999999999996, 0.39149999999999996, 4.0, 8.333333333333334, 21.5};
371 const double N[] = {0, -1287.2952626479841, 1471.130388287577, -3382739168.0344748, 26487996709.339836, -37021553643.047638, 36901846787.213554, -22985550874.574944, -3.2136791021238045, -3.0923712297543609, -891.46368816511585};
372 double summer=0,theta;
375 for (
int i=1; i<=10; i++)
377 summer += N[i]*pow(theta,t[i]);
385 double n[] = {0, 1.03999039734947E+00, -2.45792025425590E+00, 7.99614558381524E-01, -7.49498955282594E-01, 1.52177772596398E-01, -2.93408332036298E-01, 7.17794503774445E-01, -4.26467444751902E-02, 2.26562749725952E-01, -3.91091694774020E-01, -2.57394805543082E-02, 5.54844886106659E-02, 6.10988262947185E-03, -3.34698748826510E-01, 5.86690904512625E-01, -1.47068929694523E-01, -1.90315426348019E-01, 7.16157134745809E-01, -7.03161905301754E-01, 3.34698748826510E-01, -5.86690904512625E-01, 1.47068929694523E-01};
386 double t[] = {0, 0, 1, 2, 3, 4, 0, 1, 2, 0, 1, 0, 1, 1, 3, 4, 5, 3, 4, 5, 3, 4, 5};
387 double d[] = {0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 0, 0, 0, 2, 2, 2, 0, 0, 0};
388 double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2};
389 double g[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.99832625, 0.99832625, 0.99832625, 0.99832625, 0.99832625, 0.99832625};
398 params.molemass = 88.0046;
400 params.accentricfactor = 0.1785;
402 params.ptriple = 11.2943290448;
419 const double a0[] = {3.728374e-01/
R, -8.368995e-04/
R, 1.316909e-05/
R, -2.839480e-08/
R, 1.937061e-11/R};
420 const double n0[] = {0, 1, 2, 3, 4};
421 std::vector<double> a0_v(a0,a0+
sizeof(a0)/
sizeof(
double));
422 std::vector<double> n0_v(n0,n0+
sizeof(n0)/
sizeof(
double));
441 const double t[]={0, 0.056, 0.362, 0.379, 0.381, 1.0, 4.166666666666667};
442 const double N[]={0, 0.022784802896396485, -47.710297004468607, 499.94408372159194, -452.62807116975046, -5.7182330867269302, -3.0735670244888449};
443 double summer=0,theta;
445 for (
int i=1; i<=6; i++)
447 summer += N[i]*pow(theta,t[i]);
456 const double t[] = {0, 0.069, 0.07600000000000001, 0.08, 0.082, 0.084, 0.136, 0.14800000000000002, 0.10900000000000001};
457 const double N[] = {0, 1602566566.7780583, -26938218495.184853, 133716790849.44449, -173718665668.18839, 65516872229.093124, 26998449.766706958, -7249677.4848860716, -199094251.66107807};
458 double summer=0,theta;
460 for (
int i=1; i <= 8; i++)
462 summer += N[i]*pow(theta,t[i]);
470 const double t[] = {0, 0.16666666666666666, 0.3333333333333333, 0.5, 0.6666666666666666, 0.8333333333333334, 1.0, 1.1666666666666667, 1.3333333333333333, 1.5, 1.8333333333333333, 2.1666666666666665, 2.5, 2.8333333333333335};
471 const double N[] = {0, -100.7345626697176, 3444.3434008630493, -42830.254541518494, 284713.72386460466, -1162645.1073034331, 3084508.6432672697, -5359062.6069945302, 5819407.3052222747, -3268017.232780416, 910857.58529407543, -364141.81135523558, 111002.63233300112, -17148.507705086071};
472 double summer=0,theta;
474 for (
int i=1; i<=13; i++)
476 summer += N[i]*pow(theta,t[i]);
std::vector< phi_BC * > phirlist
double R()
Returns the mass-specific gas constant for the fluid in the desired units.
struct FluidLimits limits
std::string ECSReferenceFluid
A list of aliases of names for the Fluid, each element is a std::string instance. ...
std::string name
A container to hold the cache for residual Helmholtz derivatives.
struct CriticalStruct reduce
A pointer to the point that is used to reduce the T and rho for EOS.
std::string REFPROPname
The name of the fluid.
std::string ECS_LENNARD_JONES
std::string SURFACE_TENSION
struct CriticalStruct crit
BibTeXKeysStruct BibTeXKeys
Term in the ideal-gas specific heat equation that is polynomial term.
std::vector< phi_BC * > phi0list
A vector of instances of the phi_BC classes for the residual Helmholtz energy contribution.
double ECS_qd
A string that gives the name of the fluids that should be used for the ECS method for transport prope...