next up previous
Next: The unit structure Up: Implementation Previous: Implementation

The top level network data structure

The top of the network data structure is a network header. All network related functions use a pointer to this data structure on input and all variables can be accessed from this structure. The following information can be found.

A network description text, the creation and modification date are there for the user's convenience. The control information is important, it specifies the type of network, i.e. whether it is one of the standard network types found in the library or a user defined type of network, see also NET-flags. Most routines test this field to check if a certain routine may be called with this type of network.

Furthermore, some general data about the network, like the number of inputs or outputs, the number of units, layers, weights and links in the network structure. These parameters are only valid if they make sense for the type of network and may be undefined if not appropriate. A general purpose data field allows the user to attach his/her own data to the network structure. This may either be a long integer, a double floating point or a pointer. The latter allows the user to attach any data to the network data structure.

A pointer to the first and last unit of the double linked list of units gives access to the whole network structure, which will be explained in the next subsection. A pointer to a linked list of all weights is provided for quick access to the weights. See figure 3.1 for a schematic diagram of this set-up and the reference part for the actual implementation in C.

   figure246
Figure 3.1: The top network data structure.



Created by LaTeX2HTML on Thu Mar 5 16:02:50 MET 1998