Gears |
public class Core
The GearsBDFWithNordsieckStateCore type exposes the following members.
Name | Description | |
---|---|---|
GearsBDFWithNordsieckStateCore(Double, Double, ActionDouble, Double, Double, MultiStepMethodBaseCalculateJacobian, OdeMethodOptions) | Initializes a new instance of the GearsBDFWithNordsieckStateCore class. The initial step size is 1. | |
GearsBDFWithNordsieckStateCore(Double, Double, ActionDouble, Double, Double, MultiStepMethodBaseCalculateJacobian, OdeMethodOptions) | Initializes a new instance of the GearsBDFWithNordsieckStateCore class (mostly for testing purposes, since the kth derivatives at the starting point must be known in advance). The initial step size is 1. |
Name | Description | |
---|---|---|
EvaluateJacobian | Gets or sets the function to evaluate the jacobian. | |
MaxOrder | Gets or sets the maximum allowed order. | |
MinOrder | Gets or sets the minimum allowed order. | |
NumberOfJacobianEvaluations | Gets the number of jacobian evaluations so far. | |
NumberOfStepsTaken | Gets the number of steps taken so far. | |
X | Gets the current x value. | |
Y_volatile | Gets the current y values. The elements of the returned array must not be changed, and are intended for immediate use only. |
Name | Description | |
---|---|---|
AdjustStepSizeAndOrder | Compares the errors at the current order q, at order (q-1) and at order (q+1), using the proposed step sizes at these orders. The order which maximizes the step size is then chosen, and the step size is adjusted accordingly. | |
Calculate_En_Q | Calculates the relative error En for the current order q. See eq. 2.41 in [1]. | |
Calculate_En_QMinus1 | Calculates the relative error En(q-1) for the next lower order (q-1). | |
Calculate_En_QPlus1 | Calculates the relative error En(q+1) for the next higher order (q+1). | |
CalculateOnePlusProducts_tn | Calculates the product of the differences of previous x (the term in square brackets in eqs. 2.40, 2.41 and 2.44 in Byrne and Hindmarsh [1]). | |
ChangeStepSize | Changes the size to a new value. | |
ComputeCoefficients_L | Computes the coefficients l. l is used to update the Nordsieck vector if the error vector is known: z_n = z_n0 + e_n * l with e_n = y_n - y_n0. | |
Correct | Corrects the Nordsieck array using the corrected y values and the l array. See eq. 2.19 in [1]. | |
DecreaseOrderBy1 | Decreases the order by 1. This method scales the Nordsieck array by the polynomial coefficients of eq. 2.49 in Byrne and Hindmarsh [1]. | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) | |
EvaluateNextSolutionPoint | Evaluates the next solution point. | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) | |
GetHashCode | Serves as the default hash function. (Inherited from Object) | |
GetInitialStepSize | Gets the initial step size. The absolute and relative tolerances must be set before the call to this function. | |
GetInterpolatedY_volatile | Gets interpolated y values. The independent variable x must lie inbetween the x of the previous step and the current step. | |
GetProposedStepSizeFactorClamped | Gets the proposed step size factor (clamped). This clamped version should be used for step size control. For comparison of the errors of order q-1, q, and q+1, use the unclamped version. | |
GetProposedStepSizeFactorUnclamped | Gets the proposed step size factor (unclamped). This unclamped version should only be used for comparison of the errors of order q-1, q, and q+1. Use the clamped version for step size control. | |
GetRelativeError_InfinityNorm | Gets the relative error (Infinity norm) from the absolute errors. The absolute errors are given by en - Qn * enm1. | |
GetRelativeError_L2Norm | Gets the relative error (L2 norm) from the absolute errors. The absolute errors are given by en - Qn * enm1. | |
GetType | Gets the Type of the current instance. (Inherited from Object) | |
IncreaseOrderBy1 | Increases the order by 1. It is ensured that the Nordsieck state can accomodate the new derivative. The new derivative itself is set to zero. See the notes below eq. 2.49 in Byrne and Hindmarsh [1]. | |
IterationUsingFunctionalIteration | Does some iteration steps. This iteration method does not use the Jacobian for Newton-Raphson steps, instead a functional iteration is executed. This takes much longer to reach the same degree of accuracy. At the end, the corrected y-values are stored in _aux1. | |
IterationUsingJacobian | Does some iteration steps. At the end, the corrected y-values are stored in _aux1. | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object) | |
OptimizeStepSizeForNextMandatoryPoint | Optimizes the step size, in a way that the next mandatory solution point will be reached without too big or too small step sizes. | |
Predict | Calculates a first guess of the new Nordsieck state from the old state, and advances the _x array to the new point. | |
RestoreNordsieckState | Restores the Nordsieck state ( copies back from _nordsieckArray_Saved to _nordsieckArray, restores _nordsieckArray_h, and also restores the history of x values in _x. | |
SaveNordsieckState | Saves the Nordsieck state (makes a copy from _nordsieckArray to _nordsieckArray_h_Saved), and saves the value of the step size in _nordsieckArray_h_Saved). | |
ScaleStepSize | Scales the step size by a factor. | |
ToString | Returns a string that represents the current object. (Inherited from Object) |
Name | Description | |
---|---|---|
_absoluteTolerances | The absolute tolerance. This is either an array of length 1 (in this case the absolute tolerances of all y values are equal), or an array of the same size than y. | |
_en_current | The current error array, i.e. the difference between the iterated y and the first estimation of y of the current step. See eq. 2.12 in Byrne/Hindmarsh 1975 [1]. | |
_en_previous | The previous error array, i.e. the difference between the iterated y and the first estimation of y of the previous step. See eq. 2.12 in Byrne/Hindmarsh 1975 [1]. | |
_errorNorm | The vector norm, by which from the vector of relative errors (dimension N) the scalar relative error is calculated. | |
_f | The differential equation to integrate. First arg is the independent variable (x), second arg are the current y-values, and the 3rd arg adopts the derivatives of y as calculated by this function. | |
_iterationMethod | ||
_relativeTolerances | The relativ tolerances. This is either an array of length 1 (in this case the relative tolerances of all y values are equal), or an array of the same size than y. | |
_x | Array of previous x. x[0] is the current x, x[1] is the previous x and so on. |