MueLu Version of the Day
|
Block triangle Uzawa smoother for 2x2 block matrices. More...
#include <MueLu_UzawaSmoother_decl.hpp>
Public Member Functions | |
RCP< const ParameterList > | GetValidParameterList () const |
Input. | |
void | DeclareInput (Level ¤tLevel) const |
Input. | |
void | SetVelocityPredictionFactoryManager (RCP< FactoryManager > FactManager) |
Set factory manager for internal velocity prediction. | |
void | SetSchurCompFactoryManager (RCP< FactoryManager > FactManager) |
Set factory manager for internal SchurComplement handling. | |
void | AddFactoryManager (RCP< const FactoryManagerBase > FactManager, int pos) |
Add a factory manager at a specific position. | |
![]() | |
SmootherPrototype () | |
@nameConstructors/Destructors. | |
virtual | ~SmootherPrototype () |
virtual void | CallBuild (Level &) const |
virtual void | CallDeclareInput (Level &requestedLevel) const |
bool | IsSetup () const |
Get the state of a smoother prototype. | |
void | IsSetup (bool const &ToF) |
Set the state of a smoother prototype. | |
![]() | |
SmootherBase () | |
virtual | ~SmootherBase () |
void | declareConstructionOutcome (bool fail, std::string msg) |
bool | constructionSuccessful () |
std::string | constructionErrorMsg () |
![]() | |
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 |
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. | |
![]() | |
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 |
void | EnableMultipleCallCheck () const |
void | DisableMultipleCallCheck () const |
void | ResetDebugData () const |
![]() | |
FactoryBase () | |
Constructor. | |
virtual | ~FactoryBase () |
Destructor. | |
int | GetID () const |
return unique factory id | |
![]() | |
virtual | ~FactoryAcceptor () |
![]() | |
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 |
Private Types | |
typedef Xpetra::MapExtractor< Scalar, LocalOrdinal, GlobalOrdinal, Node > | MapExtractorClass |
Overridden from Teuchos::Describable | |
std::string | type_ = "Uzawa" |
smoother type | |
RCP< const FactoryBase > | AFact_ |
A Factory. | |
RCP< Matrix > | A_ = Teuchos::null |
block operator | |
RCP< const MapExtractorClass > | rangeMapExtractor_ |
range map extractor (from A_ generated by AFact) | |
RCP< const MapExtractorClass > | domainMapExtractor_ |
domain map extractor (from A_ generated by AFact) | |
Teuchos::RCP< Vector > | diagFinv_ |
matrices | |
Teuchos::RCP< Matrix > | F_ |
fluid operator | |
Teuchos::RCP< Matrix > | G_ |
pressure gradient operator | |
Teuchos::RCP< Matrix > | D_ |
divergence operator | |
Teuchos::RCP< Matrix > | Z_ |
pressure stabilization term or null block | |
Teuchos::RCP< SmootherBase > | velPredictSmoo_ |
smoother for velocity prediction | |
Teuchos::RCP< SmootherBase > | schurCompSmoo_ |
smoother for SchurComplement equation | |
std::vector< Teuchos::RCP< const FactoryManagerBase > > | FactManager_ |
Vector of internal factory managers. | |
std::string | description () const |
Return a simple one-line description of this object. | |
void | print (Teuchos::FancyOStream &out, const VerbLevel verbLevel=Default) const |
Print the object with some verbosity level to an FancyOStream object. | |
size_t | getNodeSmootherComplexity () const |
Get a rough estimate of cost per iteration. | |
Setup and Apply methods. | |
void | Setup (Level ¤tLevel) |
Setup routine. | |
void | Apply (MultiVector &X, MultiVector const &B, bool InitialGuessIsZero=false) const |
Apply the Braess Sarazin smoother. | |
RCP< SmootherPrototype > | Copy () const |
Additional Inherited Members | |
![]() | |
typedef Scalar | scalar_type |
typedef LocalOrdinal | local_ordinal_type |
typedef GlobalOrdinal | global_ordinal_type |
typedef Node | node_type |
![]() | |
typedef Scalar | scalar_type |
typedef LocalOrdinal | local_ordinal_type |
typedef GlobalOrdinal | global_ordinal_type |
typedef Node | node_type |
![]() | |
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 () |
![]() | |
static void | EnableTimerSync () |
static void | DisableTimerSync () |
static void | EnableMultipleCheckGlobally () |
static void | DisableMultipleCheckGlobally () |
![]() | |
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 |
Block triangle Uzawa smoother for 2x2 block matrices.
Definition at line 87 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
Definition at line 89 of file MueLu_UzawaSmoother_decl.hpp.
|
virtual |
Input.
Reimplemented from MueLu::Factory.
Definition at line 73 of file MueLu_UzawaSmoother_def.hpp.
|
virtual |
Input.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 117 of file MueLu_UzawaSmoother_def.hpp.
void MueLu::UzawaSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::SetVelocityPredictionFactoryManager | ( | RCP< FactoryManager > | FactManager | ) |
Set factory manager for internal velocity prediction.
Definition at line 107 of file MueLu_UzawaSmoother_def.hpp.
void MueLu::UzawaSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::SetSchurCompFactoryManager | ( | RCP< FactoryManager > | FactManager | ) |
Set factory manager for internal SchurComplement handling.
Definition at line 112 of file MueLu_UzawaSmoother_def.hpp.
void MueLu::UzawaSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::AddFactoryManager | ( | RCP< const FactoryManagerBase > | FactManager, |
int | pos ) |
Add a factory manager at a specific position.
See FactManager_ to explanation of positions.
Definition at line 84 of file MueLu_UzawaSmoother_def.hpp.
|
virtual |
Setup routine.
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 133 of file MueLu_UzawaSmoother_def.hpp.
|
virtual |
Apply the Braess Sarazin smoother.
X | initial guess |
B | right-hand side |
InitialGuessIsZero | TODO This option has no effect. |
Implements MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 173 of file MueLu_UzawaSmoother_def.hpp.
|
virtual |
Implements MueLu::SmootherPrototype< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 283 of file MueLu_UzawaSmoother_def.hpp.
|
virtual |
Return a simple one-line description of this object.
Reimplemented from MueLu::Describable.
Definition at line 288 of file MueLu_UzawaSmoother_def.hpp.
void MueLu::UzawaSmoother< Scalar, LocalOrdinal, GlobalOrdinal, Node >::print | ( | Teuchos::FancyOStream & | out, |
const VerbLevel | verbLevel = Default ) const |
Print the object with some verbosity level to an FancyOStream object.
Definition at line 296 of file MueLu_UzawaSmoother_def.hpp.
|
virtual |
Get a rough estimate of cost per iteration.
Implements MueLu::SmootherBase< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 309 of file MueLu_UzawaSmoother_def.hpp.
|
private |
smoother type
Definition at line 158 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
A Factory.
Definition at line 160 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
block operator
Definition at line 163 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
range map extractor (from A_ generated by AFact)
Definition at line 165 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
domain map extractor (from A_ generated by AFact)
Definition at line 166 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
matrices
inverse diagonal of fluid operator (vector).
Definition at line 169 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
fluid operator
Definition at line 170 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
pressure gradient operator
Definition at line 171 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
divergence operator
Definition at line 172 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
pressure stabilization term or null block
Definition at line 173 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
smoother for velocity prediction
Definition at line 175 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
smoother for SchurComplement equation
Definition at line 176 of file MueLu_UzawaSmoother_decl.hpp.
|
private |
Vector of internal factory managers.
Definition at line 184 of file MueLu_UzawaSmoother_decl.hpp.