Click or drag to resize

DoubleFunctional Class

Class DoubleFunctional represents a double precision functional.
Inheritance Hierarchy

Namespace:  CenterSpace.NMath.Core
Assembly:  NMath (in NMath.dll) Version: 7.4
Syntax
public abstract class DoubleFunctional : DoubleMultiVariableFunction

The DoubleFunctional type exposes the following members.

Constructors
  NameDescription
Public methodDoubleFunctional(Int32)
Constructs a DoubleFunctional object whose domain has the specified dimension.
Public methodDoubleFunctional(DoubleFunctional)
Copy constructor. Constructs a deep copy of the input DoubleFunctional.
Top
Properties
  NameDescription
Public propertyCentralDifferenceDelta
Sets the delta for using the central difference method for approximating the Jacobian. The Jacobian will be approximated only if the deriving class does not override the Jacobian method.
(Inherited from DoubleMultiVariableFunction.)
Public propertyXDimension
Gets and sets the dimension of the function domain.
(Inherited from DoubleMultiVariableFunction.)
Public propertyYDimension
Gets and sets the dimension of the function range.
(Inherited from DoubleMultiVariableFunction.)
Top
Methods
  NameDescription
Public methodClone
ICloneable method. Not implemented here. Deriving classes must implement if desired.
(Inherited from DoubleMultiVariableFunction.)
Public methodEvaluate(Double)
Evaluates the functional at the given point.
Public methodEvaluate(DoubleVector)
Evaluates the functional at the given point.
Public methodEvaluate(DoubleMatrix, DoubleMatrix)
Evaluate the function at the points X and place the results in Y.
(Inherited from DoubleMultiVariableFunction.)
Public methodEvaluate(DoubleVector, DoubleVector)
Vector-vector form of the evaluate function. Part of the base class DoubleMultiVariableFunction interface.
(Overrides DoubleMultiVariableFunctionEvaluate(DoubleVector, DoubleVector).)
Public methodGradient(DoubleVector)
Calculates the gradient of this functional.
Public methodGradient(DoubleVector, DoubleVector)
Calculates the gradient of this functional using a central difference methods. Deriving classes may override this method.
Public methodJacobian(Double)
Evaluates the Jacobian of the function at the given point.
(Inherited from DoubleMultiVariableFunction.)
Public methodJacobian(DoubleVector, DoubleMatrix)
Computes the jacobian of this functional at the specified point.
(Overrides DoubleMultiVariableFunctionJacobian(DoubleVector, DoubleMatrix).)
Top
Operators
  NameDescription
Public operatorStatic memberAddition(Double, DoubleFunctional)
Functional scalar addition operator. Returns a functional representing the sum of a functional and a scalar.
Public operatorStatic memberAddition(DoubleFunctional, DoubleFunctional)
Functional addition operator. Returns a functional which is the sum of two functionals.
Public operatorStatic memberAddition(DoubleFunctional, Double)
Functional scalar addition operator. Returns a functional representing the sum of a functional and a scalar.
Public operatorStatic memberDivision
Functional scalar division operator. Returns a functional representing the quotient of a functional by a scalar.
Public operatorStatic memberMultiply(Double, DoubleFunctional)
Functional scalar multiplication operator. Returns a functional representing the product of a functional and a scalar.
Public operatorStatic memberMultiply(DoubleFunctional, Double)
Functional scalar multiplication operator. Returns a functional representing the product of a functional and a scalar.
Public operatorStatic memberSubtraction(Double, DoubleFunctional)
Functional scalar subtraction operator. Returns a functional representing the difference of a functional and a scalar.
Public operatorStatic memberSubtraction(DoubleFunctional, DoubleFunctional)
Functional subtraction operator. Returns a functional which is the difference of two functionals.
Public operatorStatic memberSubtraction(DoubleFunctional, Double)
Functional scalar subtraction operator. Returns a functional representing the difference of a functional and a scalar.
Public operatorStatic memberUnaryNegation
Negation operator.
Top
Fields
  NameDescription
Protected fieldcentralDifferenceDelta_
Sets the delta for using the central difference method for approximating the Jacobian. The Jacobian will be approximated only if the deriving class does not override the Jacobian method.
(Inherited from DoubleMultiVariableFunction.)
Protected fieldxDimension_
Dimension of the function domain.
(Inherited from DoubleMultiVariableFunction.)
Protected fieldyDimension_
Dimension of the function range.
(Inherited from DoubleMultiVariableFunction.)
Top
Remarks
A functional is a map from Rn to R. That is, it's a real valued function of a vector valued variable. Implementing classes must override the Evaluate method and may optionally override the Gradient method. If the Gradient method is not overridden by deriving subclasses, the default implementation uses a central difference algorithm to approximate the gradient.
See Also