MueLu Version of the Day
|
Factory for building the approximate inverse of a matrix. More...
#include <MueLu_InverseApproximationFactory_decl.hpp>
Constructors/Destructors. | |
InverseApproximationFactory ()=default | |
Constructor. | |
void | DeclareInput (Level ¤tLevel) const |
Input. | |
RCP< const ParameterList > | GetValidParameterList () const |
Return a const parameter list of valid parameters that setParameterList() will accept. | |
Build methods. | |
void | Build (Level ¤tLevel) const |
Build an object with this factory. | |
RCP< Matrix > | GetSparseInverse (const RCP< Matrix > &A, const RCP< const CrsGraph > &sparsityPattern) const |
Sparse inverse calculation method. | |
Additional Inherited Members | |
![]() | |
SingleLevelFactoryBase () | |
Constructor. | |
virtual | ~SingleLevelFactoryBase () |
Destructor. | |
virtual void | CallBuild (Level &requestedLevel) const |
virtual void | CallDeclareInput (Level &requestedLevel) const |
![]() | |
Factory () | |
Constructor. | |
virtual | ~Factory () |
Destructor. | |
virtual void | SetFactory (const std::string &varName, const RCP< const FactoryBase > &factory) |
Configuration. | |
const RCP< const FactoryBase > | GetFactory (const std::string &varName) const |
Default implementation of FactoryAcceptor::GetFactory() | |
RCP< ParameterList > | RemoveFactoriesFromList (const ParameterList &list) const |
virtual RCP< const ParameterList > | GetValidParameterList () const |
Return a const parameter list of valid parameters that setParameterList() will accept. | |
void | EnableMultipleCallCheck () const |
void | DisableMultipleCallCheck () const |
void | ResetDebugData () const |
![]() | |
FactoryBase () | |
Constructor. | |
virtual | ~FactoryBase () |
Destructor. | |
int | GetID () const |
return unique factory id | |
![]() | |
virtual | ~BaseClass () |
Destructor. | |
![]() | |
VerboseObject () | |
virtual | ~VerboseObject () |
Destructor. | |
VerbLevel | GetVerbLevel () const |
Get the verbosity level. | |
void | SetVerbLevel (const VerbLevel verbLevel) |
Set the verbosity level of this object. | |
int | GetProcRankVerbose () const |
Get proc rank used for printing. Do not use this information for any other purpose. | |
int | SetProcRankVerbose (int procRank) const |
Set proc rank used for printing. | |
bool | IsPrint (MsgType type, int thisProcRankOnly=-1) const |
Find out whether we need to print out information for a specific message type. | |
Teuchos::FancyOStream & | GetOStream (MsgType type, int thisProcRankOnly=0) const |
Get an output stream for outputting the input message type. | |
Teuchos::FancyOStream & | GetBlackHole () const |
![]() | |
virtual | ~Describable () |
Destructor. | |
virtual void | describe (Teuchos::FancyOStream &out_arg, const VerbLevel verbLevel=Default) const |
virtual std::string | description () const |
Return a simple one-line description of this object. | |
void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const |
Print the object with some verbosity level to an FancyOStream object. | |
virtual std::string | ShortClassName () const |
Return the class name of the object, without template parameters and without namespace. | |
![]() | |
virtual | ~FactoryAcceptor () |
virtual void | SetFactory (const std::string &varName, const RCP< const FactoryBase > &factory)=0 |
Configuration. | |
virtual const RCP< const FactoryBase > | GetFactory (const std::string &varName) const =0 |
![]() | |
ParameterListAcceptorImpl () | |
virtual | ~ParameterListAcceptorImpl ()=default |
virtual void | SetParameterList (const Teuchos::ParameterList ¶mList) |
Set parameters from a parameter list and return with default values. | |
virtual const Teuchos::ParameterList & | GetParameterList () const |
void | SetParameter (const std::string &name, const ParameterEntry &entry) |
Set a parameter directly as a ParameterEntry. | |
const ParameterEntry & | GetParameter (const std::string &name) const |
Retrieves a const entry with the name name. | |
virtual void | GetDocumentation (std::ostream &os) const |
![]() | |
ParameterListAcceptor () | |
virtual | ~ParameterListAcceptor ()=default |
![]() | |
static void | EnableTimerSync () |
static void | DisableTimerSync () |
static void | EnableMultipleCheckGlobally () |
static void | DisableMultipleCheckGlobally () |
![]() | |
static void | SetDefaultVerbLevel (const VerbLevel defaultVerbLevel) |
Set the default (global) verbosity level. | |
static VerbLevel | GetDefaultVerbLevel () |
Get the default (global) verbosity level. | |
static void | SetMueLuOStream (const Teuchos::RCP< Teuchos::FancyOStream > &mueluOStream) |
static void | SetMueLuOFileStream (const std::string &filename) |
static Teuchos::RCP< Teuchos::FancyOStream > | GetMueLuOStream () |
![]() | |
void | Input (Level &level, const std::string &varName) const |
void | Input (Level &level, const std::string &varName, const std::string &varParamName) const |
template<class T > | |
T | Get (Level &level, const std::string &varName) const |
template<class T > | |
T | Get (Level &level, const std::string &varName, const std::string &varParamName) const |
template<class T > | |
void | Set (Level &level, const std::string &varName, const T &data) const |
bool | IsAvailable (Level &level, const std::string &varName) const |
![]() | |
static bool | timerSync_ = false |
Factory for building the approximate inverse of a matrix.
This factory is intended to be used for building an approximate inverse of a given matrix \A. This is for now only used in the SchurComplementFactory to generate a respective \Ainv matrix.
For blocked matrices, the InverseApproximationFactory per default generates an approximate inverse of the A_00 term.
Parameter | type | default | master.xml | validated | requested | description |
---|---|---|---|---|---|---|
A | Factory | null | * | * | Generating factory of the matrix A | |
inverse: approximation type | string | diagonal | * | * | Method used to approximate the inverse | |
inverse: fixing | bool | false | * | * | Fix diagonal by replacing small entries with 1.0 |
The * in the master.xml column denotes that the parameter is defined in the master.xml file. The * in the validated column means that the parameter is declared in the list of valid input parameters (see GetValidParameters() ). The * in the requested column states that the data is requested as input with all dependencies (see DeclareInput() ).
After InverseApproximationFactory::Build the following data is available (if requested)
Parameter | generated by | description |
---|---|---|
Ainv | InverseApproximationFactory | The approximate inverse of a given matrix. |
Definition at line 106 of file MueLu_InverseApproximationFactory_decl.hpp.
|
default |
Constructor.
|
virtual |
Input.
Implements MueLu::SingleLevelFactoryBase.
Definition at line 87 of file MueLu_InverseApproximationFactory_def.hpp.
|
virtual |
Return a const parameter list of valid parameters that setParameterList() will accept.
Also define the default values of parameters according to the input parameter list.
Reimplemented from MueLu::Factory.
Definition at line 73 of file MueLu_InverseApproximationFactory_def.hpp.
|
virtual |
Build an object with this factory.
Implements MueLu::SingleLevelFactoryBase.
Definition at line 92 of file MueLu_InverseApproximationFactory_def.hpp.
|
private |
Sparse inverse calculation method.
Definition at line 148 of file MueLu_InverseApproximationFactory_def.hpp.