44 VPSSMgr(right.m_vptp_ptr, right.m_spthermo),
92 for (
size_t k = 0; k <
m_kk; k++) {
115 copy(
m_V0.begin(),
m_V0.end(), vol);
165 for (
size_t k = 1; k <
m_kk; k++) {
172 #ifdef DEBUG_MODE_NOT
174 if (fabs(
m_h0_RT[k] - h) > 1.0E-4) {
175 printf(
" VPSSMgr_Water_HKFT::_updateRefStateThermo:: we have a discrepancy\n");
182 for (
size_t k = 1; k <
m_kk; k++) {
199 for (
size_t k = 1; k <
m_kk; k++) {
229 for (
size_t k = 1; k <
m_kk; k++) {
233 "No species Node for species " + sss[k]);
238 "No standardState Node for species " + sss[k]);
240 std::string model =
lowercase((*ss)[
"model"]);
241 if (model !=
"hkft") {
243 "Standard state model for a solute species isn't "
244 "the HKFT standard state model: " + sss[k]);
251 const XML_Node*
const phaseNode_ptr)
257 std::string sName = speciesNode[
"name"];
258 throw CanteraError(
"VPSSMgr_Water_HKFT::installSpecies",
259 "No standardState Node for species " + sName);
265 string xn = speciesNode[
"name"];
266 if (xn !=
"H2O(L)") {
267 throw CanteraError(
"VPSSMgr_Water_HKFT::installSpecies",
268 "h2o wrong name: " + xn);
271 std::string model = (*ss)[
"model"];
272 if (model !=
"waterIAPWS" && model !=
"waterPDSS") {
273 throw CanteraError(
"VPSSMgr_Water_HKFT::installSpecies",
274 "wrong SS mode: " + model);
284 throw CanteraError(
"VPSSMgr_Water_HKFT::installSpecies",
285 "failed dynamic cast");
291 std::string model = (*ss)[
"model"];
292 if (model !=
"HKFT") {
293 std::string sName = speciesNode[
"name"];
295 "standardState model for species isn't "
303 throw CanteraError(
"VPSSMgr_Water_HKFT::installSpecies",
304 "failed dynamic cast");
318 return cVPSSMGR_WATER_HKFT;