de.jstacs.algorithms.optimization
Class NegativeDifferentiableFunction

java.lang.Object
  extended by de.jstacs.algorithms.optimization.DifferentiableFunction
      extended by de.jstacs.algorithms.optimization.NegativeDifferentiableFunction
All Implemented Interfaces:
Function

public class NegativeDifferentiableFunction
extends DifferentiableFunction

The negative function -f for a given DifferentiableFunction f.

Author:
Jens Keilwagen

Constructor Summary
NegativeDifferentiableFunction(DifferentiableFunction f)
          Creates the DifferentiableFunction f for which -f should be calculated.
 
Method Summary
 double evaluateFunction(double[] x)
          Evaluates the function at a certain vector (in mathematical sense) x.
 double[] evaluateGradientOfFunction(double[] x)
          Evaluates the gradient of a function at a certain vector (in mathematical sense) x, i.e., $\nabla f(\underline{x}) = \left(\frac{\partial f(\underline{x})}{\partial x_1},\ldots,\frac{\partial f(\underline{x})}{\partial x_n}\right)$.
 int getDimensionOfScope()
          Returns the dimension of the scope of the Function.
 
Methods inherited from class de.jstacs.algorithms.optimization.DifferentiableFunction
findOneDimensionalMin
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NegativeDifferentiableFunction

public NegativeDifferentiableFunction(DifferentiableFunction f)
Creates the DifferentiableFunction f for which -f should be calculated.

Parameters:
f - the DifferentiableFunction
Method Detail

evaluateFunction

public double evaluateFunction(double[] x)
                        throws DimensionException,
                               EvaluationException
Description copied from interface: Function
Evaluates the function at a certain vector (in mathematical sense) x.

Parameters:
x - the current vector
Returns:
the evaluation of the function
Throws:
DimensionException - if dim(x) != n, with $f: \mathbb{R}^n \to \mathbb{R}$
EvaluationException - if there was something wrong during the evaluation of the function

getDimensionOfScope

public int getDimensionOfScope()
Description copied from interface: Function
Returns the dimension of the scope of the Function.

Returns:
the dimension of the scope: n with $f: \mathbb{R}^n \to \mathbb{R}$

evaluateGradientOfFunction

public double[] evaluateGradientOfFunction(double[] x)
                                    throws DimensionException,
                                           EvaluationException
Description copied from class: DifferentiableFunction
Evaluates the gradient of a function at a certain vector (in mathematical sense) x, i.e., $\nabla f(\underline{x}) = \left(\frac{\partial f(\underline{x})}{\partial x_1},\ldots,\frac{\partial f(\underline{x})}{\partial x_n}\right)$.

Specified by:
evaluateGradientOfFunction in class DifferentiableFunction
Parameters:
x - the current vector
Returns:
the evaluation of the gradient of a function, has dimension Function.getDimensionOfScope()
Throws:
DimensionException - if dim(x) != n, with $f: \mathbb{R}^n \to \mathbb{R}$
EvaluationException - if there was something wrong during the evaluation of the gradient
See Also:
Function.getDimensionOfScope()