My Project
|
Public Types | |
using | CartesianIndexMapper = Dune::CartesianIndexMapper< Grid > |
using | LookUpData = Opm::LookUpData< Grid, GridView > |
using | LookUpCartesianData = Opm::LookUpCartesianData< Grid, GridView > |
Public Member Functions | |
GenericThresholdPressure (const CartesianIndexMapper &cartMapper, const GridView &gridView, const ElementMapper &elementMapper, const EclipseState &eclState) | |
Scalar | thresholdPressure (int elem1Idx, int elem2Idx) const |
Returns the theshold pressure [Pa] for the intersection between two elements. | |
const std::vector< Scalar > & | data () const |
Return the raw array with the threshold pressures. | |
void | setFromRestart (const std::vector< double > &values) |
Set the threshold pressures from a raw array. | |
std::vector< Scalar > | getRestartVector () const |
Returns a fully expanded vector for restart file writing. | |
bool | enableThresholdPressure () const |
Protected Member Functions | |
void | finishInit () |
Actually compute the threshold pressures over a face as a pre-compute step. | |
void | applyExplicitThresholdPressures_ () |
void | configureThpresft_ () |
void | logPressures () |
Protected Attributes | |
const CartesianIndexMapper & | cartMapper_ |
const GridView & | gridView_ |
const ElementMapper & | elementMapper_ |
const LookUpData | lookUpData_ |
const LookUpCartesianData | lookUpCartesianData_ |
const EclipseState & | eclState_ |
std::vector< Scalar > | thpresDefault_ |
std::vector< Scalar > | thpres_ |
unsigned | numEquilRegions_ {} |
std::vector< unsigned short > | elemEquilRegion_ |
std::vector< Scalar > | thpresftValues_ |
std::vector< int > | cartElemFaultIdx_ |
bool | enableThresholdPressure_ {false} |
bool | restart_ {false} |
|
inline |
Return the raw array with the threshold pressures.
This is used for the restart capability.
std::vector< Scalar > Opm::GenericThresholdPressure< Grid, GridView, ElementMapper, Scalar >::getRestartVector | ( | ) | const |
Returns a fully expanded vector for restart file writing.
Returns the union of explicitly configured entries and defaulted values.
|
inline |
Set the threshold pressures from a raw array.
This is used for the restart capability.
Scalar Opm::GenericThresholdPressure< Grid, GridView, ElementMapper, Scalar >::thresholdPressure | ( | int | elem1Idx, |
int | elem2Idx | ||
) | const |
Returns the theshold pressure [Pa] for the intersection between two elements.
This is tailor made for the E100 threshold pressure mechanism and it is thus quite a hack: First of all threshold pressures in general are unphysical, and second, they should be different for the fluid phase but are not. Anyway, this seems to be E100's way of doing things, so we do it the same way.