1 // Reaktoro is a unified framework for modeling chemically reactive systems. 2 // 3 // Copyright (C) 2014-2015 Allan Leal 4 // 5 // This program is free software: you can redistribute it and/or modify 6 // it under the terms of the GNU General Public License as published by 7 // the Free Software Foundation, either version 3 of the License, or 8 // (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 // You should have received a copy of the GNU General Public License 16 // along with this program. If not, see <http://www.gnu.org/licenses/>. 17 18 #pragma once 19 20 // Reaktoro includes (modified DM 11.05.2016) 21 #include "Common/ThermoScalar.hpp" 22 23 namespace ThermoFun { 24 25 struct WaterThermoState 26 { 27 /// The temperature of water (in units of K) 28 Reaktoro_::ThermoScalar temperature; 29 30 /// The specific volume of water (in units of m3/kg) 31 Reaktoro_::ThermoScalar volume; 32 33 /// The specific entropy of water (in units of J/(kg*K)) 34 Reaktoro_::ThermoScalar entropy; 35 36 /// The specific Helmholtz free energy of water (in units of J/kg) 37 Reaktoro_::ThermoScalar helmholtz; 38 39 /// The specific internal energy of water (in units of J/kg) 40 Reaktoro_::ThermoScalar internal_energy; 41 42 /// The specific enthalpy of water (in units of J/kg) 43 Reaktoro_::ThermoScalar enthalpy; 44 45 /// The specific Gibbs free energy of water (in units of J/kg) 46 Reaktoro_::ThermoScalar gibbs; 47 48 /// The specific isochoric heat capacity of water (in units of J/(kg*K)) 49 Reaktoro_::ThermoScalar cv; 50 51 /// The specific isobaric heat capacity of water (in units of J/(kg*K)) 52 Reaktoro_::ThermoScalar cp; 53 54 /// The specific density of water (in units of kg/m3) 55 Reaktoro_::ThermoScalar density; 56 57 /// The first-order partial derivative of density with respect to temperature (in units of (kg/m3)/K) 58 Reaktoro_::ThermoScalar densityT; 59 60 /// The first-order partial derivative of density with respect to pressure (in units of (kg/m3)/Pa) 61 Reaktoro_::ThermoScalar densityP; 62 63 /// The second-order partial derivative of density with respect to temperature (in units of (kg/m3)/(K*K)) 64 Reaktoro_::ThermoScalar densityTT; 65 66 /// The second-order partial derivative of density with respect to temperature and pressure (in units of (kg/m3)/(K*Pa)) 67 Reaktoro_::ThermoScalar densityTP; 68 69 /// The second-order partial derivative of density with respect to pressure (in units of (kg/m3)/(Pa*Pa)) 70 Reaktoro_::ThermoScalar densityPP; 71 72 /// The pressure of water (in units of Pa) 73 Reaktoro_::ThermoScalar pressure; 74 75 /// The first-order partial derivative of pressure with respect to temperature (in units of Pa/K) 76 Reaktoro_::ThermoScalar pressureT; 77 78 /// The first-order partial derivative of pressure with respect to density (in units of Pa/(kg/m3)) 79 Reaktoro_::ThermoScalar pressureD; 80 81 /// The second-order partial derivative of pressure with respect to temperature (in units of Pa/(K*K)) 82 Reaktoro_::ThermoScalar pressureTT; 83 84 /// The second-order partial derivative of pressure with respect to temperature and density (in units of Pa/(K*kg/m3)) 85 Reaktoro_::ThermoScalar pressureTD; 86 87 /// The second-order partial derivative of pressure with respect to density (in units of Pa/((kg/m3)*(kg/m3))) 88 Reaktoro_::ThermoScalar pressureDD; 89 }; 90 91 } // namespace Reaktoro 92