Click or drag to resize

DoubleSymmetricSignalReader Class

Provides symmetric complex conjugate signal unpacking services. Typically used for unpacking 1D FFT's of real signals.
Inheritance Hierarchy
SystemObject
  CenterSpace.NMath.CoreDoubleSymmetricSignalReader

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
[SerializableAttribute]
public abstract class DoubleSymmetricSignalReader

The DoubleSymmetricSignalReader type exposes the following members.

Constructors
 NameDescription
Public methodDoubleSymmetricSignalReader Creates an polymorphic instance on this class.
Top
Properties
 NameDescription
Public propertyCurrentRow Gets or sets the current row to unpack. Used to select a row when unpacking 2D arrays of row-wise 1D signal data.
Public propertyHalfLength Gets the length of symmetric half of the signal.
Public propertyItem Gets the value at [row, column] of the packed complex-conjugate symmetric signal.
Public propertyLength Gets the length of signal data.
Top
Methods
 NameDescription
Public methodUnpackFullToArray Builds the unpacked signal representation of the entire packed signal. If an array of row signals is being unpacked, only the CurrentRow is extracted and unpacked.
Public methodUnpackFullToVector Builds the unpacked signal representation of the entire packed signal. If an array of row signals is being unpacked, only the CurrentRow is extracted and unpacked.
Public methodUnpackSymmetricHalfToArray Builds a unpacked signal of the symmetric leading half of the packed signal. If an array of row signals is being unpacked, only the CurrentRow is extracted.
Public methodUnpackSymmetricHalfToVector Builds a unpacked signal of the symmetric leading half of the packed signal. If an array of row signals is being unpacked, only the CurrentRow is extracted.
Top
Remarks
Use this reader for extracting packed signal data resulting from forward 1D FFT's of real signals. The FFT instance used to generated the signal data must be queried for the appropriate reader using the GetSignalReader() method. This guarantees that the correct packed signal reader is constructed.
Example
C#
DoubleForward1DFFT fft = new DoubleForward1DFFT(5);
DoubleVector realsignal = new DoubleVector("1 2 3 4 5");
fft.FFTInPlace(realsignal);
DoubleSymmetricSignalReader reader = fft.GetSignalReader(realsignal); // Get the reader from the FFT instance.
DoubleComplexVector unpackedsignal = new DoubleComplexVector(fft.Length);
reader.UnpackFull(ref unpackedsignal);  // Unpack the entire signal into the reference vector.
See Also