MPQC 2.3.1

- Main Page
- Related Pages
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Attributes | List of all members
sc::NonlinearTransform Class Referenceabstract

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

`#include <transform.h>`

Inheritance diagram for sc::NonlinearTransform:
[legend]
Collaboration diagram for sc::NonlinearTransform:
[legend]

## 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. More...
virtual void | transform_hessian (const RefSymmSCMatrix &h)
| Transform the hessian to the new coordinate system. More...
virtual void | transform_ihessian (const RefSymmSCMatrix &ih)
| Transform the inverse of the hessian. More...
Public Member Functions inherited from sc::RefCount
int | lock_ptr () const
| Lock this object.
int | unlock_ptr () const
| Unlock this object.
void | use_locks (bool inVal)
| start and stop using locks on this object
refcount_t | nreference () const
| Return the reference count.
refcount_t | reference ()
| Increment the reference count and return the new count.
refcount_t | dereference ()
| Decrement the reference count and return the new count.
int | managed () const
void | unmanage ()
| Turn off the reference counting mechanism for this object. More...
int | managed () const
| Return 1 if the object is managed. Otherwise return 0.
Public Member Functions inherited from sc::Identity
Identifier | identifier ()
| Return the Identifier for this argument. More...

## Protected Attributes
RefSCMatrix | linear_transform_

## Additional Inherited Members
Protected Member Functions inherited from sc::RefCount
| RefCount (const RefCount &)
RefCount & | operator= (const RefCount &)

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

- math/optimize/transform.h