autoGPoMoTest: Tests the numerical integrability of models and classify...

autoGPoMoTestR Documentation

Tests the numerical integrability of models and classify their dynamical regime

Description

Tests the numerical integrability of provided models (these may have been obtained with function autoGPoMoSearch), and classify these models as Divergent, Fixed Points, Periodic or not Unclassified (potentially chaotic).

Usage

autoGPoMoTest(
  data,
  nVar,
  dMax,
  dMin = 0,
  tin = NULL,
  dt = NULL,
  show = 1,
  verbose = 1,
  allKL = allKL,
  numValidIC = 1,
  weight = NULL,
  IstepMin = 10,
  IstepMax = 10000,
  tooFarThr = 4,
  FxPtThr = 1e-08,
  LimCyclThr = 1e-06,
  method = "rk4"
)

Arguments

data

Input Time series: Each column is one time series that corresponds to one variable.

nVar

Number of variables considered in the polynomial formulation.

dMax

Maximum degree of the polynomial formulation.

dMin

The minimum negative degree of the polynomial formulation (0 by default).

tin

Input date vector which length should correspond to the input time series.

dt

Sampling time of the input time series.

show

Provide (2) or not (0-1) visual output during the running process.

verbose

Gives information (if set to 1) about the algorithm progress and keeps silent if set to 0.

allKL

A list of all the models $mToTest1, $mToTest2, etc. to be tested. Each model is provided as a matrix.

numValidIC

Line number of the first valid initial conditions, that is, such as weight is not equal to zero.

weight

A vector providing the binary weighting function of the input data series (0 or 1). By default, all the values are set to 1.

IstepMin

The minimum number of integration step to start of the analysis (by default IstepMin = 10).

IstepMax

The maximum number of integration steps for stopping the analysis (by default IstepMax = 10000).

tooFarThr

Divergence threshold, maximum value of the model trajectory compared to the data standard deviation. By default a trjactory is too far if the distance to the center is larger than four times the variance of the input data.

FxPtThr

Threshold used to detect fixed points.

LimCyclThr

Threshold used to detect the limit cycle.

method

The integration technique used for the numerical integration. By default, the fourth-order Runge-Kutta method (method = 'rk4') is used. Other methods such as 'ode45' or 'lsoda' may also be chosen. See package deSolve for details.

Value

A list containing:

$okMod A vector classifying the models: diverging models (0), periodic models of period-1 (-1), unclassified models (1).

$okMod A matrix classifying the model variables: diverging variable (0), period-1 variable (-1), period-2 variable (-2), fixed point variable (2), unclassified models (1).

$coeff A matrix with the coefficients of one selected model

$models A list of all the models to be tested $mToTest1, $mToTest2, etc. and of all selected models $model1, $model2, etc.

$tout The time vector of the output time series (vector length corresponding to the longest numerical integration duration)

$stockoutreg A list of matrices with the integrated trajectories (variable X1 in column 1, X2 in 2, etc.) for all the models $model1, $model2, etc.

Author(s)

Sylvain Mangiarotti, Flavie Le Jean

See Also

autoGPoMoSearch, gPoMo, poLabs

Examples

#Example
# Load data:
data('RosYco')
# Structure choice
data('allToTest')
# Test the models
outGPT <- autoGPoMoTest(RosYco, nVar= 3, dMax = 2, dt = 1/125, show=1,
                        allKL = allToTest, IstepMax = 60)


GPoM documentation built on July 9, 2023, 6:23 p.m.