NOX::Direction::Broyden::BroydenMemoryUnit Class Reference

Utility class for NOX::Direction::Broyden::BroydenMemory. More...

#include <NOX_Direction_Broyden.H>

Collaboration diagram for NOX::Direction::Broyden::BroydenMemoryUnit:
Collaboration graph

List of all members.

Public Member Functions

 BroydenMemoryUnit ()
 ~BroydenMemoryUnit ()
void reset (const NOX::Abstract::Vector &d)
 Reset this memory unit with a new update vector.
void setStep (double step)
 Update the step length.
Teuchos::RCP< const
sPtr () const
 Get pointer to $s$.
double step () const
 Get the step, $\lambda$.
double sNormSqr () const
 Get $\|s\|_2^2 $.

Detailed Description

Utility class for NOX::Direction::Broyden::BroydenMemory.

Stores an $s$-vector and associated information for the limited-memory Broyden update.

Throughout the docuementation of this class, we make the following associations.

Constructor & Destructor Documentation

NOX::Direction::Broyden::BroydenMemoryUnit::BroydenMemoryUnit (  ) 


Sets sptr to NULL, and lambda and snormsqr to zero.

NOX::Direction::Broyden::BroydenMemoryUnit::~BroydenMemoryUnit (  ) 


Deletes sptr.

Member Function Documentation

void NOX::Direction::Broyden::BroydenMemoryUnit::reset ( const NOX::Abstract::Vector d  ) 

Reset this memory unit with a new update vector.

Let the vector $d$ represent the input argument. Then we set $s=d$. Also recalculates $\|s\|_2^2$ and sets $\lambda = 0$.

If sptr is NULL, space is allocated by cloning the input vector (see NOX::Abstract::Vector::clone).

References NOX::Abstract::Vector::clone(), NOX::DeepCopy, and is_null().

void NOX::Direction::Broyden::BroydenMemoryUnit::setStep ( double  step  ) 

Update the step length.

Set $ \lambda $ to the input argument. If $ \lambda \neq 1 $, then reset $ s = \lambda s $ and $ \|s\|_2^2 = \lambda^2 \|s\|_2^2 $.

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
Generated on Wed Apr 13 09:59:44 2011 for NOX by  doxygen 1.6.3