Managed Iterative Algorithm<T, TError, TReport> Class
Represents an implementation of an iterative algorithm that uses a managed
driver routine.
Definition
Namespace: Extreme.Mathematics.Algorithms
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
C#
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
public abstract class ManagedIterativeAlgorithm<T, TError, TReport> : IParallelized
where TReport : new(), SolutionReport<T, TError>
- Inheritance
- Object → ManagedIterativeAlgorithm<T, TError, TReport>
- Derived
- Implements
- IParallelized
Type Parameters
- T
- TError
- TReport
Remarks
Use ManagedIterativeAlgorithm as the base class for classes that implement iterative algorithms.
Note to inheritors: You must override the following methods: Iterate(), TestConvergence(). You may also override OnInit() and OnConvergence().
Constructors
Managed | Constructs a new managed iterative algorithm object. |
Properties
Convergence | Gets the collection of convergence tests for the algorithm. |
Estimated | Gets a value indicating the size of the absolute error of the result. |
Evaluations | Gets the number of evaluations needed to execute the algorithm. |
Evaluations | Gets the number of evaluations still available. |
Has | Indicates whether the degree of parallelism is a property that is shared across instances. |
Iterations | Gets the number of iterations needed by the algorithm to reach the desired accuracy. |
Iterations | Gets the number of iterations remaining. |
Max | Gets or sets the maximum degree of parallelism enabled by this instance. |
Max | Gets or sets the maximum number of evaluations during the calculation. |
Max | Gets or sets the maximum number of iterations to use when approximating the roots of the target function. |
Min | Gets or sets the minimum iterations that have to be performed. |
Parallel | Gets or sets the configuration for the parallel behavior of the algorithm. |
Result | Gets the result of an algorithm after it has executed. |
Solution | Gets the result of an algorithm after it has executed. |
Status | Gets the AlgorithmStatus following an execution of the algorithm. |
Throw | Gets or sets a value indicating whether to throw an exception when the algorithm fails to converge. |
Methods
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) |
Get | Serves as the default hash function. (Inherited from Object) |
Get | Gets the Type of the current instance. (Inherited from Object) |
Increment | Increments the number of evaluations by one. |
Increment | Increments the number of evaluations by the specified amount. |
Iterate | Performs one iteration of the algorithm. |
Iterated | Performs tasks after the iteration is completed, but before the status of the algorithm is finalized. |
Memberwise | Creates a shallow copy of the current Object. (Inherited from Object) |
OnConvergence | Performs any tasks after the main algorithm has converged. |
OnFailure | Performs any tasks after the main algorithm has failed to converge. |
OnInit | Performs initialization before the first iteration. |
Report | Records the results of an algorithm in case it fails. |
Report | Records the results of an algorithm. |
Report | Records the results of a algorithm that converged successfully. |
Reset | Resets the number of evaluations to zero. |
Restart | Prepares the algorithm to be run again with possibly different inputs. |
Run() | Runs the algorithm. |
Run( | Runs the algorithm using the specified parallelization options. |
Set | Sets the results of an algorithm's execution. |
Test | Checks whether the algorithm has converged. |
Thread | Increments the number of evaluations by one. |
Thread | Increments the number of evaluations by the specified amount. |
Throw | Interprets the AlgorithmStatus and throws the appropriate exception. |
ToString | Returns a string that represents the current object. (Inherited from Object) |
Fields
Default | Gets the default convergence criterion. |
Default | Gets the default absolute and relative tolerance. |