Two-phase problem which involves fractures.
More...
#include <fractureproblem.hh>
|
| FractureProblem (Simulator &simulator) |
|
void | finishInit () |
| Called by the Opm::Simulator in order to initialize the problem. More...
|
|
|
std::string | name () const |
| The problem name. More...
|
|
void | endTimeStep () |
| Called directly after the time integration. More...
|
|
template<class Context > |
Scalar | temperature (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
|
|
template<class Context > |
const DimMatrix & | intrinsicPermeability (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
|
template<class Context > |
const DimMatrix & | fractureIntrinsicPermeability (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| Intrinsic permeability of fractures. More...
|
|
template<class Context > |
Scalar | porosity (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
|
template<class Context > |
Scalar | fracturePorosity (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| The porosity inside the fractures. More...
|
|
template<class Context > |
const MaterialLawParams & | materialLawParams (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
|
template<class Context > |
const MaterialLawParams & | fractureMaterialLawParams (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| The parameters for the material law inside the fractures. More...
|
|
const FractureMapper & | fractureMapper () const |
| Returns the object representating the fracture topology. More...
|
|
template<class Context > |
Scalar | fractureWidth (const Context &context, unsigned spaceIdx1, unsigned spaceIdx2, unsigned timeIdx) const |
| Returns the width of the fracture. More...
|
|
template<class Context > |
const ThermalConductionLawParams & | thermalConductionLawParams (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
|
template<class Context > |
const SolidEnergyLawParams & | solidEnergyLawParams (const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| Return the parameters for the energy storage law of the rock. More...
|
|
|
template<class Context > |
void | boundary (BoundaryRateVector &values, const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| Evaluate the boundary conditions for a boundary segment. More...
|
|
|
template<class Context > |
void | constraints (Constraints &constraints, const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| Evaluate the constraints for a control volume. More...
|
|
template<class Context > |
void | initial (PrimaryVariables &values, const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| Evaluate the initial value for a control volume. More...
|
|
template<class Context > |
void | source (RateVector &rate, const Context &context, unsigned spaceIdx, unsigned timeIdx) const |
| Evaluate the source term for all phases within a given sub-control-volume. More...
|
|
template<class TypeTag>
class Opm::FractureProblem< TypeTag > Two-phase problem which involves fractures.
The domain is initially completely saturated by the oil phase, except for the left side, which is fully water saturated. Since the capillary pressure in the fractures is lower than in the rock matrix and the material is hydrophilic, water infiltrates through the fractures and gradually pushes the oil out on the right side, where the pressure is kept constant.
◆ FractureProblem()
◆ boundary()
template<class TypeTag >
template<class Context >
void Opm::FractureProblem< TypeTag >::boundary |
( |
BoundaryRateVector & |
values, |
|
|
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
Evaluate the boundary conditions for a boundary segment.
- Parameters
-
values | Stores the fluxes over the boundary segment. |
context | The object representing the execution context from which this method is called. |
spaceIdx | The local index of the spatial entity which represents the boundary segment. |
timeIdx | The index used for the time discretization |
◆ constraints()
template<class TypeTag >
template<class Context >
void Opm::FractureProblem< TypeTag >::constraints |
( |
Constraints & |
constraints, |
|
|
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
◆ endTimeStep()
Called directly after the time integration.
◆ finishInit()
Called by the Opm::Simulator in order to initialize the problem.
If you overload this method don't forget to call ParentType::finishInit()
◆ fractureIntrinsicPermeability()
template<class TypeTag >
template<class Context >
const DimMatrix & Opm::FractureProblem< TypeTag >::fractureIntrinsicPermeability |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
Intrinsic permeability of fractures.
◆ fractureMapper()
◆ fractureMaterialLawParams()
template<class TypeTag >
template<class Context >
const MaterialLawParams & Opm::FractureProblem< TypeTag >::fractureMaterialLawParams |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
The parameters for the material law inside the fractures.
◆ fracturePorosity()
template<class TypeTag >
template<class Context >
Scalar Opm::FractureProblem< TypeTag >::fracturePorosity |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
The porosity inside the fractures.
◆ fractureWidth()
template<class TypeTag >
template<class Context >
Scalar Opm::FractureProblem< TypeTag >::fractureWidth |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx1, |
|
|
unsigned |
spaceIdx2, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
Returns the width of the fracture.
- Parameters
-
context | The execution context. |
spaceIdx1 | The local index of the edge's first edge. |
spaceIdx2 | The local index of the edge's second edge. |
timeIdx | The index used by the time discretization. |
◆ initial()
template<class TypeTag >
template<class Context >
void Opm::FractureProblem< TypeTag >::initial |
( |
PrimaryVariables & |
values, |
|
|
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
Evaluate the initial value for a control volume.
- Parameters
-
values | Stores the primary variables. |
context | The object representing the execution context from which this method is called. |
spaceIdx | The local index of the spatial entity which represents the boundary segment. |
timeIdx | The index used for the time discretization |
◆ intrinsicPermeability()
template<class TypeTag >
template<class Context >
const DimMatrix & Opm::FractureProblem< TypeTag >::intrinsicPermeability |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
◆ materialLawParams()
template<class TypeTag >
template<class Context >
const MaterialLawParams & Opm::FractureProblem< TypeTag >::materialLawParams |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
◆ name()
The problem name.
This is used as a prefix for files generated by the simulation. It is highly recommend to overwrite this method in the concrete problem which is simulated.
◆ porosity()
template<class TypeTag >
template<class Context >
Scalar Opm::FractureProblem< TypeTag >::porosity |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
◆ registerParameters()
◆ solidEnergyLawParams()
template<class TypeTag >
template<class Context >
const SolidEnergyLawParams & Opm::FractureProblem< TypeTag >::solidEnergyLawParams |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
Return the parameters for the energy storage law of the rock.
In this case, we assume the rock-matrix to be granite.
◆ source()
template<class TypeTag >
template<class Context >
void Opm::FractureProblem< TypeTag >::source |
( |
RateVector & |
rate, |
|
|
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
Evaluate the source term for all phases within a given sub-control-volume.
- Parameters
-
rate | Stores the values of the volumetric creation/anihilition rates of the conserved quantities. |
context | The object representing the execution context from which this method is called. |
spaceIdx | The local index of the spatial entity which represents the boundary segment. |
timeIdx | The index used for the time discretization |
For this problem, the source term of all components is 0 everywhere.
◆ temperature()
template<class TypeTag >
template<class Context >
Scalar Opm::FractureProblem< TypeTag >::temperature |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
◆ thermalConductionLawParams()
template<class TypeTag >
template<class Context >
const ThermalConductionLawParams & Opm::FractureProblem< TypeTag >::thermalConductionLawParams |
( |
const Context & |
context, |
|
|
unsigned |
spaceIdx, |
|
|
unsigned |
timeIdx |
|
) |
| const |
|
inline |
The documentation for this class was generated from the following file:
|