sc::NonlinearTransform Class Reference

The NonlinearTransform class transforms between two nonlinear coordinate systems. More...

#include <transform.h>

Inheritance diagram for sc::NonlinearTransform:

sc::RefCount sc::Identity sc::IdentityTransform List of all members.

Public Member Functions

virtual void transform_coordinates (const RefSCVector &x)=0
 Transform the coordinates.
virtual void transform_gradient (const RefSCVector &g)
 Transform the gradient at a point in the new coordinate system.
virtual void transform_hessian (const RefSymmSCMatrix &h)
 Transform the hessian to the new coordinate system.
virtual void transform_ihessian (const RefSymmSCMatrix &ih)
 Transform the inverse of the hessian.

Protected Attributes

RefSCMatrix linear_transform_

Detailed Description

The NonlinearTransform class transforms between two nonlinear coordinate systems.

It is needed when a change of coordinates occurs in the middle of an optimization.


Member Function Documentation

virtual void sc::NonlinearTransform::transform_gradient ( const RefSCVector g  )  [virtual]

Transform the gradient at a point in the new coordinate system.

transform_coordinates must be called first to give the point.

Reimplemented in sc::IdentityTransform.

virtual void sc::NonlinearTransform::transform_hessian ( const RefSymmSCMatrix h  )  [virtual]

Transform the hessian to the new coordinate system.

transform_gradient must be called first to initialize this routine.

Reimplemented in sc::IdentityTransform.

virtual void sc::NonlinearTransform::transform_ihessian ( const RefSymmSCMatrix ih  )  [virtual]

Transform the inverse of the hessian.

transform_gradient must be called first to initialize this routine.

Reimplemented in sc::IdentityTransform.


The documentation for this class was generated from the following file:
Generated at Mon Dec 3 23:23:56 2007 for MPQC 2.3.1 using the documentation package Doxygen 1.5.2.