[][src]Trait basic_dsp::matrix::Matrix

pub trait Matrix<V, T>: MetaData + ResizeOps where
    T: RealNumber,
    V: Vector<T>, 
{ fn delta(&self) -> T;
fn set_delta(&mut self, delta: T);
fn row_len(&self) -> usize;
fn row_points(&self) -> usize;
fn col_len(&self) -> usize;
fn rows(&self) -> &[V];
fn rows_mut(&mut self) -> &mut [V]; }

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.

Required methods

fn delta(&self) -> T

The x-axis delta. If domain is time domain then delta is in [s], in frequency domain delta is in [Hz].

fn set_delta(&mut self, delta: T)

Sets the x-axis delta. If domain is time domain then delta is in [s], in frequency domain delta is in [Hz].

fn row_len(&self) -> usize

The number of valid elements in each row of the matrix. This can be changed with the Resize trait.

fn row_points(&self) -> usize

The number of valid points in a row. If the matrix is complex then every valid point consists of two floating point numbers, while for real vectors every point only consists of one floating point number.

fn col_len(&self) -> usize

The number of columns in the matrix.

Important traits for &'a mut [u8]

fn rows(&self) -> &[V]

Gets the rows as vectors.

Important traits for &'a mut [u8]

fn rows_mut(&mut self) -> &mut [V]

Gets the rows as mutable vectors.

Loading content...

Implementors

impl<V, S, T> Matrix<V, T> for Matrix2xN<V, S, T> where
    S: ToSlice<T>,
    T: RealNumber,
    V: Vector<T>, 
[src]

impl<V, S, T> Matrix<V, T> for Matrix3xN<V, S, T> where
    S: ToSlice<T>,
    T: RealNumber,
    V: Vector<T>, 
[src]

impl<V, S, T> Matrix<V, T> for Matrix4xN<V, S, T> where
    S: ToSlice<T>,
    T: RealNumber,
    V: Vector<T>, 
[src]

impl<V, S, T> Matrix<V, T> for MatrixMxN<V, S, T> where
    S: ToSlice<T>,
    T: RealNumber,
    V: Vector<T>, 
[src]

Loading content...