My Project
Loading...
Searching...
No Matches
Opm::GenericThresholdPressure< Grid, GridView, ElementMapper, Scalar > Class Template Reference

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< Scalar > &values)
 Set the threshold pressures from a raw array.
 
std::vector< Scalar > getRestartVector () const
 Returns a fully expanded vector for restart file writing.
 

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 CartesianIndexMappercartMapper_
 
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_
 

Member Function Documentation

◆ data()

template<class Grid , class GridView , class ElementMapper , class Scalar >
const std::vector< Scalar > & Opm::GenericThresholdPressure< Grid, GridView, ElementMapper, Scalar >::data ( ) const
inline

Return the raw array with the threshold pressures.

This is used for the restart capability.

◆ getRestartVector()

template<class Grid , class GridView , class ElementMapper , class Scalar >
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.

◆ setFromRestart()

template<class Grid , class GridView , class ElementMapper , class Scalar >
void Opm::GenericThresholdPressure< Grid, GridView, ElementMapper, Scalar >::setFromRestart ( const std::vector< Scalar > &  values)
inline

Set the threshold pressures from a raw array.

This is used for the restart capability.

◆ thresholdPressure()

template<class Grid , class GridView , class ElementMapper , class Scalar >
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.


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