vanderpol

probnum.problems.zoo.diffeq.vanderpol(t0=0.0, tmax=30, y0=None, params=10.0)[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:
  • t0 (float) – Initial time point. Leftmost point of the integration domain.

  • tmax (float) – Final time point. Rightmost point of the integration domain.

  • y0 (np.ndarray,) – (shape=(2, )) – Initial value of the problem. Defaults to [2.0, 0.0].

  • params ((float), optional) – Parameter \(\mu\) for the Van der Pol equations.

Returns:

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

Return type:

InitialValueProblem