A compositional single phase fluid system consisting of two components, which are H2O and NaCl. More...
#include <dumux/material/fluidsystems/brine.hh>
A compositional single phase fluid system consisting of two components, which are H2O and NaCl.
Public Types | |
using | H2O = H2OType |
export the involved components More... | |
using | NaCl = Dumux::Components::NaCl< Scalar > |
Static Public Member Functions | |
static const std::string | phaseName (int phaseIdx=liquidPhaseIdx) |
Return the human readable name of the phase. More... | |
static constexpr bool | isMiscible () |
Returns whether the fluids are miscible. More... | |
static constexpr bool | isGas (int phaseIdx=liquidPhaseIdx) |
Return whether a phase is gaseous. More... | |
static bool | isIdealMixture (int phaseIdx=liquidPhaseIdx) |
Returns true if and only if a fluid phase is assumed to be an ideal mixture. More... | |
static bool | isCompressible (int phaseIdx=liquidPhaseIdx) |
Returns true if and only if a fluid phase is assumed to be compressible. More... | |
static bool | isIdealGas (int phaseIdx=liquidPhaseIdx) |
Returns true if and only if a fluid phase is assumed to be an ideal gas. More... | |
static std::string | componentName (int compIdx) |
Return the human readable name of a component. More... | |
static Scalar | molarMass (int compIdx) |
Return the molar mass of a component in \(\mathrm{[kg/mol]}\). More... | |
static void | init () |
Initialize the fluid system's static parameters generically. More... | |
static void | init (Scalar tempMin, Scalar tempMax, unsigned nTemp, Scalar pressMin, Scalar pressMax, unsigned nPress) |
Initialize the fluid system's static parameters using problem specific temperature and pressure ranges. More... | |
template<class FluidState > | |
static Scalar | density (const FluidState &fluidState, int phaseIdx=liquidPhaseIdx) |
Return the phase density [kg/m^3]. More... | |
template<class FluidState > | |
static Scalar | fugacityCoefficient (const FluidState &fluidState, int phaseIdx, int compIdx) |
Calculate the fugacity coefficient \(\mathrm{[Pa]}\) of an individual component in a fluid phase. More... | |
template<class FluidState > | |
static Scalar | viscosity (const FluidState &fluidState, int phaseIdx=liquidPhaseIdx) |
Return the viscosity of the phase. More... | |
template<class FluidState > | |
static Scalar | vaporPressure (const FluidState &fluidState, int compIdx) |
Vapor pressure of a component \(\mathrm{[Pa]}\). More... | |
template<class FluidState > | |
static Scalar | enthalpy (const FluidState &fluidState, int phaseIdx) |
Given a phase's composition, temperature and pressure, return its specific enthalpy \(\mathrm{[J/kg]}\). More... | |
template<class FluidState > | |
static Scalar | componentEnthalpy (const FluidState &fluidState, int phaseIdx, int componentIdx) |
Returns the specific enthalpy \(\mathrm{[J/kg]}\) of a component in a specific phase. More... | |
template<class FluidState > | |
static Scalar | molarDensity (const FluidState &fluidState, int phaseIdx=liquidPhaseIdx) |
The molar density \(\rho_{mol,\alpha}\) of the fluid phase \(\alpha\) in \(\mathrm{[mol/m^3]}\). More... | |
template<class FluidState > | |
static Scalar | diffusionCoefficient (const FluidState &fluidState, int phaseIdx, int compIdx) |
Returns the diffusion coefficient \(\mathrm{[-]}\) of a component in a phase. More... | |
template<class FluidState > | |
static Scalar | binaryDiffusionCoefficient (const FluidState &fluidState, int phaseIdx, int compIIdx, int compJIdx) |
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient \(\mathrm{[m^2/s]}\) for components \(\mathrm{i}\) and \(\mathrm{j}\) in this phase. More... | |
template<class FluidState > | |
static Scalar | thermalConductivity (const FluidState &fluidState, int phaseIdx) |
Thermal conductivity of a fluid phase \(\mathrm{[W/(m K)]}\). More... | |
template<class FluidState > | |
static Scalar | heatCapacity (const FluidState &fluidState, int phaseIdx) |
Specific isobaric heat capacity of a fluid phase. \(\mathrm{[J/(kg*K)}\). More... | |
template<class FluidState > | |
static Scalar | density (const FluidState &fluidState, int phaseIdx) |
Calculate the density \(\mathrm{[kg/m^3]}\) of a fluid phase. More... | |
template<class FluidState > | |
static Scalar | density (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx) |
Calculate the density \(\mathrm{[kg/m^3]}\) of a fluid phase. More... | |
template<class FluidState > | |
static Scalar | fugacityCoefficient (const FluidState &fluidState, int phaseIdx, int compIdx) |
Calculate the fugacity coefficient \(\mathrm{[Pa]}\) of an individual component in a fluid phase. More... | |
template<class FluidState > | |
static Scalar | fugacityCoefficient (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx, int compIdx) |
Calculate the fugacity coefficient \(\mathrm{[Pa]}\) of an individual component in a fluid phase. More... | |
template<class FluidState > | |
static Scalar | viscosity (const FluidState &fluidState, int phaseIdx) |
Calculate the dynamic viscosity of a fluid phase \(\mathrm{[Pa*s]}\). More... | |
template<class FluidState > | |
static Scalar | viscosity (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx) |
Calculate the dynamic viscosity of a fluid phase \(\mathrm{[Pa*s]}\). More... | |
template<class FluidState > | |
static Scalar | enthalpy (const FluidState &fluidState, int phaseIdx) |
Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy \(\mathrm{[J/kg]}\). More... | |
template<class FluidState > | |
static Scalar | enthalpy (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx) |
Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy \(\mathrm{[J/kg]}\). More... | |
template<class FluidState > | |
static Scalar | molarDensity (const FluidState &fluidState, int phaseIdx) |
Calculate the molar density \(\mathrm{[mol/m^3]}\) of a fluid phase. More... | |
template<class FluidState > | |
static Scalar | molarDensity (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx) |
Calculate the molar density \(\mathrm{[mol/m^3]}\) of a fluid phase. More... | |
template<class FluidState > | |
static Scalar | diffusionCoefficient (const FluidState &fluidState, int phaseIdx, int compIdx) |
Calculate the binary molecular diffusion coefficient for a component in a fluid phase \(\mathrm{[mol^2 * s / (kg*m^3)]}\). More... | |
template<class FluidState > | |
static Scalar | diffusionCoefficient (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx, int compIdx) |
Calculate the binary molecular diffusion coefficient for a component in a fluid phase \(\mathrm{[mol^2 * s / (kg*m^3)]}\). More... | |
template<class FluidState > | |
static Scalar | binaryDiffusionCoefficient (const FluidState &fluidState, int phaseIdx, int compIIdx, int compJIdx) |
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient \(\mathrm{[m^2/s]}\) for components \(\mathrm{i}\) and \(\mathrm{j}\) in this phase. More... | |
template<class FluidState > | |
static Scalar | binaryDiffusionCoefficient (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx, int compIIdx, int compJIdx) |
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient \(\mathrm{[m^2/s]}\) for components \(\mathrm{i}\) and \(\mathrm{j}\) in this phase. More... | |
template<class FluidState > | |
static Scalar | thermalConductivity (const FluidState &fluidState, int phaseIdx) |
Thermal conductivity \(\lambda_\alpha \) of a fluid phase \(\mathrm{[W/(m K)]}\). More... | |
template<class FluidState > | |
static Scalar | thermalConductivity (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx) |
Thermal conductivity \(\lambda_\alpha \) of a fluid phase \(\mathrm{[W/(m K)]}\). More... | |
template<class FluidState > | |
static Scalar | heatCapacity (const FluidState &fluidState, int phaseIdx) |
Specific isobaric heat capacity \(c_{p,\alpha}\) of a fluid phase \(\mathrm{[J/(kg*K)]}\). More... | |
template<class FluidState > | |
static Scalar | heatCapacity (const FluidState &fluidState, const ParameterCache ¶mCache, int phaseIdx) |
Specific isobaric heat capacity \(c_{p,\alpha}\) of a fluid phase \(\mathrm{[J/(kg*K)]}\). More... | |
Static Public Attributes | |
static const int | numPhases = 1 |
Number of phases in the fluid system. More... | |
static const int | numComponents = 2 |
Number of components in the fluid system (H2O, NaCl) More... | |
static constexpr int | phase0Idx = 0 |
Index of the first (and only) phase. More... | |
static constexpr int | liquidPhaseIdx = phase0Idx |
The one considered phase is liquid. More... | |
static constexpr int | H2OIdx = 0 |
index of the water component More... | |
static constexpr int | NaClIdx = 1 |
index of the NaCl component More... | |
static constexpr int | comp0Idx = H2OIdx |
index of the first component More... | |
static constexpr int | comp1Idx = NaClIdx |
index of the second component More... | |
using Dumux::FluidSystems::Brine< Scalar, H2OType >::H2O = H2OType |
export the involved components
using Dumux::FluidSystems::Brine< Scalar, H2OType >::NaCl = Dumux::Components::NaCl<Scalar> |
|
inlinestatic |
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient \(\mathrm{[m^2/s]}\) for components \(\mathrm{i}\) and \(\mathrm{j}\) in this phase.
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
compIIdx | Index of the component i |
compJIdx | Index of the component j |
|
inlinestatic |
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient \(\mathrm{[m^2/s]}\) for components \(\mathrm{i}\) and \(\mathrm{j}\) in this phase.
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
compIIdx | Index of the component i |
compJIdx | Index of the component j |
|
inlinestatic |
Given a phase's composition, temperature and pressure, return the binary diffusion coefficient \(\mathrm{[m^2/s]}\) for components \(\mathrm{i}\) and \(\mathrm{j}\) in this phase.
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
compIIdx | Index of the component i |
compJIdx | Index of the component j |
The implemented value for NaCl is for a molar concentration of 2.5984 mol/l and a temperature of 25°C, see Rard and Miller, 1979 (DOI: 10.1007/BF00648776) [60]. Dependent on the salt concentration the coefficient can vary between 1.47e-9 m^2/s and 1.6e-9 m^2/s, see Rard and Miller, 1979. It also depends on temperature; values for different temperatures can e.g. found here: Alanis et al., 2000 (DOI: 10.1117/1.602422) [4].
|
inlinestatic |
Returns the specific enthalpy \(\mathrm{[J/kg]}\) of a component in a specific phase.
fluidState | An arbitrary fluid state |
phaseIdx | The index of the fluid phase to consider |
componentIdx | The index of the component to consider |
|
inlinestatic |
Return the human readable name of a component.
compIdx | The index of the component to consider |
|
inlinestatic |
Calculate the density \(\mathrm{[kg/m^3]}\) of a fluid phase.
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Calculate the density \(\mathrm{[kg/m^3]}\) of a fluid phase.
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Return the phase density [kg/m^3].
|
inlinestatic |
Calculate the binary molecular diffusion coefficient for a component in a fluid phase \(\mathrm{[mol^2 * s / (kg*m^3)]}\).
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
compIdx | Index of the component Molecular diffusion of a component \(\mathrm{\kappa}\) is caused by a gradient of the chemical potential and follows the law |
\[ J = - D \mathbf{grad} \mu_\kappa \]
where \(\mathrm{\mu_\kappa}\) is the component's chemical potential, \(\mathrm{D}\) is the diffusion coefficient and \(\mathrm{J}\) is the diffusive flux. \(\mathrm{\mu_\kappa}\) is connected to the component's fugacity \(\mathrm{f_\kappa}\) by the relation
\[ \mu_\kappa = R T_\alpha \mathrm{ln} \frac{f_\kappa}{p_\alpha} \]
where \(\mathrm{p_\alpha}\) and \(\mathrm{T_\alpha}\) are the fluid phase' pressure and temperature.
|
inlinestatic |
Calculate the binary molecular diffusion coefficient for a component in a fluid phase \(\mathrm{[mol^2 * s / (kg*m^3)]}\).
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
compIdx | Index of the component Molecular diffusion of a component \(\mathrm{\kappa}\) is caused by a gradient of the chemical potential and follows the law |
\[ J = - D \mathbf{grad} \mu_\kappa \]
where \(\mathrm{\mu_\kappa}\) is the component's chemical potential, \(\mathrm{D}\) is the diffusion coefficient and \(\mathrm{J}\) is the diffusive flux. \(\mathrm{\mu_\kappa}\) is connected to the component's fugacity \(\mathrm{f_\kappa}\) by the relation
\[ \mu_\kappa = R T_\alpha \mathrm{ln} \frac{f_\kappa}{p_\alpha} \]
where \(\mathrm{p_\alpha}\) and \(\mathrm{T_\alpha}\) are the fluid phase' pressure and temperature.
|
inlinestatic |
Returns the diffusion coefficient \(\mathrm{[-]}\) of a component in a phase.
|
inlinestatic |
Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy \(\mathrm{[J/kg]}\).
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy \(\mathrm{[J/kg]}\).
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
|
inlinestatic |
Calculate the fugacity coefficient \(\mathrm{[Pa]}\) of an individual component in a fluid phase.
The fugacity coefficient \(\mathrm{\phi^\kappa_\alpha}\) is connected to the fugacity \(\mathrm{f^\kappa_\alpha}\) and the component's mole fraction \(\mathrm{x^\kappa_\alpha}\) by means of the relation
\[ f^\kappa_\alpha = \phi^\kappa_\alpha\;x^\kappa_\alpha\;p_\alpha \]
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
compIdx | Index of the component |
|
inlinestatic |
Calculate the fugacity coefficient \(\mathrm{[Pa]}\) of an individual component in a fluid phase.
The fugacity coefficient \(\mathrm{\phi^\kappa_\alpha}\) is connected to the fugacity \(\mathrm{f^\kappa_\alpha}\) and the component's mole fraction \(\mathrm{x^\kappa_\alpha}\) by means of the relation
\[ f^\kappa_\alpha = \phi^\kappa_\alpha\;x^\kappa_\alpha\;p_\alpha \]
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
compIdx | Index of the component |
|
inlinestatic |
Calculate the fugacity coefficient \(\mathrm{[Pa]}\) of an individual component in a fluid phase.
fluidState | An arbitrary fluid state |
phaseIdx | The index of the fluid phase to consider |
compIdx | The index of the component to consider |
|
inlinestatic |
Specific isobaric heat capacity \(c_{p,\alpha}\) of a fluid phase \(\mathrm{[J/(kg*K)]}\).
fluidState | represents all relevant thermodynamic quantities of a fluid system |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
Given a fluid state, an up-to-date parameter cache and a phase index, this method computes the isobaric heat capacity \(c_{p,\alpha}\) of the fluid phase. The isobaric heat capacity is defined as the partial derivative of the specific enthalpy \(h_\alpha\) to the fluid pressure \(p_\alpha\):
\( c_{p,\alpha} = \frac{\partial h_\alpha}{\partial p_\alpha} \)
|
inlinestatic |
Specific isobaric heat capacity \(c_{p,\alpha}\) of a fluid phase \(\mathrm{[J/(kg*K)]}\).
fluidState | represents all relevant thermodynamic quantities of a fluid system |
phaseIdx | Index of the fluid phase |
Given a fluid state, an up-to-date parameter cache and a phase index, this method computes the isobaric heat capacity \(c_{p,\alpha}\) of the fluid phase. The isobaric heat capacity is defined as the partial derivative of the specific enthalpy \(h_\alpha\) to the fluid pressure \(p_\alpha\):
\( c_{p,\alpha} = \frac{\partial h_\alpha}{\partial p_\alpha} \)
|
inlinestatic |
Specific isobaric heat capacity of a fluid phase. \(\mathrm{[J/(kg*K)}\).
fluidState | An arbitrary fluid state |
phaseIdx | The index of the fluid phase to consider |
|
inlinestatic |
Initialize the fluid system's static parameters generically.
|
inlinestatic |
Initialize the fluid system's static parameters using problem specific temperature and pressure ranges.
tempMin | The minimum temperature used for tabulation of water [K] |
tempMax | The maximum temperature used for tabulation of water [K] |
nTemp | The number of ticks on the temperature axis of the table of water |
pressMin | The minimum pressure used for tabulation of water [Pa] |
pressMax | The maximum pressure used for tabulation of water [Pa] |
nPress | The number of ticks on the pressure axis of the table of water |
|
inlinestatic |
Returns true if and only if a fluid phase is assumed to be compressible.
Compressible means that the partial derivative of the density to the fluid pressure is always larger than zero.
phaseIdx | The index of the fluid phase to consider |
|
inlinestaticconstexpr |
Return whether a phase is gaseous.
phaseIdx | The index of the fluid phase to consider |
|
inlinestatic |
Returns true if and only if a fluid phase is assumed to be an ideal gas.
phaseIdx | The index of the fluid phase to consider |
|
inlinestatic |
Returns true if and only if a fluid phase is assumed to be an ideal mixture.
We define an ideal mixture as a fluid phase where the fugacity coefficients of all components times the pressure of the phase are independent on the fluid composition. This assumption is true if Henry's law and Raoult's law apply. If you are unsure what this function should return, it is safe to return false. The only damage done will be (slightly) increased computation times in some cases.
phaseIdx | The index of the fluid phase to consider |
|
inlinestaticconstexpr |
Returns whether the fluids are miscible.
|
inlinestatic |
Calculate the molar density \(\mathrm{[mol/m^3]}\) of a fluid phase.
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Calculate the molar density \(\mathrm{[mol/m^3]}\) of a fluid phase.
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
The molar density \(\rho_{mol,\alpha}\) of the fluid phase \(\alpha\) in \(\mathrm{[mol/m^3]}\).
The molar density for the simple relation is defined by the mass density \(\rho_\alpha\) and the average molar mass of the phase \(M_\alpha\):
\[\rho_{mol,\alpha} = \frac{\rho_\alpha}{M_\alpha} \;.\]
|
inlinestatic |
Return the molar mass of a component in \(\mathrm{[kg/mol]}\).
compIdx | The index of the component to consider |
|
inlinestatic |
Return the human readable name of the phase.
phaseIdx | The index of the fluid phase to consider |
|
inlinestatic |
Thermal conductivity \(\lambda_\alpha \) of a fluid phase \(\mathrm{[W/(m K)]}\).
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Thermal conductivity \(\lambda_\alpha \) of a fluid phase \(\mathrm{[W/(m K)]}\).
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Thermal conductivity of a fluid phase \(\mathrm{[W/(m K)]}\).
fluidState | An arbitrary fluid state |
phaseIdx | The index of the fluid phase to consider |
The thermal conductivity of brine is implemented based on the contribution of NaCl ( \(\lambda_{brine}\)/ \(\lambda_{H_2O}\)) of [81] https://link.springer.com/content/pdf/10.1007/BF00867119.pdf, also discussed in [53] https://docecity.com/thermal-conductivity-of-aqueous-sodium-chloride-acs-publicat-5f10766acba00.html
|
inlinestatic |
Vapor pressure of a component \(\mathrm{[Pa]}\).
fluidState | The fluid state |
compIdx | The index of the component to consider |
|
inlinestatic |
Calculate the dynamic viscosity of a fluid phase \(\mathrm{[Pa*s]}\).
fluidState | The fluid state |
paramCache | mutable parameters |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Calculate the dynamic viscosity of a fluid phase \(\mathrm{[Pa*s]}\).
fluidState | The fluid state |
phaseIdx | Index of the fluid phase |
|
inlinestatic |
Return the viscosity of the phase.
|
staticconstexpr |
index of the first component
|
staticconstexpr |
index of the second component
|
staticconstexpr |
index of the water component
|
staticconstexpr |
The one considered phase is liquid.
|
staticconstexpr |
index of the NaCl component
|
static |
Number of components in the fluid system (H2O, NaCl)
|
static |
Number of phases in the fluid system.
|
staticconstexpr |
Index of the first (and only) phase.