LOCA::Factory Class Reference

Factory class for creating strategies More...

#include <LOCA_Factory.H>

Collaboration diagram for LOCA::Factory:

[legend]
List of all members.

Public Member Functions

 Factory (const Teuchos::RefCountPtr< LOCA::GlobalData > &global_data)
 Constructor.
 Factory (const Teuchos::RefCountPtr< LOCA::GlobalData > &global_data, const Teuchos::RefCountPtr< LOCA::Abstract::Factory > &userFactory)
 Constructor with user-supplied factory.
virtual ~Factory ()
 Destructor.
Strategy create methods
Teuchos::RefCountPtr< LOCA::MultiPredictor::AbstractStrategycreatePredictorStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &predictorParams)
 Create predictor strategy.
Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractStrategycreateContinuationStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &stepperParams, const Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractGroup > &grp, const Teuchos::RefCountPtr< LOCA::MultiPredictor::AbstractStrategy > &pred, const vector< int > &paramIDs)
 Create continuation strategy.
Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractGroupcreateBifurcationStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &bifurcationParams, const Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractGroup > &grp)
 Create bifurcation strategy.
Teuchos::RefCountPtr< LOCA::StepSize::AbstractStrategycreateStepSizeStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &stepsizeParams)
 Create step size control strategy.
Teuchos::RefCountPtr< LOCA::BorderedSolver::AbstractStrategycreateBorderedSolverStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &solverParams)
 Create bordered system solver strategy.
Teuchos::RefCountPtr< LOCA::Eigensolver::AbstractStrategycreateEigensolverStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &eigenParams)
 Create eigensolver strategy.
Teuchos::RefCountPtr< LOCA::EigenvalueSort::AbstractStrategycreateEigenvalueSortStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &eigenParams)
 Create eigenvalue sort strategy.
Teuchos::RefCountPtr< LOCA::SaveEigenData::AbstractStrategycreateSaveEigenDataStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &eigenParams)
 Create strategy to save eigenvector/value data.
Teuchos::RefCountPtr< LOCA::AnasaziOperator::AbstractStrategycreateAnasaziOperatorStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &eigenParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &solverParams, const Teuchos::RefCountPtr< NOX::Abstract::Group > &grp)
 Create Anasazi operator strategy.
Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::SolverStrategycreateMooreSpenceTurningPointSolverStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &solverParams)
 Create Moore-Spence turning point solver strategy.
Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::SolverStrategycreateMooreSpencePitchforkSolverStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &solverParams)
 Create Moore-Spence pitchfork solver strategy.
Teuchos::RefCountPtr< LOCA::Hopf::MooreSpence::SolverStrategycreateMooreSpenceHopfSolverStrategy (const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &topParams, const Teuchos::RefCountPtr< Teuchos::ParameterList > &solverParams)
 Create Moore-Spence Hopf solver strategy.

Protected Attributes

Teuchos::RefCountPtr< LOCA::GlobalDataglobalData
 Global data.
Teuchos::RefCountPtr< LOCA::Abstract::Factoryfactory
 User provided factory.
bool haveFactory
 Flag indicating whether we have a factory or not.
LOCA::MultiPredictor::Factory predictorFactory
 Predictor factory.
LOCA::MultiContinuation::Factory continuationFactory
 Continuation factory.
LOCA::Bifurcation::Factory bifurcationFactory
 Bifurcation factory.
LOCA::StepSize::Factory stepsizeFactory
 Step size factory.
LOCA::BorderedSolver::Factory borderedFactory
 Bordered system factory.
LOCA::Eigensolver::Factory eigensolverFactory
 Eigensolver factory.
LOCA::EigenvalueSort::Factory eigenvalueSortFactory
 EigenvalueSort factory.
LOCA::SaveEigenData::Factory saveEigenFactory
 Save eigen data factory.
LOCA::AnasaziOperator::Factory anasaziOperatorFactory
 Anasazi operator factory.
LOCA::TurningPoint::MooreSpence::SolverFactory mooreSpenceTurningPointSolverFactory
 Moore-Spence turning point solver factory.
LOCA::Pitchfork::MooreSpence::SolverFactory mooreSpencePitchforkSolverFactory
 Moore-Spence pitchfork point solver factory.
LOCA::Hopf::MooreSpence::SolverFactory mooreSpenceHopfSolverFactory
 Moore-Spence Hopf point solver factory.

Detailed Description

Factory class for creating strategies

The Factory class provides a single location for instantiating various strategies based on parameter list choices. It provides a create() method for each type of strategy which instantiates strategy objects for that type. Each create method takes as arguments a ref-count pointer to a LOCA::Parameter::SublistParser and a parameter list. The parameter list determines which strategy to choose and also should provide any parameters the strategy requires. The sublist parser provides a parsed version of the top-level parameter list and allows strategies to easily obtain other sublists from the top-level list. A user-supplied factory may also be provided for instantiating user-defined strategies. If a user-defined factory is supplied, each create method will first attempt to instantiate the strategy using it, and then instantiate strategies itself if necessary.


Constructor & Destructor Documentation

LOCA::Factory::Factory const Teuchos::RefCountPtr< LOCA::GlobalData > &  global_data  ) 
 

Constructor.

Parameters:
global_data [in] Global data object. The constructor sets the factory member of the global data to this.

LOCA::Factory::Factory const Teuchos::RefCountPtr< LOCA::GlobalData > &  global_data,
const Teuchos::RefCountPtr< LOCA::Abstract::Factory > &  userFactory
 

Constructor with user-supplied factory.

Parameters:
global_data [in] Global data object. The constructor sets the factory member of the global data to this.
userFactory [in] A user-supplied factory for instantiating user-defined strategies.


Member Function Documentation

Teuchos::RefCountPtr< LOCA::AnasaziOperator::AbstractStrategy > LOCA::Factory::createAnasaziOperatorStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  eigenParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  solverParams,
const Teuchos::RefCountPtr< NOX::Abstract::Group > &  grp
 

Create Anasazi operator strategy.

Instantiates an Anasazi operator strategy based on the "Operator" parameter of the "Eigensolver" sublist. See LOCA::AnasaziOperator::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractGroup > LOCA::Factory::createBifurcationStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  bifurcationParams,
const Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractGroup > &  grp
 

Create bifurcation strategy.

Instantiates a bifurcation strategy based on the "Method" parameter of the "Bifurcation" sublist. See LOCA::Bifurcation::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::BorderedSolver::AbstractStrategy > LOCA::Factory::createBorderedSolverStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  solverParams
 

Create bordered system solver strategy.

Instantiates an bordered system solver strategy based on the "Bordered Solver Method" parameter of the "Linear Solver" sublist. See LOCA::BorderedSolver::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractStrategy > LOCA::Factory::createContinuationStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  stepperParams,
const Teuchos::RefCountPtr< LOCA::MultiContinuation::AbstractGroup > &  grp,
const Teuchos::RefCountPtr< LOCA::MultiPredictor::AbstractStrategy > &  pred,
const vector< int > &  paramIDs
 

Create continuation strategy.

Instantiates a continuation strategy based on the "Continuation Method" parameter of the "Stepper" sublist. See LOCA::MultiContinuation::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::Eigensolver::AbstractStrategy > LOCA::Factory::createEigensolverStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  eigenParams
 

Create eigensolver strategy.

Instantiates an eigensolver strategy based on the "Method" parameter of the "Eigensolver" sublist. See LOCA::Eigensolver::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::EigenvalueSort::AbstractStrategy > LOCA::Factory::createEigenvalueSortStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  eigenParams
 

Create eigenvalue sort strategy.

Instantiates an eigenvalue sorting strategy based on the "Sorting Method" parameter of the "Eigensolver" sublist. See LOCA::EigenvalueSort::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::Hopf::MooreSpence::SolverStrategy > LOCA::Factory::createMooreSpenceHopfSolverStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  solverParams
 

Create Moore-Spence Hopf solver strategy.

Instantiates a solver strategy based on the "Solver Method" parameter of the "Bifurcation" sublist. See LOCA::Hopf::MooreSpence::SolverFactory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::Pitchfork::MooreSpence::SolverStrategy > LOCA::Factory::createMooreSpencePitchforkSolverStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  solverParams
 

Create Moore-Spence pitchfork solver strategy.

Instantiates a solver strategy based on the "Solver Method" parameter of the "Bifurcation" sublist. See LOCA::Pitchfork::MooreSpence::SolverFactory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::TurningPoint::MooreSpence::SolverStrategy > LOCA::Factory::createMooreSpenceTurningPointSolverStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  solverParams
 

Create Moore-Spence turning point solver strategy.

Instantiates a solver strategy based on the "Solver Method" parameter of the "Bifurcation" sublist. See LOCA::TurningPoint::MooreSpence::SolverFactory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::MultiPredictor::AbstractStrategy > LOCA::Factory::createPredictorStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  predictorParams
 

Create predictor strategy.

Instantiates a predictor strategy based on the "Method" parameter of the "Predictor" sublist. See LOCA::MultiPredictor::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::SaveEigenData::AbstractStrategy > LOCA::Factory::createSaveEigenDataStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  eigenParams
 

Create strategy to save eigenvector/value data.

Instantiates a strategy to save eigenvector/value data based on the "Save Eigen Data Method" parameter of the "Eigensolver" sublist. See LOCA::SaveEigenData::Factory for a description of available strategies.

Teuchos::RefCountPtr< LOCA::StepSize::AbstractStrategy > LOCA::Factory::createStepSizeStrategy const Teuchos::RefCountPtr< LOCA::Parameter::SublistParser > &  topParams,
const Teuchos::RefCountPtr< Teuchos::ParameterList > &  stepsizeParams
 

Create step size control strategy.

Instantiates a step size control strategy based on the "Method" parameter of the "Step Size" sublist. See LOCA::StepSize::Factory for a description of available strategies.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:38:29 2008 for NOX by doxygen 1.3.9.1