Click or drag to resize

OdeImplicitRungeKutta5 Class

Solves an initial-value problem for stiff ordinary differential equations using the implicit Runge-Kutta method of order 5. dy(i)/dt = f(i,t,y(1),y(2),...,y(N)).
Inheritance Hierarchy
SystemObject
  DotNumerics.ODExOdeBase
    DotNumerics.ODExBaseOdeRungeKutta
      DotNumerics.ODEOdeImplicitRungeKutta5

Namespace: DotNumerics.ODE
Assembly: DWSIM.MathOps.DotNumerics (in DWSIM.MathOps.DotNumerics.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax
public sealed class OdeImplicitRungeKutta5 : xBaseOdeRungeKutta
Request Example View Source

The OdeImplicitRungeKutta5 type exposes the following members.

Constructors
 NameDescription
Public methodOdeImplicitRungeKutta5 Initializes a new instance of the OdeImplicitRungeKutta5 class.
Public methodOdeImplicitRungeKutta5(OdeFunction, Int32) Initializes a new instance of the OdeImplicitRungeKutta5 class.
Public methodOdeImplicitRungeKutta5(OdeFunction, OdeJacobian, Int32) Initializes a new instance of the OdeImplicitRungeKutta5 class.
Top
Properties
 NameDescription
Public propertyAbsTol An absolute error tolerance parameter
(Inherited from xOdeBase)
Public propertyAbsTolArray An absolute error tolerance array (length numEquations).
(Inherited from xOdeBase)
Public propertyErrorToleranceType Specifies the type of the relative error and absolute error tolerances.
(Inherited from xOdeBase)
Public propertyRelTol A relative error tolerance parameter.
(Inherited from xOdeBase)
Public propertyRelTolArray A relative error tolerance array ( length numEquations).
(Inherited from xOdeBase)
Top
Methods
 NameDescription
Public methodInitializeODEs(OdeFunction, Int32) Method that initialize the ODE to solve.
(Overrides xOdeBaseInitializeODEs(OdeFunction, Int32))
Public methodInitializeODEs(OdeFunction, OdeJacobian, Int32) Method that initialize the ODE to solve.
Public methodInitializeODEs(OdeFunction, Int32, Double, Double) Method that initialize the ODE to solve.
(Overrides xOdeBaseInitializeODEs(OdeFunction, Int32, Double, Double))
Public methodInitializeODEs(OdeFunction, OdeJacobian, Int32, Double, Double) Method that initialize the ODE to solve.
Public methodSetInitialValues Sets the initial values for the differential equations.
(Inherited from xOdeBase)
Public methodSolve(Double, Double) Computes the solution of the differntial equations.
(Inherited from xBaseOdeRungeKutta)
Public methodSolve(Double, Double, OdeSolution) Computes the solution of the differntial equations.
(Inherited from xBaseOdeRungeKutta)
Public methodSolve(Double, Double, Double, Double) Computes the solution of the differntial equations.
(Inherited from xBaseOdeRungeKutta)
Public methodSolve(Double, Double, Double, Double, OdeSolution) Computes the solution of the differntial equations.
(Inherited from xBaseOdeRungeKutta)
Top
Fields
 NameDescription
Private fieldCONRA5 
Private fieldINTERN 
Private fieldLINAL 
Private fieldMeH INITIAL STEP SIZE GUESS; FOR STIFF EQUATIONS WITH INITIAL TRANSIENT, H=1.D0/(NORM OF F'), USUALLY 1.D-3 OR 1.D-5, IS GOOD. THIS CHOICE IS NOT VERY IMPORTANT, THE STEP SIZE IS QUICKLY ADAPTED. (IF H=0.D0, THE CODE PUTS H=1.D-6).
Private fieldMeIJAC SWITCH FOR THE COMPUTATION OF THE JACOBIAN: IJAC=0: JACOBIAN IS COMPUTED INTERNALLY BY FINITE DIFFERENCES, SUBROUTINE "JAC" IS NEVER CALLED. IJAC=1: JACOBIAN IS SUPPLIED BY SUBROUTINE JAC.
Private fieldMeIMAS GIVES INFORMATION ON THE MASS-MATRIX: IMAS=0: M IS SUPPOSED TO BE THE IDENTITY MATRIX, MAS IS NEVER CALLED. IMAS=1: MASS-MATRIX IS SUPPLIED.
Private fieldMeMLJAC SWITCH FOR THE BANDED STRUCTURE OF THE JACOBIAN: MLJAC=N: JACOBIAN IS A FULL MATRIX. THE LINEAR ALGEBRA IS DONE BY FULL-MATRIX GAUSS-ELIMINATION. 0.LE.MLJAC.LT.N: MLJAC IS THE LOWER BANDWITH OF JACOBIAN MATRIX (.GE. NUMBER OF NON-ZERO DIAGONALS BELOW THE MAIN DIAGONAL).
Private fieldMeMLMAS SWITCH FOR THE BANDED STRUCTURE OF THE MASS-MATRIX: MLMAS=N: THE FULL MATRIX CASE. THE LINEAR ALGEBRA IS DONE BY FULL-MATRIX GAUSS-ELIMINATION. 0.LE.MLMAS.LT.N: MLMAS IS THE LOWER BANDWITH OF THE MATRIX (.GE. NUMBER OF NON-ZERO DIAGONALS BELOW THE MAIN DIAGONAL). MLMAS IS SUPPOSED TO BE .LE. MLJAC.
Private fieldMeMUJAC UPPER BANDWITH OF JACOBIAN MATRIX (.GE. NUMBER OF NON- ZERO DIAGONALS ABOVE THE MAIN DIAGONAL). NEED NOT BE DEFINED IF MLJAC=N.
Private fieldMeMUMAS UPPER BANDWITH OF MASS-MATRIX (.GE. NUMBER OF NON- ZERO DIAGONALS ABOVE THE MAIN DIAGONAL). NEED NOT BE DEFINED IF MLMAS=N. MUMAS IS SUPPOSED TO BE .LE. MUJAC.
Top
Extension Methods
 NameDescription
Public Extension MethodGetEnumNames
(Defined by General)
Public Extension MethodIsValidDouble
(Defined by General)
Top
See Also