sc::NonlinearTransform - The NonlinearTransform class transforms between two nonlinear coordinate
Contents
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
virtualvoidsc::NonlinearTransform::transform_gradient(constRefSCVector&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.
virtualvoidsc::NonlinearTransform::transform_hessian(constRefSymmSCMatrix&h)[virtual]Transform the hessian to the new coordinate system. transform_gradient must be called first to initialize
this routine.
Reimplemented in sc::IdentityTransform.
virtualvoidsc::NonlinearTransform::transform_ihessian(constRefSymmSCMatrix&ih)[virtual]Transform the inverse of the hessian. transform_gradient must be called first to initialize this routine.
Reimplemented in sc::IdentityTransform.
Name
sc::NonlinearTransform - The NonlinearTransform class transforms between two nonlinear coordinate
systems.
Synopsis
#include <transform.h>
Inherits sc::RefCount.
Inherited by sc::IdentityTransform.
PublicMemberFunctions
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.
ProtectedAttributesRefSCMatrixlinear_transform_AdditionalInheritedMembers