AGI.Foundation.NumericalMethods.Advanced Namespace 
Class  Description  

AdaptiveNumericalIntegrator 
Base class for all NumericalIntegrator objects who can use error information
produced during integration to adapt the size of the step in order to adjust the amount of
error introduced into the dependent variables over successive integration steps. This
also allows varying the size of the step to arrive at a final stopping time.
 
BrentFindExtremum 
Locates a local extremum (minimum or maximum) of a function using the Brent algorithm.
 
BrentFindRoot 
Locates the root of a function using the Van Wijngaarden, Dekker, Brent algorithm.
 
Combinatorics 
A tool for computing various quantities associated with combinations of objects associated with a
finite or countable set of discrete items.
 
DependentVariableDerivatives 
Defines a set of first order differential equations used by a NumericalIntegrator
to advance a set of dependent variables over an independent variable step.
 
DependentVariableDifferentialEquation 
An adapter for an OrdinaryDifferentialEquationSystem for use with a
NumericalIntegrator. This allows a user to define a function representing a
system of differential equations and integrate it over an independent variable.
 
DoubleFunctionCollection 
A collection of functions to be explored by DoubleFunctionExplorer.
 
DoubleFunctionExplorerProgress 
Contains additional information reported to
ReportProgress(Int32, Object) by
Explore(Double, Double, ITrackCalculationProgress).
 
DoubleFunctionExtremumFound 
A finding by DoubleFunctionExplorer that a function has a local
extremum at a specific Variable.
 
DoubleFunctionExtremumIndicated 
A finding by DoubleFunctionExplorer that a function has a local extremum
indicated by three samples.
 
DoubleFunctionFinding 
The base class for findings of the DoubleFunctionExplorer, such as a threshold
crossing or an extremum.
 
DoubleFunctionThresholdCollection 
A collection of function thresholds.
 
DoubleFunctionThresholdCrossingFound 
A finding by DoubleFunctionExplorer that a function crossed
a threshold at a specific Variable.
 
DoubleFunctionThresholdCrossingIndicated 
A finding by DoubleFunctionExplorer that a threshold crossing is
indicated somewhere between two Variables, because the function values are on opposite sides of the
threshold at the two Variables. The precise Variable at which the function crosses the
threshold may not yet be known.
 
DurationFunctionCollection 
A collection of functions to be explored by DurationFunctionExplorer.
 
DurationFunctionExplorerProgress 
Contains additional information reported to
ReportProgress(Int32, Object) by
Explore(Duration, Duration, ITrackCalculationProgress).
 
DurationFunctionExtremumFound 
A finding by DurationFunctionExplorer that a function has a local
extremum at a specific duration.
 
DurationFunctionExtremumIndicated 
A finding by DurationFunctionExplorer that a function has a local extremum
indicated by three samples.
 
DurationFunctionFinding 
The base class for findings of the DurationFunctionExplorer, such as a threshold
crossing or an extremum.
 
DurationFunctionThresholdCollection 
A collection of function thresholds.
 
DurationFunctionThresholdCrossingFound 
A finding by DurationFunctionExplorer that a function crossed
a threshold at a specific duration.
 
DurationFunctionThresholdCrossingIndicated 
A finding by DurationFunctionExplorer that a threshold crossing is
indicated somewhere between two durations, because the function values are on opposite sides of the
threshold at the two durations. The precise duration at which the function crosses the
threshold may not yet be known.
 
HermitePolynomialApproximation 
A technique for polynomial interpolation and extrapolation using a general form of Hermite's algorithm
that is valid for any input order.
 
InterpolationAlgorithm 
A type containing an algorithm that can interpolate the value of a function for a new independent variable value
from a list of known values of the function at different independent variable values.
 
JulianDateFunctionCollection 
A collection of functions to be explored by JulianDateFunctionExplorer.
 
JulianDateFunctionExplorerProgress 
Contains additional information reported to
ReportProgress(Int32, Object) by
Explore(JulianDate, JulianDate, ITrackCalculationProgress).
 
JulianDateFunctionExtremumFound 
A finding by JulianDateFunctionExplorer that a function has a local
extremum at a specific date.
 
JulianDateFunctionExtremumIndicated 
A finding by JulianDateFunctionExplorer that a function has a local extremum
indicated by three samples.
 
JulianDateFunctionFinding 
The base class for findings of the JulianDateFunctionExplorer, such as a threshold
crossing or an extremum.
 
JulianDateFunctionThresholdCollection 
A collection of function thresholds.
 
JulianDateFunctionThresholdCrossingFound 
A finding by JulianDateFunctionExplorer that a function crossed
a threshold at a specific date.
 
JulianDateFunctionThresholdCrossingIndicated 
A finding by JulianDateFunctionExplorer that a threshold crossing is
indicated somewhere between two dates, because the function values are on opposite sides of the
threshold at the two dates. The precise date at which the function crosses the
threshold may not yet be known.
 
LagrangeOrbitVariationOfParameters 
Uses variation of parameters (VOP) with a twobody propagator to interpolate orbital positions.
 
LagrangePolynomialApproximation 
A technique for polynomial interpolation using Lagrange's algorithm.
 
LinearApproximation 
A technique for Linear Interpolation.
 
MultipleStepIntegrator 
A subtype of integrator which saves multiple steps of derivative data for more accurate
integration.
 
MultivariableFunctionSolverWarning 
When a MultivariableFunctionSolver for some reason doesn't succeed or encounters another
issue that is not critical enough to throw an Exception, one of these warning objects can be created
to let the user know what happened.
 
MultivariableFunctionWarning 
A warning for when a SolvableMultivariableFunction being run in a
MultivariableFunctionSolver encounters a problem due to a solver nested in the
function having a problem.
 
NewtonFindRoot 
Locates the root of a function using the NewtonRaphson method.
 
OrdinaryDifferentialEquationSystem 
Describes a system of ordinary differential equations.
 
PartialDerivativesEvaluator 
An interface for an evaluator that takes a JulianDate, order, and list of
inputs and returns the partial derivatives of itself with respect to those inputs.
 
PartialDerivativesFixed  An object with fixed partial derivatives. PartialDerivativesFixed and PartialDerivativesSum are meant as types to be used during the creation of a PartialDerivativesEvaluator. For example a PartialDerivativesFixed is used to represent an identity partial or a partial with zero partial derivatives, and a PartialDerivativesSum is used to aggregate the partial derivatives of different terms of within a type. You generally should not use either of these types as permanent objects which exist outside of a call to produce an evaluator.  
PartialDerivativesSum  An IPartialDifferentiable which produces an evaluator which calculates the resulting partial derivative from a summation of a list of additional IPartialDifferentiable. PartialDerivativesFixed and PartialDerivativesSum are meant as types to be used during the creation of a PartialDerivativesEvaluator. For example a PartialDerivativesFixed is used to represent a dependent variable with zero partial derivatives, and a PartialDerivativesSum is used to aggregate the partial derivatives of different terms within a type. You generally should not use either of these types as permanent objects which exist outside of a call to produce an evaluator.  
RealPolynomial 
Represents a polynomial function of one variable with only real coefficients.
 
RungeKuttaAdaptiveStepIntegrator 
Defines a RungeKutta integrator which can adapt the size of its steps based on the integration error.
 
RungeKuttaAlgorithm 
The basic RungeKutta integration algorithm used by the integrators, it's Butcher Tableau, and the derivative information
computed during integration.
y[n+1] = y[n] + h * Sum(i=0 to s){ b[i]*k[i] } k[i] = f(t[n] + c[i]*h, y[n] + Sum(j=0 to i1){ a[i,j] * k[j] } )  
RungeKuttaFixedStepIntegrator 
Defines a RungeKutta integrator with a fixed step size.
 
SolvableMultivariableFunctionOperations 
A set of common methods for using a SolvableMultivariableFunction.
 
TimeIntervalFinderProgress 
Contains additional information reported to
ReportProgress(Int32, Object) by TimeIntervalFinder.

Interface  Description  

IDoubleFunctionSampler 
An interface to an object that controls how a function of a Double is sampled.
 
IDurationFunctionSampler 
An interface to an object that controls how a function of a Duration is sampled.
 
IJulianDateFunctionSampler 
An interface to an object that controls how a function of a JulianDate is sampled.
 
IPartialDifferentiable 
Classes that implement this interface represent values which have partial derivatives associated with them,
and contain the method GetPartialDerivativesEvaluator(IListIPartialDifferentiable, EvaluatorGroup) to produce an evaluator to calculate those
partial derivatives.

Delegate  Description  

OrdinaryDifferentialEquationFunction 
A multivariate, vector function representing a set of ordinary differential equations.

Enumeration  Description  

BehaviorWhenOnThreshold 
Indicates the behavior of a function explorer such as JulianDateFunctionExplorer
when a function value exactly equals a threshold value.
 
BracketToward 
Defines the behavior of a root finder such as BrentFindRoot when a sampled
function value exactly equals zero and the root finder's ConvergenceCriteria
requires convergence on the independent variable.
 
BrentSolutionType 
Indicates on which side of zero a solution must be found.
 
ConvergenceCriteria 
Specifies the criteria to be used in determining convergence.
 
ExtremumKind 
Enumerates possible extremum types.
 
NewtonRootType 
Indicates the type of Root held by a NewtonFindRoot.
 
ThresholdCrossingSolutionType 
Indicates on which side of threshold crossing a solution must be found.
