TPSA geomechanics model. More...

#include <tpsamodel.hpp>

Classes

class  TpsaBlockVectorWrapper
 Small block vector wrapper class for model solutions. More...
 

Public Member Functions

 TpsaModel (Simulator &simulator)
 Constructor. More...
 
void finishInit ()
 Initialize TPSA model. More...
 
void prepareTPSA ()
 Prepare TPSA model for coupled Flow-TPSA scheme. More...
 
void syncOverlap ()
 Sync primary variables in overlapping cells. More...
 
void updateMaterialState (const unsigned)
 Update material state for all cells. More...
 
const Linearizer & linearizer () const
 Return the linearizer. More...
 
Linearizer & linearizer ()
 Return the linearizer. More...
 
const NewtonMethod & newtonMethod () const
 Return the Newton method. More...
 
NewtonMethod & newtonMethod ()
 Return the Newton method. More...
 
const SolutionVector & solution (unsigned timeIdx) const
 Get reference to history solution vector. More...
 
SolutionVector & solution (unsigned timeIdx)
 Get reference to history solution vector. More...
 
std::size_t numGridDof () const
 Return number of degrees of freedom in the grid from the Flow model. More...
 
std::size_t numTotalDof () const
 Return the total number of degrees of freedom. More...
 
Scalar dofTotalVolume (unsigned globalIdx) const
 Return the total grid volume from the Flow model. More...
 
Scalar eqWeight (unsigned, unsigned eqIdx) const
 Return equation weights. More...
 
void setEqWeight (unsigned eqIdx, Scalar value)
 Set weights for equation. More...
 
std::size_t numAuxiliaryModules () const
 Return number of auxillary modules. More...
 
std::size_t numAuxiliaryDof () const
 Return number of auxillary degrees of freedom. More...
 
const MaterialState & materialState (const unsigned globalIdx, unsigned) const
 Return current material state. More...
 
DimVector disp (const unsigned globalIdx, const bool) const
 Output displacement vector. More...
 
SymTensor delstress (const unsigned) const
 Output (del?)stress tensor. More...
 
SymTensor fractureStress (const unsigned) const
 Output fracture stress tensor. More...
 
SymTensor linstress (const unsigned) const
 Output linear stress tensor. More...
 
SymTensor stress (const unsigned, const bool) const
 Output stress tensor. More...
 
SymTensor strain (const unsigned, const bool) const
 Output strain tensor. More...
 
Scalar mechPotentialForce (unsigned) const
 Output potential forces. More...
 
Scalar mechPotentialPressForce (unsigned) const
 Output potential pressure forces. More...
 
Scalar mechPotentialTempForce (unsigned) const
 Output potential temparature forces. More...
 

Static Public Member Functions

static void registerParameters ()
 Register runtime parameters. More...
 

Protected Member Functions

void resizeMaterialState_ ()
 Resize material state vector. More...
 

Detailed Description

template<class TypeTag>
class Opm::TpsaModel< TypeTag >

TPSA geomechanics model.

Solves the (linear) elasticity equations using Newton method.

Constructor & Destructor Documentation

◆ TpsaModel()

template<class TypeTag >
Opm::TpsaModel< TypeTag >::TpsaModel ( Simulator &  simulator)
inlineexplicit

Constructor.

Parameters
simulatorSimulator object

Member Function Documentation

◆ delstress()

template<class TypeTag >
SymTensor Opm::TpsaModel< TypeTag >::delstress ( const unsigned  ) const
inline

Output (del?)stress tensor.

Parameters
globalIdxCell index
Returns
(Del?)stress tensor (Voigt notation) at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ disp()

template<class TypeTag >
DimVector Opm::TpsaModel< TypeTag >::disp ( const unsigned  globalIdx,
const bool   
) const
inline

Output displacement vector.

Parameters
globalIdxCell index
with_fractureBoolean to activate fracture output
Returns
Displacement vector at grid cell
Note
Needed in OutputBlackOilModule!

◆ dofTotalVolume()

template<class TypeTag >
Scalar Opm::TpsaModel< TypeTag >::dofTotalVolume ( unsigned  globalIdx) const
inline

Return the total grid volume from the Flow model.

Parameters
globalIdxCell index
Returns
Grid volume of grid cell

◆ eqWeight()

template<class TypeTag >
Scalar Opm::TpsaModel< TypeTag >::eqWeight ( unsigned  ,
unsigned  eqIdx 
) const
inline

Return equation weights.

Parameters
dofIdxDegree-of-freedom index
eqIdxEquation index
Returns
Weight for equation

◆ finishInit()

template<class TypeTag >
void Opm::TpsaModel< TypeTag >::finishInit ( )
inline

Initialize TPSA model.

References Opm::TpsaModel< TypeTag >::resizeMaterialState_().

◆ fractureStress()

template<class TypeTag >
SymTensor Opm::TpsaModel< TypeTag >::fractureStress ( const unsigned  ) const
inline

Output fracture stress tensor.

Parameters
globalIdxCell index
Returns
Fracture stress tensor (Voigt notation) at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ linearizer() [1/2]

template<class TypeTag >
Linearizer & Opm::TpsaModel< TypeTag >::linearizer ( )
inline

Return the linearizer.

Returns
Reference to linearizer

◆ linearizer() [2/2]

template<class TypeTag >
const Linearizer & Opm::TpsaModel< TypeTag >::linearizer ( ) const
inline

Return the linearizer.

Returns
Reference to linearizer

◆ linstress()

template<class TypeTag >
SymTensor Opm::TpsaModel< TypeTag >::linstress ( const unsigned  ) const
inline

Output linear stress tensor.

Parameters
globalIdxCell index
Returns
Linear stress tensor (Voigt notation) at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ materialState()

template<class TypeTag >
const MaterialState & Opm::TpsaModel< TypeTag >::materialState ( const unsigned  globalIdx,
unsigned   
) const
inline

Return current material state.

Parameters
globalIdxCell index
timeIdxTime index
Returns
Material state container for grid cell
Note
Cached material state not implemented yet!

◆ mechPotentialForce()

template<class TypeTag >
Scalar Opm::TpsaModel< TypeTag >::mechPotentialForce ( unsigned  ) const
inline

Output potential forces.

Parameters
globalIdxCell index
Returns
Potential forces at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ mechPotentialPressForce()

template<class TypeTag >
Scalar Opm::TpsaModel< TypeTag >::mechPotentialPressForce ( unsigned  ) const
inline

Output potential pressure forces.

Parameters
globalIdxCell index
Returns
Potential pressure forces at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ mechPotentialTempForce()

template<class TypeTag >
Scalar Opm::TpsaModel< TypeTag >::mechPotentialTempForce ( unsigned  ) const
inline

Output potential temparature forces.

Parameters
globalIdxCell index
Returns
Potential temperature forces at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ newtonMethod() [1/2]

template<class TypeTag >
NewtonMethod & Opm::TpsaModel< TypeTag >::newtonMethod ( )
inline

Return the Newton method.

Returns
Reference to Newton method object

◆ newtonMethod() [2/2]

template<class TypeTag >
const NewtonMethod & Opm::TpsaModel< TypeTag >::newtonMethod ( ) const
inline

Return the Newton method.

Returns
Reference to Newton method object

◆ numAuxiliaryDof()

template<class TypeTag >
std::size_t Opm::TpsaModel< TypeTag >::numAuxiliaryDof ( ) const
inline

Return number of auxillary degrees of freedom.

Returns
No. of auxillary DOFs

Referenced by Opm::TpsaModel< TypeTag >::numTotalDof().

◆ numAuxiliaryModules()

template<class TypeTag >
std::size_t Opm::TpsaModel< TypeTag >::numAuxiliaryModules ( ) const
inline

Return number of auxillary modules.

Returns
No. of auxillary modules

◆ numGridDof()

template<class TypeTag >
std::size_t Opm::TpsaModel< TypeTag >::numGridDof ( ) const
inline

Return number of degrees of freedom in the grid from the Flow model.

Returns
Number of grid DOFs

Referenced by Opm::TpsaModel< TypeTag >::numTotalDof().

◆ numTotalDof()

template<class TypeTag >
std::size_t Opm::TpsaModel< TypeTag >::numTotalDof ( ) const
inline

Return the total number of degrees of freedom.

Returns
Number of grid DOFs + auxillary DOFs

References Opm::TpsaModel< TypeTag >::numAuxiliaryDof(), and Opm::TpsaModel< TypeTag >::numGridDof().

◆ prepareTPSA()

template<class TypeTag >
void Opm::TpsaModel< TypeTag >::prepareTPSA ( )
inline

Prepare TPSA model for coupled Flow-TPSA scheme.

References Opm::TpsaModel< TypeTag >::solution().

◆ registerParameters()

template<class TypeTag >
static void Opm::TpsaModel< TypeTag >::registerParameters ( )
inlinestatic

Register runtime parameters.

References Opm::NewtonMethod< TypeTag >::registerParameters().

◆ resizeMaterialState_()

template<class TypeTag >
void Opm::TpsaModel< TypeTag >::resizeMaterialState_ ( )
inlineprotected

Resize material state vector.

Note
Cached material state not implemented yet!

Referenced by Opm::TpsaModel< TypeTag >::finishInit().

◆ setEqWeight()

template<class TypeTag >
void Opm::TpsaModel< TypeTag >::setEqWeight ( unsigned  eqIdx,
Scalar  value 
)
inline

Set weights for equation.

Parameters
eqIdxEquation index
valueWeight value to set

◆ solution() [1/2]

template<class TypeTag >
SolutionVector & Opm::TpsaModel< TypeTag >::solution ( unsigned  timeIdx)
inline

Get reference to history solution vector.

Parameters
timeIdxTime index
Returns
Reference to solution vector at time step timeIdx

◆ solution() [2/2]

template<class TypeTag >
const SolutionVector & Opm::TpsaModel< TypeTag >::solution ( unsigned  timeIdx) const
inline

Get reference to history solution vector.

Parameters
timeIdxTime index
Returns
Reference to solution vector at time step timeIdx

Referenced by Opm::TpsaModel< TypeTag >::prepareTPSA(), Opm::TpsaModel< TypeTag >::syncOverlap(), and Opm::TpsaModel< TypeTag >::updateMaterialState().

◆ strain()

template<class TypeTag >
SymTensor Opm::TpsaModel< TypeTag >::strain ( const unsigned  ,
const bool   
) const
inline

Output strain tensor.

Parameters
globalIdxCell index
with_fractureBoolean to activate fracture output
Returns
Strain tensor (Voigt notation) at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ stress()

template<class TypeTag >
SymTensor Opm::TpsaModel< TypeTag >::stress ( const unsigned  ,
const bool   
) const
inline

Output stress tensor.

Parameters
globalIdxCell index
with_fractureBoolean to activate fracture output
Returns
Stress tensor (Voigt notation) at grid cell
Note
Needed in OutputBlackOilModule, but zero for now!

◆ syncOverlap()

template<class TypeTag >
void Opm::TpsaModel< TypeTag >::syncOverlap ( )
inline

Sync primary variables in overlapping cells.

Copied code from EcfvDiscretization::syncOverlap() to sync TPSA primary variables

References Opm::TpsaModel< TypeTag >::solution().

◆ updateMaterialState()

template<class TypeTag >
void Opm::TpsaModel< TypeTag >::updateMaterialState ( const unsigned  )
inline

Update material state for all cells.

Parameters
timeIdxTime index
Note
Cached material state not implemented yet!

References Opm::TpsaModel< TypeTag >::solution().


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