My Project
Loading...
Searching...
No Matches
Opm::PengRobinsonParamsMixture< Scalar, FluidSystem, phaseIdx, useSpe5Relations > Class Template Reference

The mixing rule for the oil and the gas phases of the SPE5 problem. More...

#include <PengRobinsonParamsMixture.hpp>

Inheritance diagram for Opm::PengRobinsonParamsMixture< Scalar, FluidSystem, phaseIdx, useSpe5Relations >:
Opm::PengRobinsonParams< Scalar >

Public Member Functions

Scalar getaCache (unsigned compIIdx, unsigned compJIdx) const
 TODO.
 
template<class FluidState >
void updatePure (const FluidState &fluidState)
 Update Peng-Robinson parameters for the pure components.
 
void updatePure (Scalar temperature, Scalar pressure)
 Peng-Robinson parameters for the pure components.
 
template<class FluidState >
void updateMix (const FluidState &fs)
 Calculates the "a" and "b" Peng-Robinson parameters for the mixture.
 
template<class FluidState >
void updateSingleMoleFraction (const FluidState &fs, unsigned)
 Calculates the "a" and "b" Peng-Robinson parameters for the mixture provided that only a single mole fraction was changed.
 
const PureParamspureParams (unsigned compIdx) const
 Return the Peng-Robinson parameters of a pure substance,.
 
const PureParamsoperator[] (unsigned compIdx) const
 Returns the Peng-Robinson parameters for a pure component.
 
void checkDefined () const
 If run under valgrind, this method produces an warning if the parameters where not determined correctly.
 
- Public Member Functions inherited from Opm::PengRobinsonParams< Scalar >
Scalar a () const
 Returns the attractive parameter 'a' of the Peng-Robinson fluid.
 
Scalar b () const
 Returns the repulsive parameter 'b' of the Peng-Robinson fluid.
 
void checkDefined () const
 If run under valgrind, this method produces an warning if the parameters where not determined correctly.
 
void setA (Scalar value)
 Set the attractive parameter 'a' of the Peng-Robinson fluid.
 
void setB (Scalar value)
 Set the repulsive parameter 'b' of the Peng-Robinson fluid.
 

Protected Attributes

PureParams pureParams_ [numComponents]
 
- Protected Attributes inherited from Opm::PengRobinsonParams< Scalar >
Scalar a_
 
Scalar b_
 

Detailed Description

template<class Scalar, class FluidSystem, unsigned phaseIdx, bool useSpe5Relations = false>
class Opm::PengRobinsonParamsMixture< Scalar, FluidSystem, phaseIdx, useSpe5Relations >

The mixing rule for the oil and the gas phases of the SPE5 problem.

This problem comprises $H_2O$, $C_1$, $C_3$, $C_6$, $C_10$, $C_15$ and $C_20$ as components.

See:

R. Reid, et al.: The Properties of Gases and Liquids, 4th edition, McGraw-Hill, 1987, pp. 43-44

and

J.E. Killough, et al.: Fifth Comparative Solution Project: Evaluation of Miscible Flood Simulators, Ninth SPE Symposium on Reservoir Simulation, 1987

Member Function Documentation

◆ updateMix()

template<class Scalar , class FluidSystem , unsigned phaseIdx, bool useSpe5Relations = false>
template<class FluidState >
void Opm::PengRobinsonParamsMixture< Scalar, FluidSystem, phaseIdx, useSpe5Relations >::updateMix ( const FluidState &  fs)
inline

Calculates the "a" and "b" Peng-Robinson parameters for the mixture.

The updatePure() method needs to be called before calling this method!

◆ updatePure()

template<class Scalar , class FluidSystem , unsigned phaseIdx, bool useSpe5Relations = false>
void Opm::PengRobinsonParamsMixture< Scalar, FluidSystem, phaseIdx, useSpe5Relations >::updatePure ( Scalar  temperature,
Scalar  pressure 
)
inline

Peng-Robinson parameters for the pure components.

This method is given by the SPE5 paper.

◆ updateSingleMoleFraction()

template<class Scalar , class FluidSystem , unsigned phaseIdx, bool useSpe5Relations = false>
template<class FluidState >
void Opm::PengRobinsonParamsMixture< Scalar, FluidSystem, phaseIdx, useSpe5Relations >::updateSingleMoleFraction ( const FluidState &  fs,
unsigned   
)
inline

Calculates the "a" and "b" Peng-Robinson parameters for the mixture provided that only a single mole fraction was changed.

The updatePure() method needs to be called before calling this method!


The documentation for this class was generated from the following file: