NOX Development
Loading...
Searching...
No Matches
LOCA::MultiPredictor::Constant Class Reference

Constant predictor strategy More...

#include <LOCA_MultiPredictor_Constant.H>

Inheritance diagram for LOCA::MultiPredictor::Constant:
Collaboration diagram for LOCA::MultiPredictor::Constant:

Public Member Functions

 Constant (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< Teuchos::ParameterList > &predParams)
 Constructor.
virtual ~Constant ()
 Destructor.
 Constant (const Constant &source, NOX::CopyType type=NOX::DeepCopy)
 Copy constructor.
virtual LOCA::MultiPredictor::AbstractStrategyoperator= (const LOCA::MultiPredictor::AbstractStrategy &source)
 Assignment operator.
virtual Teuchos::RCP< LOCA::MultiPredictor::AbstractStrategyclone (NOX::CopyType type=NOX::DeepCopy) const
 Clone function.
virtual NOX::Abstract::Group::ReturnType compute (bool baseOnSecant, const std::vector< double > &stepSize, LOCA::MultiContinuation::ExtendedGroup &grp, const LOCA::MultiContinuation::ExtendedVector &prevXVec, const LOCA::MultiContinuation::ExtendedVector &xVec)
 Compute the predictor given the current and previous solution vectors. Set baseOnSecant to false if the predictor orientation should not be based on the secant vector (first or last steps of a continuation run).
virtual NOX::Abstract::Group::ReturnType evaluate (const std::vector< double > &stepSize, const LOCA::MultiContinuation::ExtendedVector &xVec, LOCA::MultiContinuation::ExtendedMultiVector &result) const
 Evaluate predictor with step size stepSize.
virtual NOX::Abstract::Group::ReturnType computeTangent (LOCA::MultiContinuation::ExtendedMultiVector &tangent)
 Compute tangent to predictor and store in tangent.
virtual bool isTangentScalable () const
 Is the tangent vector for this predictor scalable.
Public Member Functions inherited from LOCA::MultiPredictor::AbstractStrategy
 AbstractStrategy ()
 Constructor.
virtual ~AbstractStrategy ()
 Destructor.

Protected Attributes

Teuchos::RCP< LOCA::GlobalDataglobalData
 LOCA global data object.
Teuchos::RCP< LOCA::MultiContinuation::ExtendedMultiVectorpredictor
 Stores predictor vector.
Teuchos::RCP< LOCA::MultiContinuation::ExtendedVectorsecant
 Stores secant vector for setting orientation.
bool initialized
 Flag indicating whether vectors have been initialized.

Additional Inherited Members

Protected Member Functions inherited from LOCA::MultiPredictor::AbstractStrategy
virtual void setPredictorOrientation (bool baseOnSecant, const std::vector< double > &stepSize, const LOCA::MultiContinuation::ExtendedGroup &grp, const LOCA::MultiContinuation::ExtendedVector &prevXVec, const LOCA::MultiContinuation::ExtendedVector &xVec, LOCA::MultiContinuation::ExtendedVector &secant, LOCA::MultiContinuation::ExtendedMultiVector &tangent)
 Sets orientation of predictor based on parameter change from previous steps.

Detailed Description

Constant predictor strategy

This class computes the predictor direction given by a vector of zeros for the solution vector component and 1 for the parameter component. When used with natural continuation, this corresponds to what is commonly referred to as zero'th order continuation.

Constructor & Destructor Documentation

◆ Constant() [1/2]

LOCA::MultiPredictor::Constant::Constant ( const Teuchos::RCP< LOCA::GlobalData > & global_data,
const Teuchos::RCP< Teuchos::ParameterList > & predParams )

Constructor.

Parameters
global_data[in] Global data object
predParams[in] Predictor parameters. None are currently referenced.

References globalData, initialized, predictor, and secant.

Referenced by clone().

◆ Constant() [2/2]

LOCA::MultiPredictor::Constant::Constant ( const Constant & source,
NOX::CopyType type = NOX::DeepCopy )

Copy constructor.

References globalData, initialized, predictor, and secant.

Member Function Documentation

◆ clone()

Teuchos::RCP< LOCA::MultiPredictor::AbstractStrategy > LOCA::MultiPredictor::Constant::clone ( NOX::CopyType type = NOX::DeepCopy) const
virtual

Clone function.

Implements LOCA::MultiPredictor::AbstractStrategy.

References Constant().

◆ compute()

NOX::Abstract::Group::ReturnType LOCA::MultiPredictor::Constant::compute ( bool baseOnSecant,
const std::vector< double > & stepSize,
LOCA::MultiContinuation::ExtendedGroup & grp,
const LOCA::MultiContinuation::ExtendedVector & prevXVec,
const LOCA::MultiContinuation::ExtendedVector & xVec )
virtual

Compute the predictor given the current and previous solution vectors. Set baseOnSecant to false if the predictor orientation should not be based on the secant vector (first or last steps of a continuation run).

This method actually implements the predictor computation described above

Implements LOCA::MultiPredictor::AbstractStrategy.

References LOCA::MultiContinuation::ExtendedVector::clone(), LOCA::Extended::Vector::createMultiVector(), globalData, initialized, NOX::Abstract::Group::Ok, predictor, secant, LOCA::MultiPredictor::AbstractStrategy::setPredictorOrientation(), NOX::ShapeCopy, and NOX::Utils::StepperDetails.

◆ computeTangent()

NOX::Abstract::Group::ReturnType LOCA::MultiPredictor::Constant::computeTangent ( LOCA::MultiContinuation::ExtendedMultiVector & tangent)
virtual

Compute tangent to predictor and store in tangent.

Implements LOCA::MultiPredictor::AbstractStrategy.

References NOX::Abstract::Group::Ok, and predictor.

◆ evaluate()

NOX::Abstract::Group::ReturnType LOCA::MultiPredictor::Constant::evaluate ( const std::vector< double > & stepSize,
const LOCA::MultiContinuation::ExtendedVector & xVec,
LOCA::MultiContinuation::ExtendedMultiVector & result ) const
virtual

Evaluate predictor with step size stepSize.

This method computes result[i] = xVec[i] + stepSize[i] * v[i] for each i, where v[i] is the ith predictor direction.

Implements LOCA::MultiPredictor::AbstractStrategy.

References NOX::Abstract::Group::Ok, and predictor.

◆ isTangentScalable()

bool LOCA::MultiPredictor::Constant::isTangentScalable ( ) const
virtual

Is the tangent vector for this predictor scalable.

For the constant predictor, this always returns false.

Implements LOCA::MultiPredictor::AbstractStrategy.

◆ operator=()

LOCA::MultiPredictor::AbstractStrategy & LOCA::MultiPredictor::Constant::operator= ( const LOCA::MultiPredictor::AbstractStrategy & source)
virtual

Assignment operator.

Implements LOCA::MultiPredictor::AbstractStrategy.

References NOX::DeepCopy, globalData, initialized, predictor, and secant.

Member Data Documentation

◆ globalData

Teuchos::RCP<LOCA::GlobalData> LOCA::MultiPredictor::Constant::globalData
protected

LOCA global data object.

Referenced by compute(), Constant(), Constant(), and operator=().

◆ initialized

bool LOCA::MultiPredictor::Constant::initialized
protected

Flag indicating whether vectors have been initialized.

Referenced by compute(), Constant(), Constant(), and operator=().

◆ predictor

Teuchos::RCP<LOCA::MultiContinuation::ExtendedMultiVector> LOCA::MultiPredictor::Constant::predictor
protected

Stores predictor vector.

Referenced by compute(), computeTangent(), Constant(), Constant(), evaluate(), and operator=().

◆ secant

Teuchos::RCP<LOCA::MultiContinuation::ExtendedVector> LOCA::MultiPredictor::Constant::secant
protected

Stores secant vector for setting orientation.

Referenced by compute(), Constant(), Constant(), and operator=().


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