The Conley-Morse Graphs Software
|
This class defines a map which describes a family of globally coupled logistic maps. More...
#include <m_globclog.h>
Public Member Functions | |
MapGlobCLog () | |
The default constructor. More... | |
~MapGlobCLog () | |
The destructor. More... | |
void | compute (const double *xleft, const double *xright, double *yleft, double *yright, int dim, const spcCoord *coord, int subdiv) const |
Computes the image of a box whose left and right coordinates are given. More... | |
Public Member Functions inherited from MapType | |
MapType () | |
The default constructor of an object which describes a map. More... | |
virtual | ~MapType () |
The destructor of an object which describe a map. More... | |
virtual void | setParam (const double *left, const double *right, int n) |
Sets the parameters to the given intervals defined by their left and right coordinates. More... | |
const double & | getLeftParam (int n) const |
Returns the left value of the given parameter. More... | |
const double & | getRightParam (int n) const |
Returns the right value of the given parameter. More... | |
virtual void | compute (const double *xleft, const double *xright, double *yleft, double *yright, int dim, const spcCoord *coord, int subdiv) const =0 |
Computes the image of a box whose left and right coordinates are given. More... | |
void | operator() (const IntervalType *x, IntervalType *y, int dim, const spcCoord *coord, int subdiv) const |
An interface to the function 'compute' based on intervals. More... | |
bool | adjust (bool successful, int subdiv) |
Adjusts parameters if necessary after a successful computation or after an unsuccessful computation of the graph of the map at a specific subdivision level. More... | |
std::string | getOptInfo () const |
Gets a single line of information on optimization of the computation of the map, so that it can be used by maps created for the same and nearby parameter values. More... | |
void | useOptInfo (const std::string &info) |
Uses a prevously saved line of information on optimization of the computation of the map for the same or nearby parameter values. More... | |
void | saveInternals (chomp::multiwork::mwData &data) const |
Saves the internal parameters and other data of the map to the mwData structure. More... | |
void | loadInternals (chomp::multiwork::mwData &data) |
Retrieves the internal paramters and other data of the map from the mwData structure. More... | |
virtual double | getTimeStep (int subdiv) const |
Returns the time step, which is 1 for a map, or the time t of integration in case of a time-t map of a flow. More... | |
virtual std::string | name () const |
Returns the name of the map. More... | |
Private Member Functions | |
void | setDimension (int dim) const |
Sets the space dimension and (re-)allocates memory for the sigma coefficients and variables. More... | |
IntervalType * | changeCoordsIn (IntervalType *input, IntervalType *output, int dim) const |
Applies a coordinate change to the input vector. More... | |
IntervalType * | changeCoordsOut (IntervalType *input, IntervalType *output, int dim) const |
Applies a coordinate change to the output vector. More... | |
Static Private Member Functions | |
static IntervalType | logistic (const IntervalType &x, const IntervalType &a) |
The logistic function f_a (x) = 1 - a x^2. More... | |
Private Attributes | |
int * | sigma |
The extra weights for the maps (for the weighted 2GCM). More... | |
int | sigmaSum |
The sum of the sigmas. More... | |
IntervalType * | variables |
A temporary array for the variables. More... | |
int | currentDim |
The dimension for which the internal arrays have been allocated. More... | |
double | rescaling |
Rescaling factor for the changed coordinates. More... | |
Static Private Attributes | |
static const bool | weighted2GCM = true |
Configuration option: Is this the weighted 2GCM model? More... | |
static const bool | changeCoordinates = false |
Configuration option: Should we change the first two coordinates? More... | |
This class defines a map which describes a family of globally coupled logistic maps.
There are only two parameters of this map: 'a' and 'epsilon'. Warning: This class is not thread-safe!
Definition at line 53 of file m_globclog.h.
|
inline |
|
inline |
|
inlineprivate |
Applies a coordinate change to the input vector.
Definition at line 158 of file m_globclog.h.
References changeCoordinates, and rescaling.
Referenced by compute().
|
inlineprivate |
Applies a coordinate change to the output vector.
Definition at line 170 of file m_globclog.h.
References changeCoordinates, and rescaling.
Referenced by compute().
|
inlinevirtual |
Computes the image of a box whose left and right coordinates are given.
Fills in the images with the left and right coordinates of the image box.
Implements MapType.
Definition at line 182 of file m_globclog.h.
References changeCoordsIn(), changeCoordsOut(), MapType::getLeftParam(), MapType::getRightParam(), logistic(), resetRounding(), setDimension(), sigma, sigmaSum, and variables.
|
inlinestaticprivate |
The logistic function f_a (x) = 1 - a x^2.
Definition at line 130 of file m_globclog.h.
Referenced by compute().
|
inlineprivate |
Sets the space dimension and (re-)allocates memory for the sigma coefficients and variables.
Definition at line 136 of file m_globclog.h.
References currentDim, sigma, sigmaSum, variables, and weighted2GCM.
Referenced by compute().
|
staticprivate |
Configuration option: Should we change the first two coordinates?
Definition at line 74 of file m_globclog.h.
Referenced by changeCoordsIn(), and changeCoordsOut().
|
mutableprivate |
The dimension for which the internal arrays have been allocated.
Definition at line 86 of file m_globclog.h.
Referenced by setDimension().
|
private |
Rescaling factor for the changed coordinates.
Definition at line 89 of file m_globclog.h.
Referenced by changeCoordsIn(), and changeCoordsOut().
|
mutableprivate |
The extra weights for the maps (for the weighted 2GCM).
Definition at line 77 of file m_globclog.h.
Referenced by compute(), setDimension(), and ~MapGlobCLog().
|
mutableprivate |
The sum of the sigmas.
Definition at line 80 of file m_globclog.h.
Referenced by compute(), and setDimension().
|
mutableprivate |
A temporary array for the variables.
Definition at line 83 of file m_globclog.h.
Referenced by compute(), setDimension(), and ~MapGlobCLog().
|
staticprivate |
Configuration option: Is this the weighted 2GCM model?
Definition at line 71 of file m_globclog.h.
Referenced by setDimension().