@@ -73,6 +73,35 @@ solver and furthermore it has the following IDA specific flags:
7373:ref: `idaNonLinConvCoef <simflag-idaNonLinConvCoef >`,
7474:ref: `idaMaxErrorTestFails <simflag-idaMaxErrorTestFails >`.
7575
76+
77+ .. _sundials_cvode :
78+
79+ CVODE
80+ ~~~~~
81+
82+ The CVODE solver is part of sundials: SUite of Nonlinear and
83+ DIfferential/ALgebraic equation Solvers :cite: `Hindmarsh:2005 `.
84+ CVODE solves initial value problems for ordinary differential equation (ODE)
85+ systems with variable-order, variable-step multistep methods.
86+
87+ In OpenModelica, CVODE uses a combination of Backward Differentiation
88+ Formulas (varying order 1 to 5) as linear multi-step method and a modified
89+ Newton iteration with fixed Jacobian as non-linear solver per default.
90+ This setting is advised for stiff problems which are very common for Modelica
91+ models.
92+ For non-stiff problems an combination of an Adams-Moulton formula (varying
93+ order 1 to 12) as linear multi-step method together with a fixed-point
94+ iteration as non-linear solver method can be choosen.
95+
96+ Both non-linear solver methods are internal functions of CVODE and use its
97+ internal direct dense linear solver CVDense.
98+ For the Jacobian of the ODE CVODE will use its internal dense difference
99+ quotient approximation.
100+
101+ CVODE has the following solver specific flags:
102+ :ref: `cvodeNonlinearSolverIteration <simflag-cvodeNonlinearSolverIteration >`,
103+ :ref: `cvodeLinearMultistepMethod <simflag-cvodeLinearMultistepMethod >`.
104+
76105Basic Explicit Solvers
77106~~~~~~~~~~~~~~~~~~~~~~
78107
@@ -106,6 +135,7 @@ Experimental Solvers
106135The following solvers are marked as experimental, mostly because they
107136are till now not tested very well.
108137
138+ - cvode - experimental implementation of SUNDIALS CVODE solver - BDF or Adams-Moulton method - step size control, order 1-12
109139- rungekuttaSsc - Runge-Kutta based on Novikov (2016) - explicit, step-size control, order 4-5
110140- irksco - Own developed Runge-Kutta solver - implicit, step-size control, order 1-2
111141- symSolver - Symbolic inline solver (requires :ref: `--symSolver <omcflag-symSolver >`) - fixed step-size, order 1
0 commit comments