Gears BDF ODE solver.
Constructor | Description |
Full Usage:
GearsBDF()
|
|
Instance member | Description |
Full Usage:
this.CurrentDegree
Returns: int
|
Gets the current degree of the interpolating polynomial.
|
|
Gets the current nordsieck matrix. Rows corresponds to the state variables y0..yn, colums are the variable y, then y'dt, y''dt²/2, y'''dt³/6, and so on. Can be used to get the coefficients of the interpolating polynomial(s) between GearsBDF.CurrentTime-GearsBDF.CurrentTimeStep to GearsBDF.CurrentTime.
|
Full Usage:
this.CurrentTime
Returns: float
|
Gets the time until which the ODE is already evaluated.
|
Full Usage:
this.CurrentTimeStep
Returns: float
|
Gets the current time step. This is the step which was carried out from the previous time to the current time.
|
Full Usage:
this.Evaluate
Parameters:
byref<float>
result : float[]
|
|
Full Usage:
this.Evaluate
Parameters:
float
result : float[]
|
|
Full Usage:
this.Initialize
Parameters:
float
-
Initial time point
y0 : float[]
-
Initial values (at time t0).
dydt : Action<float, float[], float[]>
-
Evaluation function for the derivatives. First argument is the time, second argument are the current y values. The third argument is an array where the derivatives are expected to be placed into.
|
Initialize Gear's BDF method with dynamically changed step size and order.
|
Full Usage:
this.Initialize
Parameters:
float
-
Initial time point
y0 : float[]
-
Initial values (at time t0).
dydt : Action<float, float[], float[]>
-
Evaluation function for the derivatives. First argument is the time, second argument are the current y values. The third argument is an array where the derivatives are expected to be placed into.
opts : GearsBDFOptions
-
Options for the ODE method (can be null).
|
Initialize Gear's BDF method with dynamically changed step size and order.
|
Full Usage:
this.Initialize
Parameters:
float
-
Initial time point
y0 : float[]
-
Initial values (at time t0).
dydt : Action<float, float[], float[]>
-
Evaluation function for the derivatives. First argument is the time, second argument are the current y values. The third argument is an array where the derivatives are expected to be placed into.
denseJacobianEvaluator : Func<float, float[], IROMatrix<float>>
-
Evaluation for the dense jacobian matrix. First argument is the time, second argument are the current y values. If null is passed for this argument, a default evaluator is used.
opts : GearsBDFOptions
-
Options for the ODE method (can be null).
|
Initialize Gear's BDF method with dynamically changed step size and order.
|
Full Usage:
this.InitializeSparse
Parameters:
float
-
Initial time point
y0 : float[]
-
Initial values (at time t0).
dydt : Action<float, float[], float[]>
-
Evaluation function for the derivatives. First argument is the time, second argument are the current y values. The third argument is an array where the derivatives are expected to be placed into.
sparseJacobianEvaluation : Func<float, float[], SparseDoubleMatrix>
-
Evaluation for the dense jacobian matrix. First argument is the time, second argument are the current y values. If null is passed for this argument, a default evaluator is used.
opts : GearsBDFOptions
-
Options for the ODE method (can be null).
|
Initialize Gear's BDF method with dynamically changed step size and order.
|
Full Usage:
this.MarkDiscontinuity
|
Marks a discontinuity at the last point that was evaluated. This function is indended to be used if discontinuous boundary conditions exist. The function evaluates the rate at the last point, and effectively restarts the ODE. See example for details. Example: if a discontinuity exist at t=1000, then then (i) evaluate the ODE until t=1000, then (ii) change the boundary conditions, and then (iii) call this function. |
Full Usage:
this.MaximumTimeStep
|
Gets or sets the maximum time step. |