Extra Variables

Most model objects (zones, gridpoints, structural elements, etc.) have extra storage for user-defined variables to be assigned and visualized. For instance, supposed that one wants to store the maximum and minimum stresses of each zone at one instant of time during a simulation. This information can be stored in extra variables associated with each zone.

fish define setExtra
   loop foreach local z zone.list
       zone.extra(z,1) = zone.stress.min(z)
       zone.extra(z,2) = zone.stress.max(z)
   endloop
end

In this case the second argument to the zone.extra FISH intrinsic is the index of the corresponding extra variable. Thus multiple extra variables (up to 128) can be assigned to each model object that has the extra variable capability. Also note that extra variables can be of any type which has a corresponding FISH type (i.e., boolean, integer, float, string, vector, matrix, etc.).

[CS: it might be useful to just have a list here of the model objects that provide an extra variable]