28#ifndef OPM_FLUID_STATE_PRESSURE_MODULES_HPP
29#define OPM_FLUID_STATE_PRESSURE_MODULES_HPP
42template <
class Scalar,
49 { Valgrind::SetUndefined(pressure_); }
54 const Scalar&
pressure(
unsigned phaseIdx)
const
55 {
return pressure_[phaseIdx]; }
62 { pressure_[phaseIdx] = value; }
68 template <
class Flu
idState>
71 for (
unsigned phaseIdx = 0; phaseIdx < numPhases; ++phaseIdx) {
72 pressure_[phaseIdx] = decay<Scalar>(fs.pressure(phaseIdx));
86 Valgrind::CheckDefined(pressure_);
90 Scalar pressure_[numPhases];
97template <
class Scalar>
108 {
throw std::logic_error(
"Pressure is not provided by this fluid state"); }
115 template <
class Flu
idState>
Some templates to wrap the valgrind client request macros.
Module for the modular fluid state which stores the pressures explicitly.
Definition FluidStatePressureModules.hpp:46
const Scalar & pressure(unsigned phaseIdx) const
The pressure of a fluid phase [Pa].
Definition FluidStatePressureModules.hpp:54
void assign(const FluidState &fs)
Retrieve all parameters from an arbitrary fluid state.
Definition FluidStatePressureModules.hpp:69
void checkDefined() const
Make sure that all attributes are defined.
Definition FluidStatePressureModules.hpp:84
void setPressure(unsigned phaseIdx, const Scalar &value)
Set the pressure of a phase [Pa].
Definition FluidStatePressureModules.hpp:61
Module for the modular fluid state which does not the pressures but throws std::logic_error instead.
Definition FluidStatePressureModules.hpp:99
const Scalar & pressure(unsigned) const
The pressure of a fluid phase [Pa].
Definition FluidStatePressureModules.hpp:107
void assign(const FluidState &)
Retrieve all parameters from an arbitrary fluid state.
Definition FluidStatePressureModules.hpp:116
void checkDefined() const
Make sure that all attributes are defined.
Definition FluidStatePressureModules.hpp:127
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30