Click or drag to resize

MultivariableFunctionSolver Class

The abstract base class for MultivariableFunctionSolvers. An instance of a type derived from this will pass in values of Variables into a SolvableMultivariableFunction to drive them to satisfy this solver's constraints.
Inheritance Hierarchy

Namespace:  AGI.Foundation.NumericalMethods
Assembly:  AGI.Foundation.Core (in AGI.Foundation.Core.dll) Version: 23.2.417.0 (23.2.417.0)
public abstract class MultivariableFunctionSolver : IThreadAware, 
	ICloneWithContext, IDisposable

The MultivariableFunctionSolver type exposes the following members.

Protected methodMultivariableFunctionSolver
Initializes a new instance. You must add at least one variable to the Variables and one constraint to the Constraints, as well as set the Function.
Protected methodMultivariableFunctionSolver(MultivariableFunctionSolver, CopyContext)
Initializes a new instance as a copy of an existing instance.
Public propertyConstraints
Gets the constraint settings corresponding to the results computed by the Function. There must be at least one constraint set for this solver to work.
Public propertyCurrentIteration
Gets or sets the number of the current iteration. This should be incremented in the FindSolution(Int32, Boolean, ITrackCalculationProgress) method.
Public propertyFunction
Gets or sets the function to solve. When the solver converges, this function must have been run with the variable values that converged. This behavior must be obeyed when Multithreaded is either or .
Public propertyIsThreadSafe
Gets a value indicating whether the methods on this instance are safe to call from multiple threads simultaneously.
Public propertyLastRunsResults
Gets or sets the results of the solver run. This includes such information as if the solver converged, all the iteration results (if configured to save them), if the run was aborted, etc.
Public propertyMultithreaded
Gets or sets a value indicating whether this solver should evaluate with as many threads as the current threading policy facet and solver algorithm will allow. Note that derived types should copy this in their copy constructor.
Public propertyVariables
Gets the SolverVariableSettings that will be used when computing this function. The variables passed to the function will be in the same order as this list of settings. There must be at least one variable set for this solver to work.
Protected methodStatic memberCheckConstraints
A helper method to determine if the constraints are satisfied with the currentConstraintValues
Public methodClone
Clones this object using the specified context.
Public methodDispose
Releases any resources associated with this instance.
Protected methodDispose(Boolean)
Releases any resources associated with this instance.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodFindSolution(Int32)
Solves the Function. By default, the results of every iteration will be stored.
Public methodFindSolution(Int32, Boolean)
Solves the function.
Public methodFindSolution(Int32, Boolean, ITrackCalculationProgress)
Solves the function. This method must increment CurrentIteration as well as set LastRunsResults before this method returns.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodReset
Resets the MultivariableFunctionSolver by setting the LastRunsResults to and the CurrentIteration to zero. This method should be called in any derived version.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
See Also