35 m_iState(WATER_LIQUID),
39 m_allowGasPhase(false)
55 m_iState(WATER_LIQUID),
59 m_allowGasPhase(false)
72 std::string inputFile, std::string
id) :
77 m_iState(WATER_LIQUID),
81 m_allowGasPhase(false)
94 const XML_Node& phaseRoot,
bool spInstalled) :
99 m_iState(WATER_LIQUID),
103 m_allowGasPhase(false)
123 m_iState(WATER_LIQUID),
124 EW_Offset(b.EW_Offset),
125 SW_Offset(b.SW_Offset),
126 m_verbose(b.m_verbose),
127 m_allowGasPhase(b.m_allowGasPhase)
179 return (
PDSS*) kPDSS;
199 const XML_Node& phaseNode, std::string
id)
221 std::string inputFile, std::string
id)
224 if (inputFile.size() == 0) {
226 "input file is null");
229 std::ifstream fin(path.c_str());
231 throw CanteraError(
"PDSS_Water::initThermo",
"could not open "
232 +path+
" for reading.");
244 "ERROR: Can not find phase named " +
245 id +
" in file named " + inputFile);
261 "could not create new substance object.");
267 m_mw = 2 * 1.00794 + 15.9994;
272 doublereal T = 298.15;
276 doublereal presLow = 1.0E-2;
277 doublereal oneBar = 1.0E5;
278 doublereal dens = 1.0E-9;
284 if (s != 188.835E3) {
292 if (h != -241.826E6) {
424 int waterState = WATER_LIQUID;
426 waterState = WATER_SUPERCRIT;
436 std::string stateString =
"T = " +
439 "Failed to set water SS state: " + stateString);
449 "Water State isn't liquid or crit");
470 doublereal dens_save =
m_dens;
471 doublereal tt =
m_temp - 0.04;
474 throw CanteraError(
"PDSS_Water::dthermalExpansionCoeffdT",
475 "unable to solve for the density at T = " +
fp2str(tt) +
", P = " +
fp2str(pres));
480 doublereal val = (val2 - vald) / 0.04;
541 if (temp < m_sub->Tcrit()) {
555 doublereal pp =
m_sub->
psat(t, WATER_LIQUID);