Crate basic_dsp_matrix

Source
Expand description

In this lib a matrix is simply a collection of vectors. The idea is that the matrix types can be used to reduce the size of a large matrix and that the return types are basic enough so that other specialized matrix libs can do the rest of the work, e.g. inverting the resulting matrix.

Structs§

Matrix2xN
A matrix which can hold exactly 2 vectors.
Matrix3xN
A matrix which can hold exactly 3 vectors.
Matrix4xN
A matrix which can hold exactly 4 vectors.
MatrixMxN
A matrix which can hold 1 to N vectors.

Traits§

FromMatrix
Retrieves the underlying storage from a matrix.
Matrix
A trait for matrix types. In this lib a matrix is simply a collection of vectors. The idea is that the matrix types can be used to reduce the size of a large matrix and that the return types are basic enough so that other specialized matrix libs can do the rest of the work, e.g. inverting the resulting matrix.
ToComplexFreqMatrix
Conversion from a generic data type into a dsp vector with complex data.
ToComplexTimeMatrix
Conversion from a generic data type into a dsp vector with complex data.
ToDspMatrix
Conversion from a generic data type into a dsp matrix which tracks its meta information (domain and number space) only at runtime. See ToRealMatrix and ToComplexMatrix for alternatives which track most of the meta data with the type system and therefore avoid runtime errors.
ToMatrix
Conversion from a collection of vectors to a matrix.
ToRealFreqMatrix
Conversion from a generic data type into a dsp matrix with real data.
ToRealTimeMatrix
Conversion from a generic data type into a dsp matrix with real data.

Type Aliases§

ComplexFreqMatrix32x2
A matrix which can hold exactly 2 vectors of 32 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix32x3
A matrix which can hold exactly 4 vectors of 32 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix32x4
A matrix which can hold exactly 4 vectors of 32 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix32xN
A matrix which can hold 1 to N vectors of 32 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix64x2
A matrix which can hold exactly 2 vectors of 64 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix64x3
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix64x4
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in complex number space and frequency domain.
ComplexFreqMatrix64xN
A matrix which can hold 1 to N vectors of 64 bit floating point numbers in complex number space and frequency domain.
ComplexTimeMatrix32x2
A matrix which can hold exactly 2 vectors of 32 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix32x3
A matrix which can hold exactly 3 vectors of 32 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix32x4
A matrix which can hold exactly 4 vectors of 32 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix32xN
A matrix which can hold 1 to N vectors of 32 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix64x2
A matrix which can hold exactly 2 vectors of 64 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix64x3
A matrix which can hold exactly 3 vectors of 64 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix64x4
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in complex number space and time domain.
ComplexTimeMatrix64xN
A matrix which can hold 1 to N vectors of 64 bit floating point numbers in complex number space and time domain.
Matrix32x2
A matrix which can hold exactly 2 vectors of 32 bit floating point numbers in any number space or domain.
Matrix32x3
A matrix which can hold exactly 3 vectors of 32 bit floating point numbers in any number space or domain.
Matrix32x4
A matrix which can hold exactly 4 vectors of 32 bit floating point numbers in any number space or domain.
Matrix32xN
A matrix which can hold 1 to N vectors of 32 bit floating point numbers in any number space or domain.
Matrix64x2
A matrix which can hold exactly 2 vectors of 64 bit floating point numbers in any number space or domain.
Matrix64x3
A matrix which can hold exactly 3 vectors of 64 bit floating point numbers in any number space or domain.
Matrix64x4
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in any number space or domain.
Matrix64xN
A matrix which can hold 1 to N vectors of 64 bit floating point numbers in any number space or domain.
RealFreqMatrix32x2
A matrix which can hold exactly 2 vectors of 32 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix32x3
A matrix which can hold exactly 3 vectors of 32 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix32x4
A matrix which can hold exactly 4 vectors of 32 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix32xN
A matrix which can hold 1 to N vectors of 32 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix64x2
A matrix which can hold exactly 2 vectors of 64 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix64x3
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix64x4
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in real number space and frequency domain.
RealFreqMatrix64xN
A matrix which can hold 1 to N vectors of 64 bit floating point numbers in real number space and frequency domain.
RealTimeMatrix32x2
A matrix which can hold exactly 2 vectors of 32 bit floating point numbers in real number space and time domain.
RealTimeMatrix32x3
A matrix which can hold exactly 3 vectors of 32 bit floating point numbers in real number space and time domain.
RealTimeMatrix32x4
A matrix which can hold exactly 4 vectors of 32 bit floating point numbers in real number space and time domain.
RealTimeMatrix32xN
A matrix which can hold 1 to N vectors of 32 bit floating point numbers in real number space and time domain.
RealTimeMatrix64x2
A matrix which can hold exactly 2 vectors of 64 bit floating point numbers in real number space and time domain.
RealTimeMatrix64x3
A matrix which can hold exactly 3 vectors of 64 bit floating point numbers in real number space and time domain.
RealTimeMatrix64x4
A matrix which can hold exactly 4 vectors of 64 bit floating point numbers in real number space and time domain.
RealTimeMatrix64xN
A matrix which can hold 1 to N vectors of 64 bit floating point numbers in real number space and time domain.