|
Stratimikos
Version of the Day
|
Concrete subclass of Thyra::LinearSolverBuilderBase for creating LinearOpWithSolveFactoryBase objects and PreconditionerFactoryBase object on demand for various Trilinos linear solver packages.
More...
#include <Stratimikos_DefaultLinearSolverBuilder.hpp>

Constructors/Initializers/Accessors | |
| DefaultLinearSolverBuilder (const std::string ¶msXmlFileName="", const std::string &extraParamsXmlString="", const std::string ¶msUsedXmlOutFileName="", const std::string ¶msXmlFileNameOption="linear-solver-params-file", const std::string &extraParamsXmlStringOption="extra-linear-solver-params", const std::string ¶msUsedXmlOutFileNameOption="linear-solver-params-used-file") | |
| Construct with default parameters. More... | |
| ~DefaultLinearSolverBuilder () | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, paramsXmlFileName) | |
| The name an XML file that will be read to get XML parameters (if not ""). More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, extraParamsXmlString) | |
| An XML string that will be used to update the parameters (if not ""). More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, paramsUsedXmlOutFileName) | |
| The name of an XML file that will be written (if not "") for the parameters actually used. More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, paramsXmlFileNameOption) | |
The name of the option that will be added the the commandline processor that will set paramsXmlFileName() . More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, extraParamsXmlStringOption) | |
The name of the option that will be added the the commandline processor that will set extraParamsXmlString() . More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, paramsUsedXmlOutFileNameOption) | |
The name of the option that will be added the the commandline processor that will set paramsUsedXmlOutFileName() . More... | |
| void | setLinearSolveStrategyFactory (const RCP< const AbstractFactory< Thyra::LinearOpWithSolveFactoryBase< double > > > &solveStrategyFactory, const std::string &solveStrategyName, const bool makeDefault=false) |
| Set a new linear solver strategy factory object. More... | |
| void | setDefaultLinearSolveStrategyFactoryName (const std::string &solveStrategyName) |
| Set the default linear solver factory name. More... | |
| void | setPreconditioningStrategyFactory (const RCP< const AbstractFactory< Thyra::PreconditionerFactoryBase< double > > > &precStrategyFactory, const std::string &precStrategyName, const bool makeDefault=false) |
| Set a new preconditioner strategy factory object. More... | |
| void | setDefaultPreconditioningStrategyFactoryName (const std::string &precStrategyName) |
| Set the default linear solver factory name. More... | |
| void | setupCLP (Teuchos::CommandLineProcessor *clp) |
| Setup the command-line processor to read in the needed data to extra the parameters from. More... | |
| void | readParameters (std::ostream *out) |
| Force the parameters to be read from a file and/or an extra XML string. More... | |
| void | writeParamsFile (const Thyra::LinearOpWithSolveFactoryBase< double > &lowsFactory, const std::string &outputXmlFileName="") const |
Write the parameters list for a LinearOpWithSolveFactoryBase object to a file after the parameters are read in order to show defaults and create a new list for input the next time. More... | |
| std::string | getLinearSolveStrategyName () const |
Get the name of the linear solver strategy that will be created on the next call to this->createLinearSolverStrategy(). More... | |
| std::string | getPreconditionerStrategyName () const |
Get the name of the preconditioner strategy that will be created on the next call to this->createPreconditioningStrategy(). More... | |
Overridden from ParameterListAcceptor | |
| void | setParameterList (RCP< ParameterList > const ¶mList) |
| RCP< ParameterList > | getNonconstParameterList () |
| RCP< ParameterList > | unsetParameterList () |
| RCP< const ParameterList > | getParameterList () const |
| RCP< const ParameterList > | getValidParameters () const |
Overridden from LinearSolverBuilderBase. | |
| RCP < Thyra::LinearOpWithSolveFactoryBase < double > > | createLinearSolveStrategy (const std::string &linearSolveStrategyName) const |
| RCP < Thyra::PreconditionerFactoryBase < double > > | createPreconditioningStrategy (const std::string &preconditioningStrategyName) const |
Concrete subclass of Thyra::LinearSolverBuilderBase for creating LinearOpWithSolveFactoryBase objects and PreconditionerFactoryBase object on demand for various Trilinos linear solver packages.
For an example of how to use this class see simple_stratimikos_example.cpp.
A hierarchical list of all valid parameters is given below:
Definition at line 118 of file Stratimikos_DefaultLinearSolverBuilder.hpp.
| Stratimikos::DefaultLinearSolverBuilder::DefaultLinearSolverBuilder | ( | const std::string & | paramsXmlFileName = "", |
| const std::string & | extraParamsXmlString = "", |
||
| const std::string & | paramsUsedXmlOutFileName = "", |
||
| const std::string & | paramsXmlFileNameOption = "linear-solver-params-file", |
||
| const std::string & | extraParamsXmlStringOption = "extra-linear-solver-params", |
||
| const std::string & | paramsUsedXmlOutFileNameOption = "linear-solver-params-used-file" |
||
| ) |
Construct with default parameters.
Warning! Do not change the defaults by passing then into this constructor. Instead, use the member functions to set them after *this is constructed. This will help to avoid problems with updates to the ordering of the arguments.
Definition at line 93 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| Stratimikos::DefaultLinearSolverBuilder::~DefaultLinearSolverBuilder | ( | ) |
Definition at line 113 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| Stratimikos::DefaultLinearSolverBuilder::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | std::string | , |
| paramsXmlFileName | |||
| ) |
The name an XML file that will be read to get XML parameters (if not "").
| Stratimikos::DefaultLinearSolverBuilder::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | std::string | , |
| extraParamsXmlString | |||
| ) |
An XML string that will be used to update the parameters (if not "").
| Stratimikos::DefaultLinearSolverBuilder::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | std::string | , |
| paramsUsedXmlOutFileName | |||
| ) |
The name of an XML file that will be written (if not "") for the parameters actually used.
| Stratimikos::DefaultLinearSolverBuilder::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | std::string | , |
| paramsXmlFileNameOption | |||
| ) |
The name of the option that will be added the the commandline processor that will set paramsXmlFileName() .
| Stratimikos::DefaultLinearSolverBuilder::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | std::string | , |
| extraParamsXmlStringOption | |||
| ) |
The name of the option that will be added the the commandline processor that will set extraParamsXmlString() .
| Stratimikos::DefaultLinearSolverBuilder::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | std::string | , |
| paramsUsedXmlOutFileNameOption | |||
| ) |
The name of the option that will be added the the commandline processor that will set paramsUsedXmlOutFileName() .
| void Stratimikos::DefaultLinearSolverBuilder::setLinearSolveStrategyFactory | ( | const RCP< const AbstractFactory< Thyra::LinearOpWithSolveFactoryBase< double > > > & | solveStrategyFactory, |
| const std::string & | solveStrategyName, | ||
| const bool | makeDefault = false |
||
| ) |
Set a new linear solver strategy factory object.
Definition at line 124 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| void Stratimikos::DefaultLinearSolverBuilder::setDefaultLinearSolveStrategyFactoryName | ( | const std::string & | solveStrategyName | ) |
Set the default linear solver factory name.
Definition at line 140 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| void Stratimikos::DefaultLinearSolverBuilder::setPreconditioningStrategyFactory | ( | const RCP< const AbstractFactory< Thyra::PreconditionerFactoryBase< double > > > & | precStrategyFactory, |
| const std::string & | precStrategyName, | ||
| const bool | makeDefault = false |
||
| ) |
Set a new preconditioner strategy factory object.
Definition at line 147 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| void Stratimikos::DefaultLinearSolverBuilder::setDefaultPreconditioningStrategyFactoryName | ( | const std::string & | precStrategyName | ) |
Set the default linear solver factory name.
Definition at line 163 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| void Stratimikos::DefaultLinearSolverBuilder::setupCLP | ( | Teuchos::CommandLineProcessor * | clp | ) |
Setup the command-line processor to read in the needed data to extra the parameters from.
Command-line options with names this->paramsXmlFileNameOption(), this->extraParamsXmlStringOption(), and this->paramsUsedXmlOutFileNameOption() will be set if they are not empty.
Then, when cpl->parse(...) is called, then the options set will be read into this->paramsXmlFileName(), this->extraParamsXmlString(), and this->paramsUsedXmlOutFileName().
After this function is called, this->readParameters() can be called to actually read in the parameters and fill the parameter list.
Definition at line 170 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| void Stratimikos::DefaultLinearSolverBuilder::readParameters | ( | std::ostream * | out | ) |
Force the parameters to be read from a file and/or an extra XML string.
First, if this->getParameterList().get()==NULL and new parameter list will be created.
Second, if this->paramsXmlFileName()!="" then the file this->paramsXmlFileName() will be read to get XML parameters append/update those already in the parameter list.
Third, if this->extraParamsXmlString()!="" then the XML string this->extraParamsXmlString() will be read and used to append/update the parameters already in the parameter list..
Postconditions:
this->getParameterList().get()!=NULL Definition at line 190 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| void Stratimikos::DefaultLinearSolverBuilder::writeParamsFile | ( | const Thyra::LinearOpWithSolveFactoryBase< double > & | lowsFactory, |
| const std::string & | outputXmlFileName = "" |
||
| ) | const |
Write the parameters list for a LinearOpWithSolveFactoryBase object to a file after the parameters are read in order to show defaults and create a new list for input the next time.
If outputXmlFileName!="" then the parameter list with be written to the file outputXmlFileName in XML format. If outputXmlFileName=="", but this->paramsUsedXmlOutFileNameOption()!="" then the parameter list will be written to the file this->paramsUsedXmlOutFileNameOption(). If both outputXmlFileName=="" and this->paramsUsedXmlOutFileNameOption()=="" then no file is written.
Definition at line 219 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| std::string Stratimikos::DefaultLinearSolverBuilder::getLinearSolveStrategyName | ( | ) | const |
Get the name of the linear solver strategy that will be created on the next call to this->createLinearSolverStrategy().
Definition at line 234 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
| std::string Stratimikos::DefaultLinearSolverBuilder::getPreconditionerStrategyName | ( | ) | const |
Get the name of the preconditioner strategy that will be created on the next call to this->createPreconditioningStrategy().
Definition at line 243 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Implements Teuchos::ParameterListAcceptor.
Definition at line 254 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Implements Teuchos::ParameterListAcceptor.
Definition at line 267 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Implements Teuchos::ParameterListAcceptor.
Definition at line 274 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Reimplemented from Teuchos::ParameterListAcceptor.
Definition at line 283 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Reimplemented from Teuchos::ParameterListAcceptor.
Definition at line 290 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Implements Thyra::LinearSolverBuilderBase< double >.
Definition at line 377 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
|
virtual |
Implements Thyra::LinearSolverBuilderBase< double >.
Definition at line 437 of file Stratimikos_DefaultLinearSolverBuilder.cpp.
1.8.5