##
Global Structures

In general the user does not need to know much about the use of global structures in MATCONT but advanced users can find it useful since a lot of additional information can be hidden in these structures. MATCONT uses a structure `cds` (continuation descriptor structure) which is global in the continuer routine `cont.m` and in all (12) curve definition files and it carries information back and forth between them (cf. Figure 4). Also, `cds` has a field `cds.options` with the fields described in §3.4. It contains default values for these options but overrides them with the values in the options-structure that is passed with the call of `cont.m`. Other fields of `cds.options` are filled via the interaction with the curve definition file which is also passed with the call to `cont.m`

Next, MATCONT uses more specific global structures, namely:

- `eds` (equilibrium descriptor structure): this structure is global in the curve definition file `equilibrium.m` and in the initializers for the continuation of equilibria.
- `lpds` (limit point descriptor structure): this structure is global in the curve definition file `limitpoint.m` and in the initializers for the continuation of limit points.
- `hds` (Hopf descriptor structure): this structure is global in the curve definition file `hopf.m` and in the initializers for the continuation of Hopf points.
- `bpds` (branch point descriptor structure): this structure is global in the curve definition file `branchpoint.m` and in the initializers for the continuation of branch points.
- `lds` (limitcycle descriptor structure): this structure is global in the curve definition files `limitcycle.m`, `limitpointcycle.m`, `perioddoubling.m`, `neimarksacker.m`, and also in `branchpointcycle.m`, in the initializers for the continuation of limit cycles, their codimension 1 bifurcations and branch points.
- `homds` (homoclinc descriptor structure): this structure is global in the curve definition files `homoclinic.m`, `homoclinicsaddlenode.m` and in the initializers for the continuation of orbits to saddle or to saddle-node.
- `hetds` (heteroclinc descriptor structure): this structure is global in the curve definition file `heteroclinic.m` and in the initializers for the continuation of heteroclinic orbits.

These specific structures carry information that is collected or computed in the initializers to the curve definition files in which they are global. In the initializers themselves other specific structures can also be global, depending on the data that are used in the initializer. For example, in the initializer `init_H_LC` not only `lds` and `cds` are global but also `eds` and `hds`. Indeed, Hopf points can be detected on equilibrium curves or be taken from Hopf curves.