Piro Development
Public Member Functions
Piro::Epetra::SolverFactory Class Reference

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

#include <Piro_Epetra_SolverFactory.hpp>

List of all members.

Public Member Functions

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

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):

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>

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Enumerations