vanderpol

probnum.diffeq.vanderpol(timespan, initrv, params=0.1)[source]

Initial value problem (IVP) based on the Van der Pol Oscillator.

This function implements the second-order Van-der-Pol Oscillator as a system of first-order ODEs. The Van der Pol Oscillator is defined as

\[\begin{split}f(t, y) = \begin{pmatrix} y_2 \\ \mu \cdot (1 - y_1^2)y_2 - y_1 \end{pmatrix}\end{split}\]

for a constant parameter \(\mu\). \(\mu\) determines the stiffness of the problem, where the larger \(\mu\) is chosen, the more stiff the problem becomes. Default is \(\mu = 0.1\). This implementation includes the Jacobian \(J_f\) of \(f\).

Parameters
  • timespan ((float, float)) – Time span of IVP.

  • initrv (RandomVariable,) – (shape=(2, )) – Vector-valued RandomVariable that describes the belief over the initial value. Usually it is a Constant (noise-free) or Normal (noisy) Random Variable with \(2\)-dimensional mean vector and \(2 \times 2\)-dimensional covariance matrix. To replicate “classical” initial values use the Constant distribution.

  • params ((float), optional) – Parameter \(\mu\) for the Van der Pol Equations Default is \(\mu=0.1\).

Returns

IVP object describing the Van der Pol Oscillator IVP with the prescribed configuration.

Return type

IVP