Netmonitor design
From Emergent
Contents |
Net Monitor Logic
The default behavior is to look for the variable on the object as a member or a member of a member (if multiple .'s present. Special logic is in place for network variables if the member is not first found on the object. There are three cases:
Unit Variables (act, net, etc)
Creates a matrix column for each layer (or a scalar column if object = 1 unit). For specific object types:
- Network -- iterates over layers, with each layer making a new matrix column of units (Network always just iterates over Layers in all cases).
- Layer -- creates a matrix column with geometry of units within the layer (if geom.n_not_xy then it makes a flat 1xn matrix)
Connection Variables (r.wt, s.wt, etc)
- Layer -- iterates over projections and creates 4 dimensional matrix columns for each (see next).
- Projection -- creates a 4 dimensional matrix column, with units as the 1st two dimensions, and connection values as the 2nd two dimensions. any subgroup geometry in either case is collapsed into two dims. if geom.n_not_xy then it reduces to 1xn.
- Unit -- creates a matrix column for each connection group (projection), with dimensionality of the sending/receiving unit layer (up to 4 dimensional if unit groups are involved)
Projection Variables (e.g. prjns.rel_netin or projections.rel_netin)
- Layer -- creates a 1xn matrix column containing the projection values in order ?
