findEquilibrium: Equilibrium point identification

View source: R/findEquilibrium.R

findEquilibriumR Documentation

Equilibrium point identification

Description

Searches for an equilibium point of a system, taking the starting point of the search as a user specified location. On identifying such a point, a classification is performed, and an informatively shaped point can be added to the plot.

Usage

findEquilibrium(
  deriv,
  y0 = NULL,
  parameters = NULL,
  system = "two.dim",
  tol = 1e-16,
  max.iter = 50,
  h = 1e-06,
  plot.it = FALSE,
  summary = TRUE,
  state.names = if (system == "two.dim") c("x", "y") else "y"
)

Arguments

deriv

A function computing the derivative at a point for the ODE system to be analysed. Discussion of the required structure of these functions can be found in the package vignette, or in the help file for the function ode.

y0

The starting point of the search. In the case of a one-dimensional system, this should be a numeric vector of length one indicating the location of the dependent variable initially. In the case of a two-dimensional system, this should be a numeric vector of length two reflecting the location of the two dependent variables initially. Alternatively this can be specified as NULL, and then locator can be used to specify the initial point on a plot. Defaults to NULL.

parameters

Parameters of the ODE system, to be passed to deriv. Supplied as a numeric vector; the order of the parameters can be found from the deriv file. Defaults to NULL.

system

Set to either "one.dim" or "two.dim" to indicate the type of system being analysed. Defaults to "two.dim".

tol

The tolerance for the convergence of the search algorithm. Defaults to 1e-16.

max.iter

The maximum allowed number of iterations of the search algorithm. Defaults to 50.

h

Step length used to approximate the derivative(s). Defaults to 1e-6.

plot.it

Logical. If TRUE, a point is plotted at the identified equilibrium point, with shape corresponding to its classification.

summary

Set to either TRUE or FALSE to determine whether a summary of the progress of the search procedure is returned. Defaults to TRUE.

state.names

The state names for ode functions that do not use positional states.

Value

Returns a list with the following components (the exact make up is dependent on the value of system):

classification

The classification of the identified equilibrium point.

Delta

In the two-dimensional system case, value of the Jacobian's determinant at the equilibrium point.

deriv

As per input.

discriminant

In the one-dimensional system case, the value of the discriminant used in perturbation analysis to assess stability. In the two-dimensional system case, the value of tr^2 - 4*Delta.

eigenvalues

In the two-dimensional system case, the value of the Jacobian's eigenvalues at the equilibrium point.

eigenvectors

In the two-dimensional system case, the value of the Jacobian's eigenvectors at the equilibrium point.

jacobian

In the two-dimensional system case, the Jacobian at the equilibrium point.

h

As per input.

max.iter

As per input.

parameters

As per input.

plot.it

As per input.

summary

As per input.

system

As per input.

tr

In the two-dimensional system case, the value of the Jacobian's trace at the equilibrium point.

tol

As per input.

y0

As per input.

ystar

The location of the identified equilibrium point.

Author(s)

Michael J Grayling, Stephen P Ellner, John M Guckenheimer


phaseR documentation built on Sept. 2, 2022, 5:07 p.m.