data.gen.Duffing function

Duffing map

Duffing map

Generates a 2-dimensional time series using the Duffing map.

data.gen.Duffing( nobs = 5000, a = 2.75, b = 0.2, start = runif(n = 2, min = -0.5, max = 0.5), s, do.plot = TRUE )

Arguments

  • nobs: Length of the generated time series. Default: 5000 samples.
  • a: The a parameter. Default: 2.75.
  • b: The b parameter. Default: 0.2.
  • start: A 2-dimensional vector indicating the starting values for the x and y Duffing coordinates. Default: If the starting point is not specified, it is generated randomly.
  • s: The level of noise, default 0.
  • do.plot: Logical value. If TRUE (default value), a plot of the generated Duffing system is shown.

Returns

A list with two vectors named x and y containing the x-components and the y-components of the Duffing map, respectively.

Details

The Duffing map is defined as follows:

xn=yn1x[n]=y[n1] x_n = y_{n - 1}x[n] = y[n - 1] yn=bxn1+ayn1yn13y[n]=bx[n1]+ay[n1]y[n1]3. y_n = -b \cdot x_{n - 1} + a \cdot y_{n - 1} - y_{n - 1}^3y[n] = -b*x[n - 1] + a*y[n-1] - y[n-1]^3.

The default selection for both a and b parameters (a=1.4 and b=0.3) is known to produce a deterministic chaotic time series.

Note

Some initial values may lead to an unstable system that will tend to infinity.

Examples

Duffing.map=data.gen.Duffing(nobs = 1000, do.plot=TRUE)

References

Constantino A. Garcia (2019). nonlinearTseries: Nonlinear Time Series Analysis. R package version 0.2.7. https://CRAN.R-project.org/package=nonlinearTseries