Click or drag to resize

NonlinearObjectiveFunctionNonAllocating Class

Non-allocating nonlinear objective function implementation wrapping user-provided model and (optionally) derivative delegates.
Inheritance Hierarchy
SystemObject
  Altaxo.Calc.Optimization.ObjectiveFunctionsNonlinearObjectiveFunctionNonAllocatingBase
    Altaxo.Calc.Optimization.ObjectiveFunctionsNonlinearObjectiveFunctionNonAllocating

Namespace: Altaxo.Calc.Optimization.ObjectiveFunctions
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3572.0 (4.8.3572.0)
Syntax
C#
public class NonlinearObjectiveFunctionNonAllocating : NonlinearObjectiveFunctionNonAllocatingBase

The NonlinearObjectiveFunctionNonAllocating type exposes the following members.

Constructors
 NameDescription
Public methodNonlinearObjectiveFunctionNonAllocating Initializes a new instance of the NonlinearObjectiveFunctionNonAllocating class.
Top
Properties
 NameDescription
Public propertyDegreeOfFreedom Get the degree of freedom.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyFunctionEvaluations Get the number of calls to function.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyGradient Get the Gradient vector. G = J'(y - f(x; p))
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyHessian Get the approximated Hessian matrix. H = J'J
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyIsFixedByUser Gets whether parameters are fixed or free (by the user).
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyIsFixedByUserOrBoundary Gets or sets an array of the same length as the parameter array. If an element in this vector is , that parameter is either fixed by the user or fixed because the corresponding parameter has reached a boundary. This array is updated only at the end of the minimization process.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyIsGradientSupported Gets a value indicating whether the gradient can be provided by the model.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyIsHessianSupported Gets a value indicating whether the Hessian can be provided by the model.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyJacobianEvaluations Get the number of calls to jacobian.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyModelValues Get the y-values of the fitted model that correspond to the independent values.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyNegativeGradient Gets the negative gradient vector. -G = -J'(y - f(x; p)).
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyNumberOfObservations Gets the number of observations.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyNumberOfParameters Gets the number of unknown parameters.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyObservedX Gets or sets the values of the independent variable.
Public propertyObservedY Get the y-values of the observations.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyPoint Get the values of the parameters.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertySigmaSquare Gets Chi²/(N-F+1).
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyValue Get the residual sum of squares.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public propertyWeights Gets or sets the values of the weights for the observations.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Top
Methods
 NameDescription
Public methodCreateNew Creates a new instance of the objective model with identical configuration but independent state.
(Overrides NonlinearObjectiveFunctionNonAllocatingBaseCreateNew)
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodEvaluateAt(IReadOnlyListDouble) Evaluates the model at the given parameter vector and invalidates cached dependent values.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public methodEvaluateAt(VectorDouble) Evaluates the model at the given parameter vector, updating dependent values.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected methodEvaluateFunction Evaluates the objective function value and updates cached values.
(Overrides NonlinearObjectiveFunctionNonAllocatingBaseEvaluateFunction)
Protected methodEvaluateJacobian Evaluates the Jacobian and updates cached Jacobian-derived values (gradient and Hessian).
(Overrides NonlinearObjectiveFunctionNonAllocatingBaseEvaluateJacobian)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Public methodFork Creates a forked copy of the model with independent mutable state.
(Overrides NonlinearObjectiveFunctionNonAllocatingBaseFork)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodStatic memberGetLowestParameterVariationToChangeFunctionValues If a parameter is zero, it is hard to find the right order of magnitude for a variation of that parameter. Here, the variation is guessed by starting with the lowest possible variation, and increasing the variation until the function values deviate from the original value.
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Protected methodNumericalJacobian Numerically approximates the Jacobian at the specified parameter vector.
(Overrides NonlinearObjectiveFunctionNonAllocatingBaseNumericalJacobian(VectorDouble, VectorDouble, Int32))
Public methodSetObserved Sets the observed data to fit.
Public methodSetParameters(IReadOnlyListDouble, IReadOnlyListBoolean) Sets model parameters and allocates scratch vectors for numerical Jacobian evaluation when necessary.
(Overrides NonlinearObjectiveFunctionNonAllocatingBaseSetParameters(IReadOnlyListDouble, IReadOnlyListBoolean))
Public methodSetParameters(VectorDouble, ListBoolean) Sets the model parameters and optional fixed flags for individual parameters.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public methodToObjectiveFunction Converts this model to an objective function suitable for minimizers.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Fields
 NameDescription
Protected field_accuracyOrder The desired accuracy order to evaluate the jacobian by numerical approximaiton.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_coefficients Coefficients for the model.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_f1 Temporary function-evaluation vectors used for numerical differentiation.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_f2 Temporary function-evaluation vectors used for numerical differentiation.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_f3 Temporary function-evaluation vectors used for numerical differentiation.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_f4 Temporary function-evaluation vectors used for numerical differentiation.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_f5 Temporary function-evaluation vectors used for numerical differentiation.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_f6 Temporary function-evaluation vectors used for numerical differentiation.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_functionValue The residual sum of squares, residuals * residuals.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_hasFunctionValue Indicates if the function value has been computed.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_hasJacobianValue Indicates if the jacobian has been computed.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_hessianValue The Hessian matrix.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_jacobianValue The Jacobian matrix.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_jacobianValueTransposed The Jacobian matrix, transposed.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_negativeGradientValue The Gradient vector.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected field_observedXAsMatrix Stores the observed independent-variable values in matrix form.
Protected field_observedXAsVector Stores the observed independent-variable values in vector form.
Protected field_residuals The weighted error values.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Protected fieldL Gets or sets the Cholesky factorization of the weights = LL'.
(Inherited from NonlinearObjectiveFunctionNonAllocatingBase)
Top
See Also