com.lgc.wsh.opt
Interface Quadratic

All Known Implementing Classes:
TransformQuadratic

public interface Quadratic

Define a second-order quadratic operation on a Vector 0.5 x'Hx + b'x where H is a positive semidefinite quadratic and b is a linear gradient.


Method Summary
 Vect getB()
          Get the linear gradient term b of the quadratic expression.
 void inverseHessian(Vect x)
          Multiply vector by an approximate inverse of the Hessian.
 void multiplyHessian(Vect x)
          Multiply vector by the quadratic Hessian H.
 

Method Detail

multiplyHessian

void multiplyHessian(Vect x)
Multiply vector by the quadratic Hessian H. Perform the operation in-place.

Parameters:
x - Vector to be multiplied and modified.

inverseHessian

void inverseHessian(Vect x)
Multiply vector by an approximate inverse of the Hessian. Perform the operation in-place. This method is useful to speed convergence. An empty implementation is equivalent to an identity.

Parameters:
x - Vector to be multiplied and modified.

getB

Vect getB()
Get the linear gradient term b of the quadratic expression. The recipient receives a unique copy that must be disposed.

Returns:
The vector b where the quadratic is x'Hx + b'x