24#ifndef DUMUX_HEAVYOIL_HH
25#define DUMUX_HEAVYOIL_HH
43template <
class Scalar>
56 {
return "heavyoil"; }
88 DUNE_THROW(Dune::NotImplemented,
"tripleTemperature for heavyoil");
96 DUNE_THROW(Dune::NotImplemented,
"triplePressure for heavyoil");
103 const Scalar C = 139.6612;
110 return A+(B/mW)-(C/pow((mW+D),E));
115 const Scalar A = -7.4120e-2;
116 const Scalar B = -7.5041e-3;
118 const Scalar D = 9.0180e-2;
126 return A*pow(deltaSpecificGravity,2) + B*deltaSpecificGravity + C*pow(deltaMolecularWeight,2) + D*deltaMolecularWeight
127 + E*deltaSpecificGravity*deltaMolecularWeight;
132 const Scalar A = -6.1294e-2;
133 const Scalar B = -7.0862e-2;
134 const Scalar C = 6.1976e-1;
135 const Scalar D = -5.7090e-2;
136 const Scalar E = -8.4583e-2;
143 return A*pow(deltaSpecificGravity,2) + B*deltaSpecificGravity + C*pow(deltaMolecularWeight,2) + D*deltaMolecularWeight
144 + E*deltaSpecificGravity*deltaMolecularWeight;
149 const Scalar A = 1.8270e-1;
150 const Scalar B = -2.4864e-1;
152 const Scalar D = -2.2389e-1;
160 return A*pow(deltaSpecificGravity,2) + B*deltaSpecificGravity + C*pow(deltaMolecularWeight,2) + D*deltaMolecularWeight
161 + E*deltaSpecificGravity*deltaMolecularWeight;
189 const Scalar B = 45.66e-2;
190 const Scalar C = 16.59e-3;
232 const Scalar B = 2830.065;
233 const Scalar C = 42.95101;
238 return 100*1.334*pow(10.0, (A - (B/(T + C))));
244 const Scalar B = 2830.065;
245 const Scalar C = 42.95101;
250 return Scalar ((B/(A-log10(P/100*1.334)))-C);
275 const Scalar sqrt1over3 = sqrt(1./3.);
307 * (3.978 * Tr1 - 3.958 + 1.555*log(p_crit * 1e-5 ) )
314 const Scalar DH_vap = DH_v_boil * pow(((1.0 - Tr2)/(1.0 - Tr1)), n);
365 Scalar rhoReference = 906.;
366 Scalar compressCoeff = 1.e-8;
367 Scalar expansCoeff = 1.e-7;
423 Fp0*(0.807*pow(Tr,0.618)
424 - 0.357*exp(-0.449*Tr)
425 + 0.34*exp(-4.058*Tr)
428 return eta_xi/xi/1e7;
453 return ((pow(10,0.10231*pow(API,2)-3.9464*API+46.5037))*(pow(temperatureFahrenheit,-0.04542*pow(API,2)+1.70405*API-19.18)))*0.001;
Interface for components that have a gas state.
Interface for components that have a liquid state.
A central place for various physical constants occuring in some equations.
Relations valid for an ideal gas.
std::string temperature() noexcept
I/O name of temperature for equilibrium models.
Definition: name.hh:51
std::string pressure(int phaseIdx) noexcept
I/O name of pressure for multiphase systems.
Definition: name.hh:34
Base class for all components Components provide the thermodynamic relations for the liquid,...
Definition: components/base.hh:59
Scalar Scalar
export the scalar type used by the component
Definition: components/base.hh:63
Interface for components that have a gas state.
Definition: gas.hh:41
Properties of the component heavyoil.
Definition: heavyoil.hh:48
static Scalar liquidViscosity(Scalar temperature, Scalar pressure)
The dynamic viscosity of pure heavyoil.
Definition: heavyoil.hh:439
static constexpr Scalar molarMass()
The molar mass in of heavyoil.
Definition: heavyoil.hh:61
static Scalar vaporPressure(Scalar temperature)
The saturation vapor pressure in of.
Definition: heavyoil.hh:229
static constexpr Scalar refComponentMolecularWeight()
The MolecularWeight in of refComponent.
Definition: heavyoil.hh:67
static Scalar perbutationFactorCriticalTemperature()
Definition: heavyoil.hh:130
static Scalar liquidHeatCapacity(const Scalar temperature, const Scalar pressure)
Specific heat cap of liquid heavyoil .
Definition: heavyoil.hh:465
static constexpr Scalar molecularWeight()
The molar mass in of heavyoil.
Definition: heavyoil.hh:74
static Scalar refComponentCriticalPressure()
Definition: heavyoil.hh:186
static constexpr bool gasIsIdeal()
Returns true if the gas phase is assumed to be ideal.
Definition: heavyoil.hh:392
static Scalar liquidMolarDensity(Scalar temperature, Scalar pressure)
The molar density of pure heavyoil in at a given pressure and temperature.
Definition: heavyoil.hh:380
static Scalar perbutationFactorBoilingTemperature()
Definition: heavyoil.hh:113
static Scalar tripleTemperature()
Returns the temperature at heavyoil's triple point.
Definition: heavyoil.hh:86
static Scalar criticalPressure()
Returns the critical pressure of heavyoil.
Definition: heavyoil.hh:218
static Scalar gasMolarDensity(Scalar temperature, Scalar pressure)
The molar density of pure heavyoil in , depending on pressure and temperature.
Definition: heavyoil.hh:351
static Scalar vaporTemperature(Scalar pressure)
Definition: heavyoil.hh:241
static constexpr bool gasIsCompressible()
Returns true if the gas phase is assumed to be compressible.
Definition: heavyoil.hh:386
static Scalar liquidThermalConductivity(Scalar temperature, Scalar pressure)
Thermal conductivity of heavy oil.
Definition: heavyoil.hh:479
static constexpr Scalar specificGravity()
The Specific Gravity of heavyoil.
Definition: heavyoil.hh:80
static Scalar gasViscosity(Scalar temperature, Scalar pressure, bool regularize=true)
The dynamic viscosity of heavyoil vapor.
Definition: heavyoil.hh:408
static Scalar criticalTemperature()
Returns the critical temperature of heavyoil.
Definition: heavyoil.hh:209
static Scalar gasDensity(Scalar temperature, Scalar pressure)
The (ideal) gas density of heavyoil vapor at a given temperature and pressure .
Definition: heavyoil.hh:340
static Scalar triplePressure()
Returns the pressure at heavyoil's triple point.
Definition: heavyoil.hh:94
static Scalar refComponentCriticalTemperature()
Definition: heavyoil.hh:175
static constexpr bool liquidIsCompressible()
Returns true if the liquid phase is assumed to be compressible.
Definition: heavyoil.hh:398
static Scalar liquidEnthalpy(const Scalar temperature, const Scalar pressure)
Specific enthalpy of liquid heavyoil .
Definition: heavyoil.hh:259
static Scalar refComponentBoilingTemperature()
Definition: heavyoil.hh:164
static std::string name()
A human readable name for heavyoil.
Definition: heavyoil.hh:55
static Scalar perbutationFactorCriticalPressure()
Definition: heavyoil.hh:147
static Scalar refComponentSpecificGravity()
Definition: heavyoil.hh:99
static Scalar heatVap(Scalar temperature, const Scalar pressure)
Latent heat of vaporization for heavyoil .
Definition: heavyoil.hh:292
static Scalar boilingTemperature()
Returns the temperature at heavyoil's boiling point (1 atm)
Definition: heavyoil.hh:200
static Scalar gasEnthalpy(Scalar temperature, Scalar pressure)
Specific enthalpy of heavyoil vapor .
Definition: heavyoil.hh:329
static Scalar liquidDensity(Scalar temperature, Scalar pressure)
The density of pure heavyoil at a given pressure and temperature .
Definition: heavyoil.hh:360
Interface for components that have a liquid state.
Definition: liquid.hh:41
A central place for various physical constants occuring in some equations.
Definition: constants.hh:39
static constexpr Scalar R
The ideal gas constant .
Definition: constants.hh:44
Relations valid for an ideal gas.
Definition: idealgas.hh:37
static constexpr Scalar density(Scalar avgMolarMass, Scalar temperature, Scalar pressure)
The density of the gas in , depending on pressure, temperature and average molar mass of the gas.
Definition: idealgas.hh:49
static constexpr Scalar molarDensity(Scalar temperature, Scalar pressure)
The molar density of the gas , depending on pressure and temperature.
Definition: idealgas.hh:70
Base class for all components Components provide the thermodynamic relations for the liquid,...