Piro  Development
 All Classes Namespaces Functions Variables Enumerations Groups
Public Member Functions | List of all members
Piro::Epetra::SolverFactory Class Reference

Factory for creating Epetra-based Piro solvers. More...

#include <Piro_Epetra_SolverFactory.hpp>

Public Member Functions

Teuchos::RCP
< EpetraExt::ModelEvaluator > 
createSolver (const Teuchos::RCP< Teuchos::ParameterList > &piroParams, const Teuchos::RCP< EpetraExt::ModelEvaluator > &model)
 Create a solved model. More...
 
template<typename T >
void setSource (const Provider< T > &p)
 Set the source for auxiliary objects. More...
 

Detailed Description

Factory for creating Epetra-based Piro solvers.

Piro::SolverFactory is the counterpart for Thyra-based models.

Member Function Documentation

Teuchos::RCP< EpetraExt::ModelEvaluator > Piro::Epetra::SolverFactory::createSolver ( const Teuchos::RCP< Teuchos::ParameterList > &  piroParams,
const Teuchos::RCP< EpetraExt::ModelEvaluator > &  model 
)

Create a solved model.

The type of Piro solver to instantiate is determined by the value of the string entry labeled "Solver Type" and located at the top level of parameter list piroParams.

Currently, the following solver types are available (each accompanied by the corresponding token value):

Referenced by Piro::Epetra::StokhosSolverFactory::createSGModel(), Piro::Epetra::StokhosSolverFactory::createSGSolver(), Piro::Epetra::NECoupledModelEvaluator::NECoupledModelEvaluator(), and Piro::Epetra::StokhosMPSolver::setup().

template<typename T >
void Piro::Epetra::SolverFactory::setSource ( const Provider< T > &  p)
inline

Set the source for auxiliary objects.

While all Piro solvers only require a model evaluator to be properly initialized, some of them also optionally accept so-called `auxiliary' objects which extend their functionality. For instance, observers allow to monitor the solution process and the intermediate steps taken by the solver.

Currently, the following types are acceptable values for the generic type T:

  • NOX::Epetra::Observer
  • NOX::Epetra::ModelEvaluatorInterface
  • NOX::Epetra::LinearSystem
  • LOCA::SaveEigenData::AbstractStrategy
  • LOCA::StatusTest::Abstract
  • Piro::Epetra::AdaptiveSolutionManager
  • Rythmos::IntegrationObserverBase<double>

Referenced by Piro::Epetra::StokhosSolverFactory::createSGModel(), Piro::Epetra::StokhosSolverFactory::createSGSolver(), and Piro::Epetra::StokhosMPSolver::setup().


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