A fluid system which uses the black-oil model assumptions to calculate termodynamically meaningful quantities.
More...
|
static void | initBegin (size_t numPvtRegions) |
| Begin the initialization of the black oil fluid system. More...
|
|
static void | setEnableDissolvedGas (bool yesno) |
| Specify whether the fluid system should consider that the gas component can dissolve in the oil phase. More...
|
|
static void | setEnableVaporizedOil (bool yesno) |
| Specify whether the fluid system should consider that the oil component can dissolve in the gas phase. More...
|
|
static void | setEnableVaporizedWater (bool yesno) |
| Specify whether the fluid system should consider that the water component can dissolve in the gas phase. More...
|
|
static void | setEnableDiffusion (bool yesno) |
| Specify whether the fluid system should consider diffusion. More...
|
|
static void | setGasPvt (std::shared_ptr< GasPvt > pvtObj) |
| Set the pressure-volume-saturation (PVT) relations for the gas phase.
|
|
static void | setOilPvt (std::shared_ptr< OilPvt > pvtObj) |
| Set the pressure-volume-saturation (PVT) relations for the oil phase.
|
|
static void | setWaterPvt (std::shared_ptr< WaterPvt > pvtObj) |
| Set the pressure-volume-saturation (PVT) relations for the water phase.
|
|
static void | setReferenceDensities (Scalar rhoOil, Scalar rhoWater, Scalar rhoGas, unsigned regionIdx) |
| Initialize the values of the reference densities. More...
|
|
static void | initEnd () |
| Finish initializing the black oil fluid system.
|
|
static bool | isInitialized () |
|
static const char * | phaseName (unsigned phaseIdx) |
| Return the human readable name of a fluid phase. More...
|
|
static bool | isLiquid (unsigned phaseIdx) |
| Return whether a phase is liquid. More...
|
|
static unsigned | numActivePhases () |
| Returns the number of active fluid phases (i.e., usually three)
|
|
static unsigned | phaseIsActive (unsigned phaseIdx) |
| Returns whether a fluid phase is active.
|
|
static constexpr unsigned | solventComponentIndex (unsigned phaseIdx) |
| returns the index of "primary" component of a phase (solvent)
|
|
static constexpr unsigned | soluteComponentIndex (unsigned phaseIdx) |
| returns the index of "secondary" component of a phase (solute)
|
|
static const char * | componentName (unsigned compIdx) |
| Return the human readable name of a component. More...
|
|
static Scalar | molarMass (unsigned compIdx, unsigned regionIdx=0) |
| Return the molar mass of a component in [kg/mol]. More...
|
|
static bool | isIdealMixture (unsigned) |
| Returns true if and only if a fluid phase is assumed to be an ideal mixture. More...
|
|
static bool | isCompressible (unsigned) |
| Returns true if and only if a fluid phase is assumed to be compressible. More...
|
|
static bool | isIdealGas (unsigned) |
| Returns true if and only if a fluid phase is assumed to be an ideal gas. More...
|
|
static size_t | numRegions () |
| Returns the number of PVT regions which are considered. More...
|
|
static bool | enableDissolvedGas () |
| Returns whether the fluid system should consider that the gas component can dissolve in the oil phase. More...
|
|
static bool | enableVaporizedOil () |
| Returns whether the fluid system should consider that the oil component can dissolve in the gas phase. More...
|
|
static bool | enableVaporizedWater () |
| Returns whether the fluid system should consider that the water component can dissolve in the gas phase. More...
|
|
static bool | enableDiffusion () |
| Returns whether the fluid system should consider diffusion. More...
|
|
static Scalar | referenceDensity (unsigned phaseIdx, unsigned regionIdx) |
| Returns the density of a fluid phase at surface pressure [kg/m^3]. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCacheEval = LhsEval> |
static LhsEval | density (const FluidState &fluidState, const ParameterCache< ParamCacheEval > ¶mCache, unsigned phaseIdx) |
| Calculate the density [kg/m^3] of a fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCacheEval = LhsEval> |
static LhsEval | fugacityCoefficient (const FluidState &fluidState, const ParameterCache< ParamCacheEval > ¶mCache, unsigned phaseIdx, unsigned compIdx) |
| Calculate the fugacity coefficient [Pa] of an individual component in a fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCacheEval = LhsEval> |
static LhsEval | viscosity (const FluidState &fluidState, const ParameterCache< ParamCacheEval > ¶mCache, unsigned phaseIdx) |
| Calculate the dynamic viscosity of a fluid phase [Pa*s]. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCacheEval = LhsEval> |
static LhsEval | enthalpy (const FluidState &fluidState, const ParameterCache< ParamCacheEval > ¶mCache, unsigned phaseIdx) |
| Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy [J/kg]. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | density (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Calculate the density [kg/m^3] of a fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | saturatedDensity (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Compute the density of a saturated fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | inverseFormationVolumeFactor (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Returns the formation volume factor of an "undersaturated" fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | saturatedInverseFormationVolumeFactor (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Returns the formation volume factor of a "saturated" fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | fugacityCoefficient (const FluidState &fluidState, unsigned phaseIdx, unsigned compIdx, unsigned regionIdx) |
| Calculate the fugacity coefficient [Pa] of an individual component in a fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | viscosity (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Calculate the dynamic viscosity of a fluid phase [Pa*s]. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | enthalpy (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy [J/kg]. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | saturatedVaporizationFactor (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Returns the water vaporization factor of saturated phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | saturatedDissolutionFactor (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx, const LhsEval &maxOilSaturation) |
| Returns the dissolution factor of a saturated fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | saturatedDissolutionFactor (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Returns the dissolution factor of a saturated fluid phase. More...
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | bubblePointPressure (const FluidState &fluidState, unsigned regionIdx) |
| Returns the bubble point pressure $P_b$ using the current Rs.
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | dewPointPressure (const FluidState &fluidState, unsigned regionIdx) |
| Returns the dew point pressure $P_d$ using the current Rv.
|
|
template<class FluidState , class LhsEval = typename FluidState::Scalar> |
static LhsEval | saturationPressure (const FluidState &fluidState, unsigned phaseIdx, unsigned regionIdx) |
| Returns the saturation pressure of a given phase [Pa] depending on its composition. More...
|
|
template<class LhsEval > |
static LhsEval | convertXoGToRs (const LhsEval &XoG, unsigned regionIdx) |
| Convert the mass fraction of the gas component in the oil phase to the corresponding gas dissolution factor.
|
|
template<class LhsEval > |
static LhsEval | convertXgOToRv (const LhsEval &XgO, unsigned regionIdx) |
| Convert the mass fraction of the oil component in the gas phase to the corresponding oil vaporization factor.
|
|
template<class LhsEval > |
static LhsEval | convertXgWToRvw (const LhsEval &XgW, unsigned regionIdx) |
| Convert the mass fraction of the water component in the gas phase to the corresponding water vaporization factor.
|
|
template<class LhsEval > |
static LhsEval | convertRsToXoG (const LhsEval &Rs, unsigned regionIdx) |
| Convert a gas dissolution factor to the the corresponding mass fraction of the gas component in the oil phase.
|
|
template<class LhsEval > |
static LhsEval | convertRvToXgO (const LhsEval &Rv, unsigned regionIdx) |
| Convert an oil vaporization factor to the corresponding mass fraction of the oil component in the gas phase.
|
|
template<class LhsEval > |
static LhsEval | convertRvwToXgW (const LhsEval &Rvw, unsigned regionIdx) |
| Convert an water vaporization factor to the corresponding mass fraction of the water component in the gas phase.
|
|
template<class LhsEval > |
static LhsEval | convertXoGToxoG (const LhsEval &XoG, unsigned regionIdx) |
| Convert a gas mass fraction in the oil phase the corresponding mole fraction.
|
|
template<class LhsEval > |
static LhsEval | convertxoGToXoG (const LhsEval &xoG, unsigned regionIdx) |
| Convert a gas mole fraction in the oil phase the corresponding mass fraction.
|
|
template<class LhsEval > |
static LhsEval | convertXgOToxgO (const LhsEval &XgO, unsigned regionIdx) |
| Convert a oil mass fraction in the gas phase the corresponding mole fraction.
|
|
template<class LhsEval > |
static LhsEval | convertxgOToXgO (const LhsEval &xgO, unsigned regionIdx) |
| Convert a oil mole fraction in the gas phase the corresponding mass fraction.
|
|
static const GasPvt & | gasPvt () |
| Return a reference to the low-level object which calculates the gas phase quantities. More...
|
|
static const OilPvt & | oilPvt () |
| Return a reference to the low-level object which calculates the oil phase quantities. More...
|
|
static const WaterPvt & | waterPvt () |
| Return a reference to the low-level object which calculates the water phase quantities. More...
|
|
static Scalar | reservoirTemperature (unsigned=0) |
| Set the temperature of the reservoir. More...
|
|
static void | setReservoirTemperature (Scalar value) |
| Return the temperature of the reservoir. More...
|
|
static short | activeToCanonicalPhaseIdx (unsigned activePhaseIdx) |
|
static short | canonicalToActivePhaseIdx (unsigned phaseIdx) |
|
static Scalar | diffusionCoefficient (unsigned compIdx, unsigned phaseIdx, unsigned regionIdx=0) |
| Calculate the binary molecular diffusion coefficient for a component in a fluid phase [mol^2 * s / (kg*m^3)]. More...
|
|
static void | setDiffusionCoefficient (Scalar coefficient, unsigned compIdx, unsigned phaseIdx, unsigned regionIdx=0) |
|
template<class FluidState , class LhsEval = typename FluidState::Scalar, class ParamCacheEval = LhsEval> |
static LhsEval | diffusionCoefficient (const FluidState &fluidState, const ParameterCache< ParamCacheEval > ¶mCache, unsigned phaseIdx, unsigned compIdx) |
| Calculate the binary molecular diffusion coefficient for a component in a fluid phase [mol^2 * s / (kg*m^3)]. More...
|
|
static char * | phaseName (unsigned) |
| Return the human readable name of a fluid phase. More...
|
|
static bool | isLiquid (unsigned) |
| Return whether a phase is liquid. More...
|
|
static bool | isIdealMixture (unsigned) |
| Returns true if and only if a fluid phase is assumed to be an ideal mixture. More...
|
|
static bool | isCompressible (unsigned) |
| Returns true if and only if a fluid phase is assumed to be compressible. More...
|
|
static bool | isIdealGas (unsigned) |
| Returns true if and only if a fluid phase is assumed to be an ideal gas. More...
|
|
static const char * | componentName (unsigned) |
| Return the human readable name of a component. More...
|
|
static Scalar | molarMass (unsigned) |
| Return the molar mass of a component in [kg/mol]. More...
|
|
static Scalar | acentricFactor (unsigned) |
| Return the acetntric factor of a component. More...
|
|
static void | init () |
| Initialize the fluid system's static parameters.
|
|
static LhsEval | density (const FluidState &, const ParamCache &, unsigned) |
| Calculate the density [kg/m^3] of a fluid phase. More...
|
|
static LhsEval | fugacityCoefficient (const FluidState &, ParamCache &, unsigned, unsigned) |
| Calculate the fugacity coefficient [Pa] of an individual component in a fluid phase. More...
|
|
static LhsEval | viscosity (const FluidState &, ParamCache &, unsigned) |
| Calculate the dynamic viscosity of a fluid phase [Pa*s]. More...
|
|
static LhsEval | diffusionCoefficient (const FluidState &, ParamCache &, unsigned, unsigned) |
| Calculate the binary molecular diffusion coefficient for a component in a fluid phase [mol^2 * s / (kg*m^3)]. More...
|
|
static LhsEval | enthalpy (const FluidState &, ParamCache &, unsigned) |
| Given a phase's composition, temperature, pressure and density, calculate its specific enthalpy [J/kg]. More...
|
|
static LhsEval | thermalConductivity (const FluidState &, ParamCache &, unsigned) |
| Thermal conductivity of a fluid phase [W/(m K)]. More...
|
|
static LhsEval | heatCapacity (const FluidState &, ParamCache &, unsigned) |
| Specific isobaric heat capacity of a fluid phase [J/kg]. More...
|
|
static unsigned | phaseIsActive (unsigned) |
| Returns whether a fluid phase is active.
|
|