OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <MueLuBottomSolver.h>
Public Types | |
typedef amr::matrix_t | matrix_t |
typedef amr::vector_t | vector_t |
typedef amr::scalar_t | scalar_t |
typedef amr::multivector_t | mv_t |
typedef amr::operator_t | op_t |
typedef amr::local_ordinal_t | lo_t |
typedef amr::global_ordinal_t | go_t |
typedef amr::node_t | node_t |
typedef amr::AmrBox_t | AmrBox_t |
typedef amr::AmrIntVect_t | AmrIntVect_t |
typedef MueLu::Hierarchy< scalar_t, lo_t, go_t, node_t > | hierarchy_t |
typedef MueLu::Level | level_t |
typedef Xpetra::Matrix< scalar_t, lo_t, go_t, node_t > | xmatrix_t |
typedef Xpetra::MultiVector< scalar_t, lo_t, go_t, node_t > | xmv_t |
typedef MueLu::Utilities< scalar_t, lo_t, go_t, node_t > | util_t |
typedef MueLu::ParameterListInterpreter< scalar_t, lo_t, go_t, node_t > | pListInterpreter_t |
typedef MueLu::HierarchyManager< scalar_t, lo_t, go_t, node_t > | manager_t |
Public Member Functions | |
MueLuBottomSolver (const bool &rebalance, const std::string &reuse) | |
void | solve (const Teuchos::RCP< mv_t > &x, const Teuchos::RCP< mv_t > &b) |
void | setOperator (const Teuchos::RCP< matrix_t > &A, Level *level_p=nullptr) |
std::size_t | getNumIters () |
Public Member Functions inherited from BottomSolver< Teuchos::RCP< amr::matrix_t >, Teuchos::RCP< amr::multivector_t >, Level > | |
BottomSolver () | |
virtual | ~BottomSolver () |
virtual void | solve (const Teuchos::RCP< amr::multivector_t > &x, const Teuchos::RCP< amr::multivector_t > &b)=0 |
virtual void | setOperator (const Teuchos::RCP< amr::matrix_t > &A, Level *level_p=nullptr)=0 |
bool | hasOperator () const |
Static Public Member Functions | |
static std::string | convertToMueLuReuseOption (const std::string &reuse) |
Private Member Functions | |
void | initMueLuList_m (const std::string &reuse) |
Private Attributes | |
Teuchos::RCP< hierarchy_t > | hierarchy_mp |
manages the multigrid hierarchy More... | |
Teuchos::RCP< manager_t > | factory_mp |
sets up hierarchy More... | |
Teuchos::RCP< xmatrix_t > | A_mp |
MueLu requires Xpetra. More... | |
lo_t | nSweeps_m |
the number of multigrid iterations More... | |
Teuchos::ParameterList | mueluList_m |
bool | rebalance_m |
use subcommunicators (less communication) More... | |
IpplTimings::TimerRef | setupTimer_m |
Additional Inherited Members | |
Protected Attributes inherited from BottomSolver< Teuchos::RCP< amr::matrix_t >, Teuchos::RCP< amr::multivector_t >, Level > | |
bool | isInitialized_m |
Definition at line 37 of file MueLuBottomSolver.h.
typedef amr::AmrBox_t MueLuBottomSolver< Level >::AmrBox_t |
Definition at line 51 of file MueLuBottomSolver.h.
typedef amr::AmrIntVect_t MueLuBottomSolver< Level >::AmrIntVect_t |
Definition at line 52 of file MueLuBottomSolver.h.
typedef amr::global_ordinal_t MueLuBottomSolver< Level >::go_t |
Definition at line 48 of file MueLuBottomSolver.h.
typedef MueLu::Hierarchy<scalar_t, lo_t, go_t, node_t> MueLuBottomSolver< Level >::hierarchy_t |
Definition at line 56 of file MueLuBottomSolver.h.
typedef MueLu::Level MueLuBottomSolver< Level >::level_t |
Definition at line 57 of file MueLuBottomSolver.h.
typedef amr::local_ordinal_t MueLuBottomSolver< Level >::lo_t |
Definition at line 47 of file MueLuBottomSolver.h.
typedef MueLu::HierarchyManager<scalar_t, lo_t, go_t, node_t> MueLuBottomSolver< Level >::manager_t |
Definition at line 63 of file MueLuBottomSolver.h.
typedef amr::matrix_t MueLuBottomSolver< Level >::matrix_t |
Definition at line 42 of file MueLuBottomSolver.h.
typedef amr::multivector_t MueLuBottomSolver< Level >::mv_t |
Definition at line 45 of file MueLuBottomSolver.h.
typedef amr::node_t MueLuBottomSolver< Level >::node_t |
Definition at line 49 of file MueLuBottomSolver.h.
typedef amr::operator_t MueLuBottomSolver< Level >::op_t |
Definition at line 46 of file MueLuBottomSolver.h.
typedef MueLu::ParameterListInterpreter<scalar_t, lo_t, go_t, node_t> MueLuBottomSolver< Level >::pListInterpreter_t |
Definition at line 62 of file MueLuBottomSolver.h.
typedef amr::scalar_t MueLuBottomSolver< Level >::scalar_t |
Definition at line 44 of file MueLuBottomSolver.h.
typedef MueLu::Utilities<scalar_t, lo_t, go_t, node_t> MueLuBottomSolver< Level >::util_t |
Definition at line 60 of file MueLuBottomSolver.h.
typedef amr::vector_t MueLuBottomSolver< Level >::vector_t |
Definition at line 43 of file MueLuBottomSolver.h.
typedef Xpetra::Matrix<scalar_t, lo_t, go_t, node_t> MueLuBottomSolver< Level >::xmatrix_t |
Definition at line 58 of file MueLuBottomSolver.h.
typedef Xpetra::MultiVector<scalar_t, lo_t, go_t, node_t> MueLuBottomSolver< Level >::xmv_t |
Definition at line 59 of file MueLuBottomSolver.h.
MueLuBottomSolver< Level >::MueLuBottomSolver | ( | const bool & | rebalance, |
const std::string & | reuse | ||
) |
Definition at line 25 of file MueLuBottomSolver.hpp.
References MueLuBottomSolver< Level >::factory_mp, MueLuBottomSolver< Level >::hierarchy_mp, MueLuBottomSolver< Level >::initMueLuList_m(), and MueLuBottomSolver< Level >::mueluList_m.
|
static |
Definition at line 132 of file MueLuBottomSolver.hpp.
Referenced by AmrMultiGrid::initBaseSolver_m().
|
virtual |
Implements BottomSolver< Teuchos::RCP< amr::matrix_t >, Teuchos::RCP< amr::multivector_t >, Level >.
Definition at line 125 of file MueLuBottomSolver.hpp.
|
private |
Definition at line 152 of file MueLuBottomSolver.hpp.
Referenced by MueLuBottomSolver< Level >::MueLuBottomSolver().
void MueLuBottomSolver< Level >::setOperator | ( | const Teuchos::RCP< matrix_t > & | A, |
Level * | level_p = nullptr |
||
) |
Definition at line 62 of file MueLuBottomSolver.hpp.
References IpplTimings::startTimer(), and IpplTimings::stopTimer().
void MueLuBottomSolver< Level >::solve | ( | const Teuchos::RCP< mv_t > & | x, |
const Teuchos::RCP< mv_t > & | b | ||
) |
Definition at line 45 of file MueLuBottomSolver.hpp.
|
private |
MueLu requires Xpetra.
Definition at line 92 of file MueLuBottomSolver.h.
|
private |
sets up hierarchy
Definition at line 90 of file MueLuBottomSolver.h.
Referenced by MueLuBottomSolver< Level >::MueLuBottomSolver().
|
private |
manages the multigrid hierarchy
Definition at line 88 of file MueLuBottomSolver.h.
Referenced by MueLuBottomSolver< Level >::MueLuBottomSolver().
|
private |
Definition at line 96 of file MueLuBottomSolver.h.
Referenced by MueLuBottomSolver< Level >::MueLuBottomSolver().
|
private |
the number of multigrid iterations
Definition at line 94 of file MueLuBottomSolver.h.
|
private |
use subcommunicators (less communication)
Definition at line 98 of file MueLuBottomSolver.h.
|
private |
Definition at line 100 of file MueLuBottomSolver.h.