gov.sandia.cognition.learning.function.vector
Class ElementWiseDifferentiableVectorFunction

java.lang.Object
  extended by gov.sandia.cognition.util.AbstractCloneableSerializable
      extended by gov.sandia.cognition.learning.function.vector.ElementWiseVectorFunction
          extended by gov.sandia.cognition.learning.function.vector.ElementWiseDifferentiableVectorFunction
All Implemented Interfaces:
Evaluator<Vector,Vector>, DifferentiableEvaluator<Vector,Vector,Matrix>, DifferentiableVectorFunction, VectorFunction, CloneableSerializable, Serializable, Cloneable

public class ElementWiseDifferentiableVectorFunction
extends ElementWiseVectorFunction
implements DifferentiableVectorFunction

An ElementWiseVectorFunction that is also a DifferentiableVectorFunction

Since:
2.0
Author:
Kevin R. Dixon
See Also:
Serialized Form

Constructor Summary
ElementWiseDifferentiableVectorFunction()
          Creates a new ElementWiseDifferentiableVectorFunction with a linear scalar function as the default function (f(x_i) = x_i).
ElementWiseDifferentiableVectorFunction(DifferentiableUnivariateScalarFunction scalarFunction)
          Creates a new instance of ElementWiseDifferentiableVectorFunction
 
Method Summary
 Matrix differentiate(Vector input)
          Differentiate the VectorFunction at input and return the Jacobian
 DifferentiableUnivariateScalarFunction getScalarFunction()
          Getter for scalarFunction
 void setScalarFunction(UnivariateScalarFunction scalarFunction)
          Setter for scalarFunction
 
Methods inherited from class gov.sandia.cognition.learning.function.vector.ElementWiseVectorFunction
clone, evaluate, evaluate
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface gov.sandia.cognition.evaluator.Evaluator
evaluate
 
Methods inherited from interface gov.sandia.cognition.util.CloneableSerializable
clone
 

Constructor Detail

ElementWiseDifferentiableVectorFunction

public ElementWiseDifferentiableVectorFunction()
Creates a new ElementWiseDifferentiableVectorFunction with a linear scalar function as the default function (f(x_i) = x_i).


ElementWiseDifferentiableVectorFunction

public ElementWiseDifferentiableVectorFunction(DifferentiableUnivariateScalarFunction scalarFunction)
Creates a new instance of ElementWiseDifferentiableVectorFunction

Parameters:
scalarFunction - Differentiable scalar function
Method Detail

differentiate

public Matrix differentiate(Vector input)
Description copied from interface: DifferentiableVectorFunction
Differentiate the VectorFunction at input and return the Jacobian

Specified by:
differentiate in interface DifferentiableEvaluator<Vector,Vector,Matrix>
Specified by:
differentiate in interface DifferentiableVectorFunction
Parameters:
input - Vector input to the VectorFunction, about which to evaluate the VectorFunction
Returns:
Jacobian at input

getScalarFunction

public DifferentiableUnivariateScalarFunction getScalarFunction()
Description copied from class: ElementWiseVectorFunction
Getter for scalarFunction

Overrides:
getScalarFunction in class ElementWiseVectorFunction
Returns:
Underlying scalar function to apply to each Vector element

setScalarFunction

public void setScalarFunction(UnivariateScalarFunction scalarFunction)
Description copied from class: ElementWiseVectorFunction
Setter for scalarFunction

Overrides:
setScalarFunction in class ElementWiseVectorFunction
Parameters:
scalarFunction - Underlying scalar function to apply to each Vector element