NOX  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
LOCA::Abstract::Factory Class Referenceabstract

Abstract interface for providing a user-defined factory More...

#include <LOCA_Abstract_Factory.H>

Inheritance diagram for LOCA::Abstract::Factory:
Inheritance graph
[legend]

Public Member Functions

 Factory ()
 Constructor.
 
virtual ~Factory ()
 Destructor.
 
virtual void init (const Teuchos::RCP< LOCA::GlobalData > &global_data)=0
 Initialize factory. More...
 
Strategy create methods
virtual bool createPredictorStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &predictorParams, Teuchos::RCP< LOCA::MultiPredictor::AbstractStrategy > &strategy)
 Create predictor strategy.
 
virtual bool createContinuationStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &stepperParams, const Teuchos::RCP< LOCA::MultiContinuation::AbstractGroup > &grp, const Teuchos::RCP< LOCA::MultiPredictor::AbstractStrategy > &pred, const std::vector< int > &paramIDs, Teuchos::RCP< LOCA::MultiContinuation::AbstractStrategy > &strategy)
 Create continuation strategy.
 
virtual bool createBifurcationStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &bifurcationParams, const Teuchos::RCP< LOCA::MultiContinuation::AbstractGroup > &grp, Teuchos::RCP< LOCA::MultiContinuation::AbstractGroup > &strategy)
 Create bifurcation strategy.
 
virtual bool createStepSizeStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &stepsizeParams, Teuchos::RCP< LOCA::StepSize::AbstractStrategy > &strategy)
 Create step size strategy.
 
virtual bool createBorderedSolverStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams, Teuchos::RCP< LOCA::BorderedSolver::AbstractStrategy > &strategy)
 Create bordered system solver strategy.
 
virtual bool createEigensolverStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &eigenParams, Teuchos::RCP< LOCA::Eigensolver::AbstractStrategy > &strategy)
 Create eigensolver strategy.
 
virtual bool createEigenvalueSortStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &eigenParams, Teuchos::RCP< LOCA::EigenvalueSort::AbstractStrategy > &strategy)
 Create eigenvalue sorting strategy.
 
virtual bool createSaveEigenDataStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &eigenParams, Teuchos::RCP< LOCA::SaveEigenData::AbstractStrategy > &strategy)
 Create strategy to save eigenvector/value data.
 
virtual bool createAnasaziOperatorStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &eigenParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams, const Teuchos::RCP< NOX::Abstract::Group > &grp, Teuchos::RCP< LOCA::AnasaziOperator::AbstractStrategy > &strategy)
 Create Anasazi operator.
 
virtual bool createMooreSpenceTurningPointSolverStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams, Teuchos::RCP< LOCA::TurningPoint::MooreSpence::SolverStrategy > &strategy)
 Create Moore-Spence turning point solver strategy.
 
virtual bool createMooreSpencePitchforkSolverStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams, Teuchos::RCP< LOCA::Pitchfork::MooreSpence::SolverStrategy > &strategy)
 Create Moore-Spence pitchfork solver strategy.
 
virtual bool createMooreSpenceHopfSolverStrategy (const std::string &strategyName, const Teuchos::RCP< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RCP< Teuchos::ParameterList > &solverParams, Teuchos::RCP< LOCA::Hopf::MooreSpence::SolverStrategy > &strategy)
 Create Moore-Spence Hopf solver strategy.
 

Detailed Description

Abstract interface for providing a user-defined factory

LOCA::Abstract::Factory provides an abstract interface for providing user-defined factories to the LOCA::Factory. The LOCA::Factory provides a mechanism for instantiating different strategies based on parameter list choices. This class allows additional strategies to be instantiated by the factory without modifying the factory itself. This is done by deriving a user-defined factory from this interface, implementing any of the create methods for the user-defined strategies, and passing an instance of the derived factory to the LOCA::Factory object. Any derived class must implement the init() method to set the global data object which the factory can then pass to any instantiated strategies.

Member Function Documentation

virtual void LOCA::Abstract::Factory::init ( const Teuchos::RCP< LOCA::GlobalData > &  global_data)
pure virtual

Initialize factory.

The LOCA::Factory will call this method to initialize the user provided factory. The user-provided factory should perform any needed initialization here that cannot occur at construction.

Implemented in LOCA::Epetra::Factory, LOCA::Tpetra::Factory, and LOCA::LAPACK::Factory.


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