This is an example of one function, there are several dozens of functions more or less similar in concept.
This is the "old" version where the data is in a single cluster. This function is inefficient since copies are made of each array (probably due to the bundle function to the right). Started out using index registers on each array, but this was really unpractical due to all the wires.
In the new version a different algorithm is to be used (algebraic time discretization vs space-time discretization, better for less detailed realtime survailance of very large systems, but that doesn't matter here). In this version data is best stored per element basis (array of clusters).
The same "conceptual" problem exist in both versions, but more so in the new v
ersion. In the old version functional globals could/should be used instead of the cluster i think. In the new version this would be difficult without some clever and completely rewritten indexing routines.
But, if the "reference" in LV really isn't a reference, then everything has to be split up as I see it, when data is of some size. This would be a real problem for me because it would restrict how data is stored and accessed, thus complicate the program tremendously. Besides, why does references or pointers destroy the dataflow paradigm? If the data is a reference, it is still flowing, isn't it?
Anyway, looks like functional globals could do the trick for now.