PropyleneClass::PropyleneClass() { double n[] = {0.0, 4.341002E-02, 1.136592E+00, -8.528611E-01, 5.216669E-01, -1.382953E+00, 1.214347E-01, -5.984662E-01, -1.391883E+00, -1.008434E+00, 1.961249E-01, -3.606930E-01, -2.407175E-03, 7.432121E-01, 1.475162E-01, -2.503391E-02, -2.734409E-01, 6.378889E-03, 1.502940E-02, -3.162971E-02, -4.107194E-02, -1.190241E+00}; double t[] = {0, 1.0, 0.205, 0.56, 0.676, 1.0, 0.5, 1.0, 1.94, 2.0, 1.0, 2.66, 0.83, 1.6, 2.5, 3.0, 2.5, 2.72, 4.0, 4.0, 1.0, 4.0}; double d[] = {0, 4., 1., 1., 2., 2., 3., 1., 1., 3., 2., 2., 8., 1., 1., 2., 3., 3., 2., 1., 2., 3.}; double c[] = {0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.07, 0.66, 1.2, 1.12, 1.47, 1.93, 3.3, 15.4, 6.0}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.77, 0.83, 0.607, 0.4, 0.66, 0.07, 3.1, 387.0, 41.0}; double gamma[] = {0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.21, 1.08, 0.83, 0.56, 1.22, 1.81, 1.54, 1.12, 1.4}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.78, 0.82, 1.94, 0.69, 1.96, 1.3, 0.38, 0.91, 0.7}; //Critical parameters crit.rho = 5.457*42.07974; //[kg/m^3] crit.p = PressureUnit(4555.0, UNIT_KPA); //[kPa] crit.T = 364.211; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 42.07974; params.Ttriple = 87.953; params.accentricfactor = 0.146; params.R_u = 8.314472; params.ptriple = 7.5e-7; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,12,22)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 13,21,22)); const double n5 = 4.9916462, n6 = -0.1709449, n0 = 4; phi0list.push_back(new phi0_lead(n5,n6)); phi0list.push_back(new phi0_logtau(n0-1)); const double u0[] = {0, 324/crit.T, 973/crit.T, 1932/crit.T, 4317/crit.T}; const double v0[] = {0, 1.544, 4.013, 8.923, 6.020}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Lemmon, E.W., Overhoff, U., McLinden, M.O., Wagner, W. to be submitted to J. Phys. Chem. Ref. Data, 2010. Coefficients from REFPROP with permission"); TransportReference.assign("Using ECS in fully predictive mode. Lennard-Jones parameters from Chichester NISTIR 6650\n\nSurface Tension: Mulero \"Recommended Correlations for the Surface Tension of Common Fluids\", 2012"); name.assign("Propylene"); aliases.push_back(std::string("propylene")); REFPROPname.assign("PROPYLEN"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Lemmon-PROPYLENE-2013"; BibTeXKeys.ECS_LENNARD_JONES = "Huber-IECR-2003"; BibTeXKeys.ECS_FITS = "Huber-IECR-2003"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
pXyleneClass::pXyleneClass() { double n[] = {0.0, 0.0010786811, -0.103161822, 0.0421544125, 1.47865376, -2.4266, -0.46575193, 0.190290995, -1.06376565, -0.209934069, 1.25159879, -0.951328356, -0.0269980032, 1.3710318, -0.494160616, -0.0724317468, -3.69464746}; double t[] = {0, 1, 0.83, 0.83, 0.281, 0.932, 1.1, 0.443, 2.62, 2.5, 1.2, 3, 0.778, 1.13, 4.5, 2.2, 2}; double d[] = {0, 5, 1, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.179, 1.065, 1.764, 13.675}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.445, 1.483, 4.971, 413}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.267, 0.4242, 0.864, 1.1465}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.54944, 0.7234, 0.4926, 0.8459}; //Critical parameters crit.rho = 2.69392*106.165; //[kg/m^3] crit.p = PressureUnit(3531.5, UNIT_KPA); //[kPa] crit.T = 616.168; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 106.165; params.Ttriple = 286.4; params.accentricfactor = 0.324; params.R_u = 8.314472; params.ptriple = 0.580085039148721; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,12,17)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 13,16,17)); const double a1 = 5.9815241, a2 = -0.52477835, c0 = 5.2430504; phi0list.push_back(new phi0_lead(a1,a2)); phi0list.push_back(new phi0_logtau(c0-1)); const double u0[] = {0, 414/crit.T, 1256/crit.T, 2649/crit.T, 6681/crit.T}; const double v0[] = {0, 5.2291378, 19.549862, 16.656178, 5.9390291}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Yong Zhou, Jiangtao Wu, Eric W. Lemmon, \"Thermodynamic Properties of o-Xylene, m-Xylene, p-Xylene, and Ethylbenzene\", J. Phys. Chem. Ref. Data, Vol. 41, No. 2, 2012"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("p-Xylene"); aliases.push_back("pXylene"); aliases.push_back("p-xylene"); aliases.push_back(std::string("P-XYLENE")); REFPROPname.assign("PXYLENE"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Zhou-JPCRD-2012"; }
oXyleneClass::oXyleneClass() { double n[] = {0.0, 0.0036765156, -0.13918171, 0.014104203, 1.5398899, -2.3600925, -0.44359159, 0.19596977, -1.0909408, -0.21890801, 1.1179223, -0.93563815, -0.018102996, 1.4172368, -0.57134695, -0.081944041, -40.682878}; double t[] = {0, 1, 0.6, 0.91, 0.3, 0.895, 1.167, 0.435, 2.766, 3.8, 1.31, 3, 0.77, 1.41, 4.8, 1.856, 2}; double d[] = {0, 5, 1, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.1723, 1.095, 1.6166, 20.4}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.442, 1.342, 3, 450}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.2655, 0.3959, 0.7789, 1.162}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.552, 0.728, 0.498, 0.894}; //Critical parameters crit.rho = 2.6845*106.165; //[kg/m^3] crit.p = PressureUnit(3737.5, UNIT_KPA); //[kPa] crit.T = 630.259; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 106.165; params.Ttriple = 247.985; params.accentricfactor = 0.312; params.R_u = 8.314472; params.ptriple = 0.022805778456334729; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,12,17)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 13,16,17)); const double a1 = 10.137376, a2= -0.91282993, c0 = 3.748798; phi0list.push_back(new phi0_lead(a1,a2)); phi0list.push_back(new phi0_logtau(c0-1)); const double u0[] = {0, 225/crit.T, 627/crit.T, 1726/crit.T, 4941/crit.T}; const double v0[] = {0, 4.754892, 6.915052, 25.84813, 10.93886}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Yong Zhou, Jiangtao Wu, Eric W. Lemmon, \"Thermodynamic Properties of o-Xylene, m-Xylene, p-Xylene, and Ethylbenzene\", J. Phys. Chem. Ref. Data, Vol. 41, No. 2, 2012"); TransportReference.assign("Using ECS in fully predictive mode"); ECSReferenceFluid = "Propane"; name.assign("o-Xylene"); aliases.push_back("oXylene"); aliases.push_back("o-xylene"); aliases.push_back(std::string("O-XYLENE")); REFPROPname.assign("OXYLENE"); BibTeXKeys.EOS = "Zhou-JPCRD-2012"; }
mXyleneClass::mXyleneClass() { double n[] = {0.0, 0.000012791017, 0.041063111, 1.505996, -2.3095875, -0.46969, 0.171031, -1.001728, -0.3945766, 0.6970578, -0.3002876, -0.024311, 0.815488, -0.330647, -0.123393, -0.54661}; double t[] = {0, 1, 0.91, 0.231, 0.772, 1.205, 0.323, 2.7, 3.11, 0.768, 4.1, 0.818, 2, 2.9, 3.83, 0.5}; double d[] = {0, 8, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.0244, 1.3788, 0.9806, 6.3563}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.66, 1.9354, 1.0323, 78}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.1013, 0.6515, 0.4975, 1.26}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.713, 0.9169, 0.6897, 0.7245}; //Critical parameters crit.rho = 2.665*106.165; //[kg/m^3] crit.p = PressureUnit(3534.6, UNIT_KPA); //[kPa] crit.T = 616.89; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 106.165; params.Ttriple = 225.3; params.accentricfactor = 0.326; params.R_u = 8.314472; params.ptriple = 0.003123267841543599; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,11,16)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 12,15,16)); const double a1 = 12.652887, a2 = 0.45975624, c0 = 2.169909; phi0list.push_back(new phi0_lead(a1,a2)); phi0list.push_back(new phi0_logtau(c0-1)); const double u0[] = {0, 160/crit.T, 190/crit.T, 1333/crit.T, 3496/crit.T}; const double v0[] = {0, 4.44312, 2.862794, 24.83298, 16.26077}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Yong Zhou, Jiangtao Wu, Eric W. Lemmon, \"Thermodynamic Properties of o-Xylene, m-Xylene, p-Xylene, and Ethylbenzene\", J. Phys. Chem. Ref. Data, Vol. 41, No. 2, 2012"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("m-Xylene"); aliases.push_back("mXylene"); aliases.push_back("m-xylene"); aliases.push_back(std::string("M-XYLENE")); REFPROPname.assign("MXYLENE"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Zhou-JPCRD-2012"; }
DimethylCarbonateClass::DimethylCarbonateClass() { double n[] = {0.0, 0.00052683187, 1.353396, -2.649283, -0.2785412, 0.1742554, 0.031606252, 0.399866, 1.178144, -0.0235281, -1.015, -0.7880436, -0.12696, 1.2198, -0.4883, -0.0033293, -0.0035387, -0.51172, -0.16882}; double t[] = {0, 1, 0.227, 1.05, 1.06, 0.5, 0.78, 1.3, 1.347, 0.706, 2, 2.5, 4.262, 1, 2.124, 0.4, 3.5, 0.5, 2.7}; double d[] = {0, 5, 1, 1, 2, 3, 4, 1, 2, 7, 1, 2, 3, 1, 1, 2, 2, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.9667, 1.5154, 1.0591, 1.6642, 12.4856, 0.9662}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.240, 0.821, 15.45, 2.210, 437.0, 0.743}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.2827, 0.4317, 1.1217, 1.1871, 1.1243, 0.4203}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.6734, 0.9239, 0.8636, 1.0507, 0.8482, 0.7522}; //Critical parameters crit.rho = 4*90.0779; //[kg/m^3] crit.p = PressureUnit(4908.8, UNIT_KPA); //[kPa] crit.T = 557; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 90.0779; params.Ttriple = 277.06; params.accentricfactor = 0.346; params.R_u = 8.314472; params.ptriple = 2.2265237265924869; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,12,19)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 13,18,19)); const double n5 = 4.9916462, n6 = -0.1709449, n0 = 9.28421; phi0list.push_back(new phi0_lead(n5,n6)); phi0list.push_back(new phi0_logtau(n0-1)); const double u0[] = {0, 21/crit.T, 1340/crit.T, 1672/crit.T, 7395/crit.T}; const double v0[] = {0, 1.48525, 0.822585, 16.2453, 1.15925}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign(EOSstr); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("DimethylCarbonate"); aliases.push_back(std::string("DMC")); aliases.push_back(std::string("dimethylcarbonate")); aliases.push_back(std::string("DIMETHYLCARBONATE")); REFPROPname.assign("DMC"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Zhou-JPCRD-2011"; }
R236EAClass::R236EAClass() { double n[] = {0.0, 0.051074, 2.5584, -2.9180, -0.71485, 0.15534, -1.5894, -0.784, 0.85767, -0.67235, -0.017953, 1.3165, -0.42023, -0.28053, -1.4134, -0.0000062617}; double t[] = {0, 1.0, 0.264, 0.5638, 1.306, 0.2062, 2.207, 2.283, 1.373, 2.33, 0.6376, 1.08, 1.67, 3.502, 4.357, 0.6945}; double d[] = {0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3, 3, 2}; double c[] = {0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.019, 1.341, 1.034, 5.264, 24.44}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.30, 2.479, 1.068, 79.850, 49.06}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.13, 0.6691, 0.465, 1.280, 0.8781}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.7119, 0.9102, 0.678, 0.7091, 1.727}; //Critical parameters crit.rho = 3.716*152.0384; //[kg/m^3] crit.p = PressureUnit(3420, UNIT_KPA); //[kPa] crit.T = 412.44; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 152.0384; params.Ttriple = 170; params.accentricfactor = 0.36878238039914035; params.R_u = 8.314472; params.ptriple = 17.525807103151166; // At Tmin of 243 // Limits of EOS limits.Tmin = 243; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,16)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 11,15,16)); const double n5 = -14.1214241350, n6 = 10.2355589225, n0 = 3.762; phi0list.push_back(new phi0_lead(n5,n6)); phi0list.push_back(new phi0_logtau(n0-1)); const double u0[] = {0, 144/crit.T, 385/crit.T, 1536/crit.T, 7121/crit.T}; const double v0[] = {0, 0.7762, 10.41, 12.18, 3.332}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Xinfang Rui and Jiang Pan and Yugang Wang, \"An equation of state for the thermodynamic properties of 1,1,1,2,3,3-hexafluoropropane (R236ea)\", Fluid Phase Equilibria 341 (2013) 78-85\n\nNote: Erratum in paper: a1 should be -17.5983849 and a2 should be 8.87150449\n\nNote: REFPROP 9.0 does not use this EOS, they use thermodynamic corresponding states"); TransportReference.assign("Using ECS in fully predictive mode."); name.assign("R236EA"); aliases.push_back(std::string("R236ea")); REFPROPname.assign("R236EA"); BibTeXKeys.EOS = "Rui-FPE-2013"; BibTeXKeys.ECS_FITS = "Huber-IECR-2003"; BibTeXKeys.ECS_LENNARD_JONES = "Huber-IECR-2003"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
MethylLinoleateClass::MethylLinoleateClass() { // Typo in the paper, coefficients for n,d,t,c taken from REFPROP double n[] = {0.0, 0.3183187e-01, 0.1927286e01, -0.3685053e01, 0.8449312e-01, -0.9766643, -0.4323178, 0.2000470e01, -0.1752030e01, -0.1726895e-01, 0.2116515e01, -0.7884271, -0.3811699}; double d[] = {0.0, 4, 1, 1, 3, 1, 3, 2, 2, 7, 1, 1, 3}; double t[] = {0.0, 1, 0.2, 1.2, 1, 2.2, 2.5, 1.8, 1.92, 1.47, 1.7, 2.3, 2.1}; double c[] = {0.0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 2, 2, 2}; static double eta[] = {0,0,0,0,0,0,0,0,0,0,1.1,1.6,1.1}; static double beta[] = {0,0,0,0,0,0,0,0,0,0,0.9,0.65,0.75}; static double gamma[] = {0,0,0,0,0,0,0,0,0,0,1.14,0.65,0.77}; static double epsilon[] = {0,0,0,0,0,0,0,0,0,0,0.79,0.90,0.76}; //Critical parameters crit.rho = 0.8084*294.47206; //[kg/m^3] crit.p = PressureUnit(1341, UNIT_KPA); //[kPa] crit.T = 799; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 294.47206; // From REFPROP, not provided in paper (but should be!!) params.Ttriple = 260; params.accentricfactor = 0.80540638705564849; params.R_u = 8.314472; params.ptriple = 1.37170480867e-09; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,9,13)); phirlist.push_back(new phir_gaussian(n,d,t,eta,epsilon,beta,gamma,10,12,13)); phi0list.push_back(new phi0_lead(-1,0)); phi0list.push_back(new phi0_logtau(-1)); const double u0[] = {0, 3052.11/crit.T, 746.631/crit.T, 1624.33/crit.T}; const double v0[] = {0, 437.371/params.R_u, 287.222/params.R_u, 321.956/params.R_u}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_cp0_poly(190.986/params.R_u,0.020213,crit.T,298)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Marcia L. Huber, Eric W. Lemmon, Andrei Kazakov, Lisa S. Ott and Thomas J. Bruno, \"Model for the Thermodynamic Properties of a Biodiesel Fuel\", Energy & Fuels 2009, 23, 3790-3797"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MethylLinoleate"); aliases.push_back(std::string("METHYLLINOLEATE")); REFPROPname.assign("MLINOLEA"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Huber-EF-2009"; }
EthylBenzeneClass::EthylBenzeneClass() { double n[] = {0.0, 0.0018109418, -0.076824284, 0.041823789, 1.5059649, -2.4122441, -0.47788846, 0.18814732, -1.0657412, -0.20797007, 1.1222031, -0.99300799, -0.027300984, 1.3757894, -0.44477155, -0.07769742, -2.16719}; double t[] = {0, 1, 1, 0.92, 0.27, 0.962, 1.033, 0.513, 2.31, 3.21, 1.26, 2.29, 1, 0.6, 3.6, 2.1, 0.5}; double d[] = {0, 5, 1, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.178, 1.07, 1.775, 15.45}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.437, 1.488, 4, 418.6}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.2667, 0.4237, 0.8573, 1.15}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5494, 0.7235, 0.493, 0.8566}; //Critical parameters crit.rho = 2.741016*106.165; //[kg/m^3] crit.p = PressureUnit(3622.4, UNIT_KPA); //[kPa] crit.T = 617.12; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 106.165; params.Ttriple = 178.2; params.accentricfactor = 0.304; params.R_u = 8.314472; params.ptriple = 4.0029622500330704e-006; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,12,17)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 13,16,17)); const double a1 = 5.70409, a2 = -0.52414353, c0 = 5.2557889; phi0list.push_back(new phi0_lead(a1,a2)); phi0list.push_back(new phi0_logtau(c0-1)); const double u0[] = {0, 585/crit.T, 4420/crit.T, 1673/crit.T}; const double v0[] = {0, 9.7329909, 11.201832, 25.440749}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Yong Zhou, Jiangtao Wu, Eric W. Lemmon, \"Thermodynamic Properties of o-Xylene, m-Xylene, p-Xylene, and Ethylbenzene\", J. Phys. Chem. Ref. Data, Vol. 41, No. 2, 2012"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("EthylBenzene"); aliases.push_back("ethylbenzene"); aliases.push_back(std::string("ETHYLBENZENE")); REFPROPname.assign("EBENZENE"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Zhou-JPCRD-2012"; }
DimethylEtherClass::DimethylEtherClass() { double n[] = {0.0, 0.029814139, 1.43517, -2.64964, -0.29515532, 0.17035607, -0.94642918, -0.099250514, 1.1264071, -0.76936548, -0.020717696, 0.24527037, 1.1863438, -0.49398368, -0.16388716, -0.027583584}; double t[] = {0, 1, 0.4366, 1.011, 1.137, 0.45, 2.83, 1.5, 1.235, 2.675, 0.7272, 1.816, 1.783, 3.779, 3.282, 1.059}; double d[] = {0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 1, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 1, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.965336, 1.50858, 0.963855, 9.72643}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.28719, 0.806235, 0.777942, 197.681}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.27772, 0.43075, 0.429607, 1.13849}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.672698, 0.924246, 0.750815, 0.800022}; //Critical parameters crit.rho = 5.940*46.06844; //[kg/m^3] crit.p = PressureUnit(5336.8, UNIT_KPA); //[kPa] crit.T = 400.378; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 46.06844; params.Ttriple = 131.66; params.accentricfactor = 0.196; params.R_u = 8.314472; params.ptriple = 0.0022; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,11,16)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 12,15,16)); const double a1 = -1.980976, a2 = 3.171218, c0 = 4.039; phi0list.push_back(new phi0_lead(a1,a2)); phi0list.push_back(new phi0_logtau(c0-1)); const double u0[] = {0, 361/crit.T, 974/crit.T, 1916/crit.T, 4150/crit.T}; const double v0[] = {0, 2.641, 2.123, 8.992, 6.191}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Jiangtao Wu, Yong Zhou, Eric W. Lemmon, \"An Equation of State for the Thermodynamic Properties of Dimethyl Ether\", J. Phys. Chem. Ref. Data, Vol. 40, No. 2, 2011"); TransportReference.assign("Viscosity: Xianyang Meng, Jianbo Zhang, Jiangtao Wu, and Zhigang Liu, \" Experimental Measurement and Modeling of the Viscosity of Dimethyl Ether\" J. Chem. Eng.Data 2012, 57, 988-993\n\nErratum: Limits for deltaeta_r sums should be 0-3 and 4-9. The correct order of terms based on the original indices are 0,1,7,9,2,3,4,5,6,8\n\n" "Using ECS in fully predictive mode for viscosity\n\n" "Lennard-Jones parameters from Chichester NISTIR 6650"); name.assign("DimethylEther"); REFPROPname.assign("DME"); BibTeXKeys.EOS = "Wu-JPCRD-2011"; BibTeXKeys.VISCOSITY = "Meng-JCED-2012"; BibTeXKeys.ECS_LENNARD_JONES = "Chichester-NIST-2008"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
CyclopentaneClass::CyclopentaneClass() { double n[] = {0.0, 0.0536938, 1.60394, -2.41244, -0.474009, 0.203482, -0.965616, -0.344543, 0.353975, -0.231373, -0.0379099, 0.867586, -0.381827, -0.108741, -0.0976984}; double t[] = {0, 1.0, 0.29, 0.8, 1.14, 0.5, 2.0, 1.5, 1.0, 3.36, 0.95, 1.0, 2.5, 2.5, 1.5}; double d[] = {0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.82, 1.19, 0.79, 1.52}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.15, 1.61, 0.66, 2.72}; double gamma[] = {0,0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1.08, 0.36, 0.09, 1.48}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.68, 0.97, 0.84, 0.66}; //Critical parameters crit.rho = 3.82*70.1329; //[kg/m^3] crit.p = PressureUnit(4571.2, UNIT_KPA); //[kPa] crit.T = 511.72; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 70.1329; params.Ttriple = 179.7; params.accentricfactor = 0.20111257338059896; params.R_u = 8.314472; params.ptriple = 0.0088542726061155586; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,15)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 11,14,15)); const double n5 = 3.2489131288, n6 = 2.6444166315, n0 = 1.96; phi0list.push_back(new phi0_lead(n5,n6)); phi0list.push_back(new phi0_logtau(n0-1)); const double u0[] = {0, 120/crit.T, 1300/crit.T, 2700/crit.T, 5300/crit.T}; const double v0[] = {0, 3.34, 18.6, 13.9, 4.86}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); EOSReference.assign("Holger Gedanitz, Maria J. Davila, Eric W. Lemmon \" Speed of sound measurements and a fundamental equation of state for cyclopentane\" Preprint provided by Eric Lemmon"); TransportReference.assign("Using ECS in fully predictive mode."); name.assign("Cyclopentane"); aliases.push_back(std::string("CycloPentane")); aliases.push_back(std::string("cyclopentane")); aliases.push_back(std::string("CYCLOPENTANE")); REFPROPname.assign("CYCLOPEN"); BibTeXKeys.EOS = "Gedanitz-PREPRINT-2013"; }
MethylOleateClass::MethylOleateClass() { double n[] = {0.0, 0.4596121e-01, 0.2295400e01, -0.3554366e01, -0.2291674, 0.6854534e-01, -0.1535778e01, -0.7334697, 0.1712700e01, -0.1471394e01, -0.1724678e-01, 0.2115470e01, -0.7555374, -0.4134269}; double d[] = {0.0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3}; double t[] = {0.0, 1, 0.34, 1.14, 1.4, 0.6, 3.3, 4.1, 1.9, 3.8, 1.3, 3.4, 3.8, 4}; double c[] = {0.0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 2, 2, 2}; static double eta[] = {0,0,0,0,0,0,0,0,0,0,0,1.1,1.6,1.1}; static double beta[] = {0,0,0,0,0,0,0,0,0,0,0,0.9,0.65,0.75}; static double _gamma[] = {0,0,0,0,0,0,0,0,0,0,0,1.14,0.65,0.77}; static double epsilon[] = {0,0,0,0,0,0,0,0,0,0,0,0.79,0.90,0.76}; //Critical parameters crit.rho = 0.81285*296.48794; //[kg/m^3] crit.p = PressureUnit(1246, UNIT_KPA); //[kPa] crit.T = 782; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 296.48794; // From REFPROP, not provided in paper (but should be!!) params.Ttriple = 253.47; // From REFPROP, not provided in paper params.accentricfactor = 0.90584935998790117; params.R_u = 8.314472; params.ptriple = 7.283926368e-11; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,14)); phirlist.push_back(new phir_gaussian(n,d,t,eta,epsilon,beta,_gamma,11,13,14)); phi0list.push_back(new phi0_lead(-1,0)); phi0list.push_back(new phi0_logtau(-1)); const double u0[] = {0, 613.529/crit.T, 1405.31/crit.T, 2867.76/crit.T}; const double v0[] = {0, 234.797/params.R_u, 335.768/params.R_u, 431.66/params.R_u}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_cp0_poly(90.2385/params.R_u,0.146118,crit.T,298)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Marcia L. Huber, Eric W. Lemmon, Andrei Kazakov, Lisa S. Ott and Thomas J. Bruno, \"Model for the Thermodynamic Properties of a Biodiesel Fuel\", Energy & Fuels 2009, 23, 3790-3797"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MethylOleate"); aliases.push_back(std::string("METHYLOLEATE")); REFPROPname.assign("MOLEATE"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Huber-EF-2009"; }
MethylLinolenateClass::MethylLinolenateClass() { double n[] = {0.0, 0.4070829e-01, 0.2412375e01, -0.3756194e01, -0.1526466, 0.4682918e-01, -0.1470958e01, -0.7645500, 0.1908964e01, -0.1629366e01, -0.1242073e-01, 0.2180707e01, -0.7537264, -0.4347781}; double d[] = {0.0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3}; double t[] = {0.0, 1, 0.15, 1.24, 1.6, 1.28, 2.9, 3.15, 2.16, 2.8, 1.4, 2.5, 3, 3.1}; double c[] = {0.0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 2, 2, 2}; static double eta[] = {0,0,0,0,0,0,0,0,0,0,0,1.1,1.6,1.1}; static double beta[] = {0,0,0,0,0,0,0,0,0,0,0,0.9,0.65,0.75}; static double _gamma[] = {0,0,0,0,0,0,0,0,0,0,0,1.14,0.65,0.77}; static double epsilon[] = {0,0,0,0,0,0,0,0,0,0,0,0.79,0.90,0.76}; //Critical parameters crit.rho = 0.8473*292.45618; //[kg/m^3] crit.p = PressureUnit(1369, UNIT_KPA); //[kPa] crit.T = 772; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 292.45618; // From REFPROP, not provided in paper (but should be!!) params.Ttriple = 260; params.accentricfactor = 1.1426052586734956; params.R_u = 8.314472; params.ptriple = 4.25028035475e-10; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,14)); phirlist.push_back(new phir_gaussian(n,d,t,eta,epsilon,beta,_gamma,11,13,14)); phi0list.push_back(new phi0_lead(-1,0)); phi0list.push_back(new phi0_logtau(-1)); const double u0[] = {0, 1213.24/crit.T, 578.752/crit.T, 2799.79/crit.T}; const double v0[] = {0, 290.379/params.R_u, 81.4323/params.R_u, 474.881/params.R_u}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_cp0_poly(79.5913/params.R_u,0.214648,crit.T,298)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Marcia L. Huber, Eric W. Lemmon, Andrei Kazakov, Lisa S. Ott and Thomas J. Bruno, \"Model for the Thermodynamic Properties of a Biodiesel Fuel\", Energy & Fuels 2009, 23, 3790-3797"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MethylLinolenate"); aliases.push_back(std::string("METHYLLINOLENATE")); REFPROPname.assign("MLINOLEN"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Huber-EF-2009"; }
MethylPalmitateClass::MethylPalmitateClass() { double n[] = {0.0, 0.4282821e-01, 0.2443162e01, -0.3757540e01, -0.1588526, 0.4055990e-01, -0.1524090e01, -0.7686167, 0.1799950e01, -0.1590967e01, -0.1267681e-01, 0.2198347e01, -0.7737211, -0.4314520}; double d[] = {0.0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3}; double t[] = {0.0, 1, 0.36, 1.22, 1.45, 0.7, 3, 3.9, 2.2, 2.9, 1.25, 2.6, 3.0, 3.2}; double c[] = {0.0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 2, 2, 2}; static double eta[] = {0,0,0,0,0,0,0,0,0,0,0,1.1,1.6,1.1}; static double beta[] = {0,0,0,0,0,0,0,0,0,0,0,0.9,0.65,0.75}; static double _gamma[] = {0,0,0,0,0,0,0,0,0,0,0,1.14,0.65,0.77}; static double epsilon[] = {0,0,0,0,0,0,0,0,0,0,0,0.79,0.90,0.76}; //Critical parameters crit.rho = 0.897*270.45066; //[kg/m^3] crit.p = PressureUnit(1350, UNIT_KPA); //[kPa] crit.T = 755; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 270.45066; // http://pubchem.ncbi.nlm.nih.gov/summary/summary.cgi?cid=8181#x27 (not provided in reference paper) params.Ttriple = 302.71; // From REFPROP, not provided in paper params.accentricfactor = 0.910316178; params.R_u = 8.314472; params.ptriple = 1.6401417670571351e-005; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,14)); phirlist.push_back(new phir_gaussian(n,d,t,eta,epsilon,beta,_gamma,11,13,14)); phi0list.push_back(new phi0_lead(-1,0)); phi0list.push_back(new phi0_logtau(-1)); const double u0[] = {0, 2952.37/crit.T, 734.653/crit.T, 1593.55/crit.T}; const double v0[] = {0, 345.62/params.R_u, 289.038/params.R_u, 301.639/params.R_u}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_cp0_poly(120.529/params.R_u,0.0801627,crit.T,298)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Marcia L. Huber, Eric W. Lemmon, Andrei Kazakov, Lisa S. Ott and Thomas J. Bruno, \"Model for the Thermodynamic Properties of a Biodiesel Fuel\", Energy & Fuels 2009, 23, 3790-3797"); TransportReference.assign("Using ECS in fully predictive mode"); ECSReferenceFluid = "Propane"; name.assign("MethylPalmitate"); aliases.push_back(std::string("METHYLPALMITATE")); REFPROPname.assign("MPALMITA"); BibTeXKeys.EOS = "Huber-EF-2009"; }
MethylStearateClass::MethylStearateClass() { double n[] = {0.0, 0.3959635e-01, 0.2466654e01, -0.3895950e01, -0.1167375, 0.4127229e-01, -0.1403734e01, -0.6465264, 0.1934675e01, -0.1608124e01, -0.1113813e-01, 0.2125325e01, -0.7772671, -0.4183684}; double d[] = {0.0, 4, 1, 1, 2, 3, 1, 3, 2, 2, 7, 1, 1, 3}; double t[] = {0.0, 1, 0.3, 1.25, 1.65, 0.8, 3.1, 3.4, 2.3, 3.8, 1.2, 3.2, 3.8, 3.8}; double c[] = {0.0, 0, 0, 0, 0, 0, 2, 2, 1, 2, 1, 2, 2, 2}; static double eta[] = {0,0,0,0,0,0,0,0,0,0,0,1.1,1.6,1.1}; static double beta[] = {0,0,0,0,0,0,0,0,0,0,0,0.9,0.65,0.75}; static double _gamma[] = {0,0,0,0,0,0,0,0,0,0,0,1.14,0.65,0.77}; static double epsilon[] = {0,0,0,0,0,0,0,0,0,0,0,0.79,0.90,0.76}; //Critical parameters crit.rho = 0.7943*298.50382; //[kg/m^3] crit.p = PressureUnit(1350, UNIT_KPA); //[kPa] crit.T = 775; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 298.50382; // From REFPROP, not provided in paper (but should be!!) params.Ttriple = 311.84; // From REFPROP, not provided in paper params.accentricfactor = 1.0548242393764551; params.R_u = 8.314472; params.ptriple = 6.0109170319097108e-006; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,14)); phirlist.push_back(new phir_gaussian(n,d,t,eta,epsilon,beta,_gamma,11,13,14)); phi0list.push_back(new phi0_lead(-1,0)); phi0list.push_back(new phi0_logtau(-1)); const double u0[] = {0, 556.17/crit.T, 1311.85/crit.T, 2825.71/crit.T}; const double v0[] = {0, 276.94/params.R_u, 408.997/params.R_u, 472.702/params.R_u}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_cp0_poly(247.115/params.R_u,-0.0916606,crit.T,298)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Marcia L. Huber, Eric W. Lemmon, Andrei Kazakov, Lisa S. Ott and Thomas J. Bruno, \"Model for the Thermodynamic Properties of a Biodiesel Fuel\", Energy & Fuels 2009, 23, 3790-3797"); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MethylStearate"); REFPROPname.assign("MSTEARAT"); ECSReferenceFluid = "Propane"; BibTeXKeys.EOS = "Huber-EF-2009"; }
R161Class::R161Class() { double n[] = {0.0, 1.511, -2.3, -0.457, 0.1683, 0.04133, 0.62187, -0.0265, -1.03, -0.285, -0.476, 0.82, -0.3532, -0.116, -0.0220583, -1.63148}; double t[] = {0, 0.37, 0.97, 1.14, 0.744, 1, 1.26, 1, 1.8, 3, 2.25, 1, 1.2, 5.3, 1, 4}; double d[] = {0, 1, 1, 2, 3, 4, 2, 7, 1, 2, 3, 1, 1, 3, 3, 3}; double c[] = {0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0}; double eta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.96, 1.35, 1.26, 1.23, 16.8}; double beta[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.7, 5.2, 3.9, 4.7, 413}; double gamma[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.9, 0.69, 0.67, 0.67, 1.15}; double epsilon[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.683, 0.892, 0.785, 1.33, 0.86}; //Critical parameters crit.rho = 6.28*48.0595; //[kg/m^3] crit.p = PressureUnit(5010, UNIT_KPA); //[kPa] crit.T = 375.25; //[K] crit.v = 1/crit.rho; // Other fluid parameters params.molemass = 48.0595; params.Ttriple = 130; params.accentricfactor = 0.21624284106618674; params.R_u = 8.314472; params.ptriple = 0.005512; // Limits of EOS limits.Tmin = 130; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power( n,d,t,c,1,10,16)); phirlist.push_back(new phir_gaussian( n,d,t, eta, epsilon, beta, gamma, 11,15,16)); const double a0 = -6.9187, a1 = 5.4788, n0 = 4; phi0list.push_back(new phi0_lead(a0, a1)); phi0list.push_back(new phi0_logtau(n0-1)); const double u0[] = {0, 420/crit.T, 1548/crit.T, 3882/crit.T}; const double v0[] = {0, 2.059, 9.253, 6.088}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,3)); EOSReference.assign("Jiangtao Wu and Yong Zhou, \"An Equation of State for Fluoroethane (R161)\", Int J Thermophys (2012) 33:220–234"); TransportReference.assign("Using ECS in fully predictive mode."); name.assign("R161"); aliases.push_back(std::string("R161")); REFPROPname.assign("R161"); BibTeXKeys.EOS = "Wu-IJT-2012"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//D5 DecamethylcyclopentasiloxaneClass::DecamethylcyclopentasiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.40844725,-2.29248044,0.42851607,-0.73506382,0.16103808,0.00029643278,0.82412481,0.15214274,-0.6849589,-0.055703624,0.013055391,-0.031853761}; // divided by R_u to give cp0/R_u terms like in Lemmon 2000 const double u0[]={0.0,-4.19725991019033,0.223886736283434,-0.000168790032608204,6.01361096651718E-08}; const double n0[]={0.0,0,1,2,3}; std::vector<double> n_v(n,n+sizeof(n)/sizeof(double)); std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> n0_v(n0,n0+sizeof(n0)/sizeof(double)); std::vector<double> d_v(d,d+sizeof(d)/sizeof(double)); std::vector<double> t_v(t,t+sizeof(t)/sizeof(double)); std::vector<double> l_v(l,l+sizeof(l)/sizeof(double)); // Critical parameters crit.rho = 304.90928495748; crit.p = PressureUnit(1160, UNIT_KPA); crit.T = 619.15; crit.v = 1.0/crit.rho; // Load up a new structure with reducing parameters reduce.rho = 292.570762680819; reduce.p = PressureUnit(1161.46, UNIT_KPA); reduce.T = 619.23462341; reduce.v = 1.0/reduce.rho; preduce = &reduce; // Other fluid parameters params.molemass=370.7697; params.Ttriple=226; params.accentricfactor=0.658; params.R_u = 8.314472; // Calculated at Tmin params.ptriple = 0.0275116653286; // Limits of EOS limits.Tmin = 300; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 484.050286854327, rho0 = 727.981991948461, R_ = params.R_u/params.molemass, m, c, H0 = 115.63073039269375, /// kJ/kmol S0 = 0.14017795179966980, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*reduce.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi0list.push_back(new phi0_cp0_constant(u0_v[1],reduce.T,T0)); phi_BC * phi0_cp0_poly_ = new phi0_cp0_poly(u0_v,n0_v,reduce.T,T0,2,4); phi0list.push_back(phi0_cp0_poly_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, E.W. Lemmon, \"Multiparameter equations of state for selected siloxanes\", Fluid Phase Equilibria 244 (2006) 193-211."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("D5"); aliases.push_back(std::string("Decamethylcyclopentasiloxane")); REFPROPname.assign("D5"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2006"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//MD2M DecamethyltetrasiloxaneClass::DecamethyltetrasiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.33840331,-2.62939393,0.4398383,-0.53496715,0.1818844,0.00040774609,1.13444506,0.05774631,-0.5917498,-0.11020225,-0.034942635,0.007646298}; const double u0[]={0.0,331.9,777.1,1813.8,521.4,795.1}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); // Critical parameters crit.rho=284.171639662027; crit.p= PressureUnit(1227, UNIT_KPA); crit.T=599.4; crit.v = 1.0/crit.rho; // Other fluid parameters params.molemass=310.685; params.Ttriple=205.2; params.accentricfactor=0.668; params.R_u = 8.314472; params.ptriple = 4.79509942923e-07; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 467.506025761878, rho0 = 666.100681528704, R_ = params.R_u/params.molemass, m, c, H0 = 133.21777124359349, /// kJ/kmol S0 = 0.16466470350893656, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*crit.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi_BC * phi0_cp0_AlyLee_ = new phi0_cp0_AlyLee(u0_v,crit.T,T0,params.R_u); phi0list.push_back(phi0_cp0_AlyLee_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, \"Multiparameter equations of state for siloxanes: [(CH3)3-Si-O1/2]2-[O-Si-(CH3)2]i=1,...,3, and [O-Si-(CH3)2]6,\", Fluid Phase Equilibria 263 (2008) 115-130."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MD2M"); aliases.push_back(std::string("Decamethyltetrasiloxane")); REFPROPname.assign("MD2M"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2008"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//MD3M DodecamethylpentasiloxaneClass::DodecamethylpentasiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.20540386,-2.42914797,0.69016432,-0.69268041,0.18506046,0.00031161436,0.99862519,0.074229034,-0.80259136,-0.20865337,-0.036461791,0.019174051}; const double u0[]={0.0,463.2,957.2,2117.1,738.3,908.5}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); // Critical parameters crit.rho=263.921879135305; crit.p= PressureUnit(945, UNIT_KPA); crit.T=628.36; crit.v = 1.0/crit.rho; // Other fluid parameters params.molemass=384.839; params.Ttriple=192; params.accentricfactor=0.722; params.R_u = 8.314472; params.ptriple = 2.05774764356e-10; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 503.022623775204, rho0 = 653.620754664036, R_ = params.R_u/params.molemass, m, c, H0 = 113.59777719014585, /// kJ/kmol S0 = 0.13288817176242626, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*crit.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi_BC * phi0_cp0_AlyLee_ = new phi0_cp0_AlyLee(u0_v,crit.T,T0,params.R_u); phi0list.push_back(phi0_cp0_AlyLee_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, \"Multiparameter equations of state for siloxanes: [(CH3)3-Si-O1/2]2-[O-Si-(CH3)2]i=1,...,3, and [O-Si-(CH3)2]6,\", Fluid Phase Equilibria 263 (2008) 115-130."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MD3M"); aliases.push_back(std::string("Dodecamethylpentasiloxane")); REFPROPname.assign("MD3M"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2008"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//MD4M TetradecamethylhexasiloxaneClass::TetradecamethylhexasiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.18492421,-1.87465636,-0.06571351,-0.61812689,0.19535804,0.0005067874,1.23544082,0.049462708,-0.73685283,-0.19991438,-0.055118673,0.028325885}; // divided by R_u to give cp0/R_u terms like in Lemmon 2000 const double u0[]={0.0,-2.41398371417933,0.268026640777671,-0.000157724988429812,3.44219091723443E-08}; const double n0[]={0.0,0,1,2,3}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> n0_v(n0,n0+sizeof(n0)/sizeof(double)); // Critical parameters crit.rho = 278.177742672768; crit.p = PressureUnit(877.0, UNIT_KPA); crit.T =653.2; crit.v = 1.0/crit.rho; // Load up a new structure with reducing parameters reduce.rho = 285.657653221363; reduce.p = PressureUnit(877.47, UNIT_KPA); reduce.T = 653.2; reduce.v = 1.0/reduce.rho; preduce = &reduce; // Other fluid parameters params.molemass=458.99328; params.Ttriple=214.15; params.accentricfactor=0.82464714726429245; params.R_u = 8.314472; // Caution calculated at Tmin params.ptriple = 0.00109337696739; // Limits of EOS limits.Tmin = 300; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 532.723355998617, rho0 = 651.644500503887, R_ = params.R_u/params.molemass, m, c, H0 = 103.76393935240931, /// kJ/kmol S0 = 0.11760337078430246, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*reduce.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi0list.push_back(new phi0_cp0_constant(u0_v[1],reduce.T,T0)); phi_BC * phi0_cp0_poly_ = new phi0_cp0_poly(u0_v,n0_v,reduce.T,T0,2,4); phi0list.push_back(phi0_cp0_poly_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, E.W. Lemmon, \"Multiparameter equations of state for selected siloxanes\", Fluid Phase Equilibria 244 (2006) 193-211."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MD4M"); aliases.push_back(std::string("Tetradecamethylhexasiloxane")); REFPROPname.assign("MD4M"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2006"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
R1234yfClass::R1234yfClass() { static const double n[]={ 0, //[0] 0.04592563, //[1] 1.546958, //[2] -2.355237, //[3] -0.4827835, //[4] 0.1758022, //[5] -1.210006, //[6] -0.6177084, //[7] 0.6805262, //[8] -0.6968555, //[9] -0.02695779, //[10] 1.389966, //[11] -0.4777136, //[12] -0.1975184, //[13] -1.147646, //[14] 0.0003428541 //[15] }; static const double d[]={ 0, //[0] 4, //[1] 1, //[2] 1, //[3] 2, //[4] 3, //[5] 1, //[6] 3, //[7] 2, //[8] 2, //[9] 7, //[10] 1, //[11] 1, //[12] 3, //[13] 3, //[14] 2, //[15] }; static const double t[]={ 0, //[0] 1, //[1] 0.32, //[2] 0.929, //[3] 0.94, //[4] 0.38, //[5] 2.28, //[6] 1.76, //[7] 0.97, //[8] 2.44, //[9] 1.05, //[10] 1.4, //[11] 3, //[12] 3.5, //[13] 1, //[14] 3.5 //[15] }; static const double c[]={ 0, //[0] 0, //[1] 0, //[2] 0, //[3] 0, //[4] 0, //[5] 2, //[6] 2, //[7] 1, //[8] 2, //[9] 1, //[10] }; static const double alpha[]={ 0, //[0] 0, //[1] 0, //[2] 0, //[3] 0, //[4] 0, //[5] 0, //[6] 0, //[7] 0, //[8] 0, //[9] 0, //[10] 1.02, //[11] 1.336, //[12] 1.055, //[13] 5.84, //[14] 16.2, //[15] }; static const double beta[]={ 0, //[0] 0, //[1] 0, //[2] 0, //[3] 0, //[4] 0, //[5] 0, //[6] 0, //[7] 0, //[8] 0, //[9] 0, //[10] 1.42, //[11] 2.31, //[12] 0.89, //[13] 80, //[14] 108, //[15] }; static const double gamma[]={ 0, //[0] 0, //[1] 0, //[2] 0, //[3] 0, //[4] 0, //[5] 0, //[6] 0, //[7] 0, //[8] 0, //[9] 0, //[10] 1.13, //[11] 0.67, //[12] 0.46, //[13] 1.28, //[14] 1.2 //[15] }; static const double epsilon[]={ 0, //[0] 0, //[1] 0, //[2] 0, //[3] 0, //[4] 0, //[5] 0, //[6] 0, //[7] 0, //[8] 0, //[9] 0, //[10] 0.712, //[11] 0.91, //[12] 0.677, //[13] 0.718, //[14] 1.64 //[15] }; static const double v0[]={ 0.0, //[0] 7.549, //[1] 1.537, //[2] 2.030, //[3] 7.455, //[4] }; static const double u0[]={ // each of the ui terms are divided by the critical temp {fie on you Mr. EOS-maker} 0.0, //[0] 718/367.85, //[1] 877/367.85, //[2] 4465/367.85,//[3] 1755/367.85,//[4] }; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> v0_v(v0,v0+sizeof(v0)/sizeof(double)); phirlist.push_back(new phir_power(n,d,t,c,1,10,11)); phirlist.push_back(new phir_gaussian(n,d,t,alpha,epsilon,beta,gamma,11,15,16)); phi0list.push_back(new phi0_lead(-12.837928,8.042605)); phi0list.push_back(new phi0_logtau(4.944)); phi0list.push_back(new phi0_Planck_Einstein(v0_v,u0_v,1,4)); // Critical parameters crit.rho = 475.553441976; crit.p = PressureUnit(3382.2, UNIT_KPA); crit.T = 367.85; crit.v = 1.0/crit.rho; // Other fluid parameters params.molemass = 114.0415928; params.Ttriple = 220; params.ptriple = 31.5093083629; params.accentricfactor = 0.276; params.R_u = 8.314472; // Limits of EOS limits.Tmin = 220; limits.Tmax = 410.0; limits.pmax = 30000.0; limits.rhomax = 11.64*params.molemass; EOSReference.assign("Richter, M. and M.O. McLinden and E.W. Lemmon, \"Thermodynamic Properties of 2,3,3,3-Tetrafluoroprop-1-ene" "(R1234yf): Vapor Pressure and p-rho-T Measurements and an Equation of State\"" ", J. Chem. Eng. Data, v. 56, 2011, pp 3254-3264"); TransportReference.assign("Surface Tension: Katsuyuki Tanaka, Yukihiro Higashi, \"Thermodynamic properties of HFO-1234yf (2,3,3,3-tetrafluoropropene)\", International Journal of Refrigeration 33 (2010) 474-479"); aliases.push_back("R1234YF"); name.assign("R1234yf"); BibTeXKeys.EOS = "Richter-JCED-2011"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; BibTeXKeys.CONDUCTIVITY = "Perkins-JCED-2011"; }
//D4 OctamethylcyclotetrasiloxaneClass::OctamethylcyclotetrasiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.05392408,-2.22981918,0.77573923,-0.6937405,0.18721557,0.0004219333,0.70301835,0.047851888,-0.8025348,-0.18968872,-0.022211781,0.0060103354}; // divided by R_u to give cp0/R_u terms like in Lemmon 2000 const double u0[]={0.0,-2.19568963609475,0.171652511428266,-0.000119093551580906,3.60816657991031E-08}; const double n0[]={0.0,0,1,2,3}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> n0_v(n0,n0+sizeof(n0)/sizeof(double)); // Critical parameters crit.rho = 305.78949222528007; crit.p = PressureUnit(1332.0, UNIT_KPA); crit.T = 586.5; crit.v = 1.0/crit.rho; // Load up a new structure with reducing parameters reduce.rho = 307.033590673606; reduce.p = PressureUnit(1332, UNIT_KPA); reduce.T = 586.49127187; reduce.v = 1.0/reduce.rho; preduce = &reduce; // Other fluid parameters params.molemass=296.61576; params.Ttriple=290.25; params.accentricfactor=0.592; params.R_u = 8.314472; // Caution calculated at Tmin params.ptriple = 0.069609237623675213; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 448.503917912145, rho0 = 764.965030584005, R_ = params.R_u/params.molemass, m, c, H0 = -230.50524687772113, /// kJ/kmol S0 = -0.86432336859980707, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*reduce.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi0list.push_back(new phi0_cp0_constant(u0_v[1],reduce.T,T0)); phi_BC * phi0_cp0_poly_ = new phi0_cp0_poly(u0_v,n0_v,reduce.T,T0,2,4); phi0list.push_back(phi0_cp0_poly_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, E.W. Lemmon, \"Multiparameter equations of state for selected siloxanes\", Fluid Phase Equilibria 244 (2006) 193-211."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("D4"); aliases.push_back(std::string("Octamethylcyclotetrasiloxane")); REFPROPname.assign("D4"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2006"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//MDM OctamethyltrisiloxaneClass::OctamethyltrisiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.19735372,-2.40380622,0.3256564,-0.19971259,0.11206277,0.00015893999,0.51234323,-0.020660361,-0.38978114,-0.1186931,-0.037203537,0.018359984}; const double u0[]={0.0,275.1,612.9,1829.6,413.0,802.6}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); // Critical parameters crit.rho = 256.739908797209; crit.p = PressureUnit(1415, UNIT_KPA); crit.T = 564.09; crit.v = 1.0/crit.rho; // Other fluid parameters params.molemass = 236.53146; params.Ttriple = 187.2; params.accentricfactor = 0.5297; params.R_u = 8.314472; params.ptriple = 7.9911106087e-07; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 425.676967, R_ = 8.314472/params.molemass, rho0 = 675.2187471, m, c, H0 = 156.46565194801141, /// kJ/kmol S0 = 0.20329670191815147, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*crit.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi_BC * phi0_cp0_AlyLee_ = new phi0_cp0_AlyLee(u0_v,crit.T,T0,params.R_u); phi0list.push_back(phi0_cp0_AlyLee_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, \"Multiparameter equations of state for siloxanes: [(CH3)3-Si-O1/2]2-[O-Si-(CH3)2]i=1,...,3, and [O-Si-(CH3)2]6,\", Fluid Phase Equilibria 263 (2008) 115-130."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MDM"); aliases.push_back(std::string("Octamethyltrisiloxane")); REFPROPname.assign("MDM"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2008"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//D6 DodecamethylcyclohexasiloxaneClass::DodecamethylcyclohexasiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.69156186,-3.37962568,0.38609039,0.064598995,0.10589012,0.000045456825,0.74169279,-0.088102648,-0.17373336,-0.10951368,-0.062695695,0.037459986}; const double u0[]={0.0,468.7,981.2,1792.1,686.7,786.8}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); // Critical parameters crit.rho=279.095729841367; crit.p= PressureUnit(961, UNIT_KPA); crit.T=645.78; crit.v = 1.0/crit.rho; // Other fluid parameters params.molemass=444.924; params.Ttriple=270.2; params.accentricfactor=0.736; params.R_u = 8.314472; params.ptriple = 0.000159753038201; // Limits of EOS limits.Tmin = params.Ttriple; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 518.109977174843, rho0 = 704.948896461078, R_ = params.R_u/params.molemass, m, c, H0 = 102.00241183448354, /// kJ/kmol S0 = 0.11646477379595818, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*crit.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi_BC * phi0_logtau_ = new phi0_logtau(-1.0); phi0list.push_back(phi0_logtau_); phi_BC * phi0_cp0_AlyLee_ = new phi0_cp0_AlyLee(u0_v,crit.T,T0,params.R_u); phi0list.push_back(phi0_cp0_AlyLee_); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, \"Multiparameter equations of state for siloxanes: [(CH3)3-Si-O1/2]2-[O-Si-(CH3)2]i=1,...,3, and [O-Si-(CH3)2]6,\", Fluid Phase Equilibria 263 (2008) 115-130."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("D6"); aliases.push_back(std::string("Dodecamethylcyclohexasiloxane")); REFPROPname.assign("D6"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2008"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }
//MM HexamethyldisiloxaneClass::HexamethyldisiloxaneClass() { const double d[] = { 0, 1.0, //[1] 1.0, //[2] 1.0, //[3] 2.0, //[4] 3.0, //[5] 7.0, //[6] 2.0, //[7] 5.0, //[8] 1.0, //[9] 4.0, //[10] 3.0, //[11] 4.0, //[12] }; const double t[] = { 0, 0.25, //[1] 1.125, //[2] 1.5, //[3] 1.375, //[4] 0.25, //[5] 0.875, //[6] 0.625, //[7] 1.75, //[8] 3.625, //[9] 3.625, //[10] 14.5, //[11] 12.0, //[12] }; const double l[] = { 0, 0.0, //[1] 0.0, //[2] 0.0, //[3] 0.0, //[4] 0.0, //[5] 0.0, //[6] 1.0, //[7] 1.0, //[8] 2.0, //[9] 2.0, //[10] 3.0, //[11] 3.0, //[12] }; const double n[]={0.0,1.01686012,-2.19713029,0.75443188,-0.68003426,0.19082162,0.0010530133,0.6284595,0.030903042,-0.83948727,-0.20262381,-0.035131597,0.025902341}; // divided by R_u to give cp0/R_u terms like in Lemmon 2000 const double u0[]={0.0,6.24140654992885,0.0891626070783569,-5.00332432414229E-05,8.41905535312405E-09}; const double n0[]={0.0,0,1,2,3}; std::vector<double> u0_v(u0,u0+sizeof(u0)/sizeof(double)); std::vector<double> n0_v(n0,n0+sizeof(n0)/sizeof(double)); // Critical parameters crit.rho = 258.151840734; crit.p = PressureUnit(1939.0, UNIT_KPA); crit.T = 518.75; crit.v = 1.0/crit.rho; // Load up a new structure with reducing parameters reduce.rho = 1.87467076*162.37752; reduce.p = PressureUnit(1939.39, UNIT_KPA); reduce.T = 518.69997204; reduce.v = 1.0/reduce.rho; preduce = &reduce; // Other fluid parameters params.molemass = 162.37752; params.Ttriple = 204.93; params.accentricfactor = 0.418; params.R_u = 8.314472; params.ptriple = 1.3169852229396559; // Limits of EOS limits.Tmin = 273; limits.Tmax = 500.0; limits.pmax = 100000.0; limits.rhomax = 1000000.0*params.molemass; phirlist.push_back(new phir_power(n,d,t,l,1,12,13)); double T0 = 373.400735665744, rho0 = 681.39621296599, R_ = params.R_u/params.molemass, m, c, H0 = -162.96488124949261, /// kJ/kmol S0 = -0.52817673665136178, /// kJ/kmol/K tau0=crit.T/T0, delta0=rho0/crit.rho; // log(delta)+c+m*tau /// c is the constant term c=-S0/R_-1+log(tau0/delta0);/*<< from the leading term*/ /// m multiplies the tau term in the leading term (slope) m=H0/(R_*reduce.T); /*<< from the leading term */ phi_BC * phi0_lead_ = new phi0_lead(c,m); phi0list.push_back(phi0_lead_); phi0list.push_back(new phi0_logtau(-1.0)); phi0list.push_back(new phi0_cp0_constant(u0[1],reduce.T,T0)); phi0list.push_back(new phi0_cp0_poly(u0_v,n0_v,reduce.T,T0,2,4)); EOSReference.assign("Colonna, P., N.R. Nannan, A. Guardone, E.W. Lemmon, \"Multiparameter equations of state for selected siloxanes\", Fluid Phase Equilibria 244 (2006) 193-211."); TransportReference.assign("Using ECS in fully predictive mode"); name.assign("MM"); aliases.push_back(std::string("Hexamethyldisiloxane")); REFPROPname.assign("MM"); ECSReferenceFluid = "Nitrogen"; BibTeXKeys.EOS = "Colonna-FPE-2006"; BibTeXKeys.SURFACE_TENSION = "Mulero-JPCRD-2012"; }