Create XMLArrayTypes authored by Erik von Reis's avatar Erik von Reis
Table of array types and subtypes:
type names are strings.
subtypes are integers, and not properly labeled.
subtypes are type specific
subtypes define both the meaning of the contents and the data format of the contents
types are like this:
float4 - single precision 4-byte floating point
complex8 - single precision 8-byte complex number, composed of 4-byte real and imaginary parts in sequence.
Some data objects are a single array, and some two arrays. There is always a Y array. If there are two arrays, there is either an f array or an t array, with the Y array appended.
Y can represent multiple results for multiple channels.
f and t can be different types from Y. The meaning of Y is determined by the type and subtype.
In all cases the sub-arrays of Y have the same number of elements as the f or t.
f gives the frequencies.
Listing is
"type"
<subtype> - explanation
|"TransferFunction"|
|Subtype| description |
| 0 | Y is complex8 TF values. Assumes linear frequency starting at F0 parameter and stepping with delta F.|
| 1 | Y is complex8 "response" value. Might just be FFT output for the A channel. Frequencies are assumed linear as in subtype 0.|
2 - Y is float4, coherence. Frequencies assumed linear as in subtype 0.
3 - f is complex8, but only the real value is used, the imaginary part is ignored. Y is complex8 transfer function values.
4 - f is complex8, but only the real value is used, the imaginary part is ignore. Y is complex8 "response" value, as in subtype 1.
5 - f is float4, y is float4, coherence.
6 - f is float8, y is complex8, transfer function
7 - f is float8, y is float8 coherence
"Spectrum"
0 - Y is complex8, FFT. f assumed linear, starting at F0 and stepping by F.
1 - Y is float4, PSD, linear f as in 0.
2 - Y is complex8, CSD, linear f as in 0.
3 - Y is float4, coherence, linear f as in 0.
4 - f is complex8, but only real part used. Y is complex8, fft.
5 - f is float4, y is float4 PSDs
6 - f is complex8, but only real part used. Y is complex8 CSD
7 - f is float4, Y is float4 coherence
Proposed new:
8 - Y is complex16, FFT, f assumed linear
9 - Y is float8, PSD, f assumed linear
10 - Y is complex16, CSD, f assumed linear
TimeSeries has it's own "type" which can be 'float' or 'floatComplex', which determines whether the Y type is float4 or complex8.
"TimeSeries"
0 - Y is normal time series. t is assumed linear.
1 - Y is down-converted time series. t is assumed linear
2 - Y is averaged time seris. t is assumed linear
3 - Special format: arrays of (mean, std. dev., min., max., rms)
4 - t, same units as Y. Y is normal time series.
5 - t, same units as Y. Y is down-converted time series
6 - t, same units as Y. Y is averaged time series.
7 - special format: arrays of (t, mean, std. dev., min., max., rms)