GEOSX
Public Member Functions | List of all members
geosx::hypre::mgr::CompositionalMultiphaseReservoirHybridFVM Class Reference

Labels description stored in point_marker_array 0 = pressure 1 = density ... = ... (densities) numCellCenteredLabels - 1 = density numResLabels - 1 = face pressure numResLabels = well pressure 1 = well density ... = ... (densities) numLabels - 1 = well rate. More...

#include <CompositionalMultiphaseReservoirHybridFVM.hpp>

Inheritance diagram for geosx::hypre::mgr::CompositionalMultiphaseReservoirHybridFVM:
Inheritance graph
[legend]

Public Member Functions

 CompositionalMultiphaseReservoirHybridFVM (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 geosx::hypre::mgr::MGRStrategyBase< 4 >
static constexpr HYPRE_Int numLevels
 Number of levels.
 
- Protected Member Functions inherited from geosx::hypre::mgr::MGRStrategyBase< 4 >
 MGRStrategyBase (HYPRE_Int const numBlocks)
 Constructor. More...
 
void setupLabels ()
 Call this after populating lv_cindexes.
 
- Protected Attributes inherited from geosx::hypre::mgr::MGRStrategyBase< 4 >
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.
 
HYPRE_Int m_levelFRelaxMethod [numLevels]
 F-relaxation method for each level.
 
HYPRE_Int m_levelInterpType [numLevels]
 Interpolation type for each level.
 
HYPRE_Int m_levelRestrictType [numLevels]
 Restriction type for each level.
 
HYPRE_Int m_levelCoarseGridMethod [numLevels]
 Coarse grid method for each level.
 
HYPRE_Int m_numRestrictSweeps
 Number of restrict sweeps.
 
HYPRE_Int m_numInterpSweeps
 Number of interpolation sweeps.
 
HYPRE_Int m_fRelaxMethod
 F-relaxation method.
 
HYPRE_Int m_relaxType
 F-relaxation type.
 
HYPRE_Int m_numRelaxSweeps
 F-relaxation number of sweeps.
 
HYPRE_Int m_globalSmoothType
 Global smoothing type.
 
HYPRE_Int m_numGlobalSmoothSweeps
 Global smoothing number of iterations.
 

Detailed Description

Labels description stored in point_marker_array 0 = pressure 1 = density ... = ... (densities) numCellCenteredLabels - 1 = density numResLabels - 1 = face pressure numResLabels = well pressure 1 = well density ... = ... (densities) numLabels - 1 = well rate.

4-level MGR reduction strategy inspired from CompositionalMultiphaseReservoir 1st level: eliminate the density associated with the volume constraint 2nd level: eliminate the rest of the densities 3rd level: eliminate the cell-centered pressure 4th level: eliminate the face-centered pressure The coarse grid is the well system and is solved with a direct solver

Definition at line 54 of file CompositionalMultiphaseReservoirHybridFVM.hpp.

Constructor & Destructor Documentation

◆ CompositionalMultiphaseReservoirHybridFVM()

geosx::hypre::mgr::CompositionalMultiphaseReservoirHybridFVM::CompositionalMultiphaseReservoirHybridFVM ( arrayView1d< int const > const &  numComponentsPerField)
inlineexplicit

Constructor.

Parameters
numComponentsPerFieldarray with number of components for each field

Definition at line 61 of file CompositionalMultiphaseReservoirHybridFVM.hpp.

Member Function Documentation

◆ setup()

void geosx::hypre::mgr::CompositionalMultiphaseReservoirHybridFVM::setup ( LinearSolverParameters::MGR const &  ,
HyprePrecWrapper precond,
HypreMGRData mgrData 
)
inline

Setup the MGR strategy.

Parameters
precondpreconditioner wrapper
mgrDataauxiliary MGR data

Definition at line 108 of file CompositionalMultiphaseReservoirHybridFVM.hpp.


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