Hi Om:
I worked with waveforms until I discovered that under "append waveforms DLB.VI" there was a "Build Array.vi".
Since then I just use them only if a VI needs a waveform as an input. The rest of times I use arrays.
In my opinion, Waveforms are just arrays with extra information, but the VIs to handle them are not optimized in memory (at least not all).
So, for small applications are a very fast and easy solution, but not for a complex one.
If you need that big array, you can reserve that memory from the beginning. Every partial result should replace part of this array.
For the process, if you use a certain amount of data, and always the same amount, with different data in it, you can use that same space of memory every loop with shift registers
And the result (waveform) can be converted to a part of the initialiy reserveded array (unbundle the waveform and you have an array).
Note that "t0" and "dt" values are no use for you, as t0 will be 0, or n * [size of array] / [Sampling Frequency], and dt will be the same for all.
Hope it helps,
Aitortxo.