31#ifndef _CMGRAPHS_ROESAPPROX_H_
32#define _CMGRAPHS_ROESAPPROX_H_
53 void vectorField (
double,
const double *x,
double *y,
int dim)
const;
66 const double *x,
double *y,
int dim)
const
69 throw "This model is valid in dimension 3 only.";
72 const bool reversed =
false;
81 {-5, -1.0 / 4, -1.0 / 8, 0, 1.0 / 8, 1.0 / 4, 5};
82 double sOut [sCount] =
83 {-5, -2, -1, 0, 1, 2, 5};
85 for (
int i = 0; i < 3; ++ i)
88 for (
int i = 0; i < 3; ++ i)
91 const bool scaling =
false;
92 for (
int i = 0; scaling && (i < 2); ++ i)
94 if ((x [i] <= sIn [0]) || (x [i] >= sIn [sCount - 1]))
98 for (
int j = 1; j < sCount; ++ j)
102 stretch [i] = (sOut [j] - sOut [j - 1]) /
103 (sIn [j] - sIn [j - 1]);
104 scaled [i] = sOut [j - 1] +
105 (x [i] - sIn [j - 1]) * stretch [i];
112 y [0] = (-(scaled [1] + scaled [2])) * stretch [0];
113 y [1] = (scaled [0] + b * scaled [1]) * stretch [1];
114 y [2] = (b + scaled [2] * (scaled [0] - a)) * stretch [2];
119 for (
int i = 0; i < dim; ++ i)
This class defines a map for the nonlinear density dependent overcompensatory Leslie population model...
An approximate time-t map for the Roessler equations.
void vectorField(double, const double *x, double *y, int dim) const
The vector field.
MapRoesslerApprox()
The constructor of a Roessler map object.
const double & getLeftParam(int n) const
Returns the left value of the given parameter.
A generic method for computing a time-t map for ODEs in an approximate way.