GEOSX
|
ReactiveCompositionalMultiphaseOBL strategy. More...
#include <ReactiveCompositionalMultiphaseOBL.hpp>
Public Member Functions | |
ReactiveCompositionalMultiphaseOBL (arrayView1d< int const > const &numComponentsPerField) | |
Constructor. More... | |
void | setup (LinearSolverParameters::MGR const &, HyprePrecWrapper &precond, HypreMGRData &mgrData) |
Setup the MGR strategy. More... | |
Additional Inherited Members | |
Static Public Attributes inherited from geos::hypre::mgr::MGRStrategyBase< 1 > | |
static constexpr HYPRE_Int | numLevels |
Number of levels. | |
Protected Member Functions inherited from geos::hypre::mgr::MGRStrategyBase< 1 > | |
MGRStrategyBase (HYPRE_Int const numBlocks) | |
Constructor. More... | |
void | setupLabels () |
Call this after populating lv_cindexes. | |
void | setReduction (HyprePrecWrapper &precond, HypreMGRData &mgrData) |
Helper function that sets the reduction features common to all mgr strategies. More... | |
void | setDisplacementAMG (HyprePrecWrapper &solver) |
Set up BoomerAMG to perform the solve for the displacement system. More... | |
void | setPressureAMG (HyprePrecWrapper &solver) |
Set up BoomerAMG to perform the solve for the pressure system. More... | |
void | setPressureTemperatureAMG (HyprePrecWrapper &solver) |
Set up BoomerAMG to perform the solve for the pressure/temperature system. More... | |
void | setMechanicsFSolver (HyprePrecWrapper &precond, HypreMGRData &mgrData) |
Set up BoomerAMG to perform the mechanics F-solve for the first F-relaxation. More... | |
Protected Attributes inherited from geos::hypre::mgr::MGRStrategyBase< 1 > | |
HYPRE_Int | m_numBlocks |
Number of different matrix blocks treated separately. | |
std::vector< HYPRE_Int > | m_labels [numLevels] |
Dof labels kept at each level. | |
HYPRE_Int | m_numLabels [numLevels] |
Number of dof labels kept. | |
HYPRE_Int * | m_ptrLabels [numLevels] |
Pointers to each level's labels, as consumed by MGR. | |
MGRFRelaxationType | m_levelFRelaxType [numLevels] |
F-relaxation type for each level. | |
HYPRE_Int | m_levelFRelaxIters [numLevels] |
Number of F-relaxation iterations for each level. | |
MGRInterpolationType | m_levelInterpType [numLevels] |
Interpolation type for each level. | |
MGRRestrictionType | m_levelRestrictType [numLevels] |
Restriction type for each level. | |
MGRCoarseGridMethod | m_levelCoarseGridMethod [numLevels] |
Coarse grid method for each level. | |
MGRGlobalSmootherType | m_levelGlobalSmootherType [numLevels] |
Global smoother type for each level. | |
HYPRE_Int | m_levelGlobalSmootherIters [numLevels] |
Number of global smoother iterations for each level. | |
ReactiveCompositionalMultiphaseOBL strategy.
Labels description stored in point_marker_array 0 = pressure 1 = component fraction c = 0 ... = component fraction numLabels - 1 = component fraction c = NC-2 where NC is the number of components
1-level MGR reduction strategy:
Note: in the OBL isothermal formulation, we have the following primary variables
TODO: the thermal formulation may require a specific treatment in which temperature is treated as an elliptic variable
Definition at line 53 of file ReactiveCompositionalMultiphaseOBL.hpp.
|
inlineexplicit |
Constructor.
numComponentsPerField | array with number of components for each field |
Definition at line 60 of file ReactiveCompositionalMultiphaseOBL.hpp.
|
inline |
Setup the MGR strategy.
precond | preconditioner wrapper |
mgrData | auxiliary MGR data |
Definition at line 81 of file ReactiveCompositionalMultiphaseOBL.hpp.