[][src]Struct basic_dsp_matrix::Matrix3xN

pub struct Matrix3xN<V, S, T> where
    T: RealNumber,
    V: Vector<T>, 
{ /* fields omitted */ }

A matrix which can hold exactly 3 vectors.

Trait Implementations

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

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

type Output = [V; 3]

Type of the underlying storage of a matrix.

impl<V: Vector<T> + ToFreqResult, S: ToSlice<T>, T: RealNumber> ToFreqResult for Matrix3xN<V, S, T> where
    <V as ToFreqResult>::FreqResult: Vector<T>, 
[src]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber, R: Send> MapAggregateOps<T, R> for Matrix3xN<V, S, T> where
    V: MapAggregateOps<T, R, Output = ScalarResult<R>>, 
[src]

type Output = ScalarResult<[R; 3]>

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

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber, N: NumberSpace, D: Domain, O> ComplexToRealGetterOps<O, T, N, D> for Matrix3xN<V, S, T> where
    O: Matrix<V, T> + GetMetaData<T, N, D>,
    V: ComplexToRealGetterOps<V, T, N, D> + GetMetaData<T, N, D>, 
[src]

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

impl<S: ToSlice<T>, V: Vector<T> + MapInplaceOps<Complex<T>>, T: RealNumber> MapInplaceOps<Complex<T>> for Matrix3xN<V, S, T>
[src]

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber> ComplexToRealTransformsOps<T> for Matrix3xN<V, S, T> where
    <V as ToRealResult>::RealResult: Vector<T>,
    V: ComplexToRealTransformsOps<T>, 
[src]

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber> RealToComplexTransformsOps<T> for Matrix3xN<V, S, T> where
    <V as ToComplexResult>::ComplexResult: Vector<T>,
    V: RealToComplexTransformsOps<T>, 
[src]

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

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> RealToComplexTransformsOpsBuffered<S, T> for Matrix3xN<V, S, T> where
    <V as ToComplexResult>::ComplexResult: Vector<T>,
    V: RealToComplexTransformsOpsBuffered<S, T>, 
[src]

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> SymmetricFrequencyToTimeDomainOperations<S, T> for Matrix3xN<V, S, T> where
    <V as ToRealTimeResult>::RealTimeResult: Vector<T>,
    V: SymmetricFrequencyToTimeDomainOperations<S, T>, 
[src]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber> StatisticsSplitOps<T> for Matrix3xN<V, S, T> where
    V: StatisticsSplitOps<Statistics<T>, Result = StatsVec<Statistics<T>>>, 
[src]

type Result = [StatsVec<Statistics<T>>; 3]

impl<'a, V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> Convolution<'a, S, T, &'a (dyn RealImpulseResponse<T> + 'a)> for Matrix3xN<V, S, T> where
    V: Convolution<'a, S, T, &'a dyn RealImpulseResponse<T>>, 
[src]

impl<'a, V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> Convolution<'a, S, T, &'a (dyn ComplexImpulseResponse<T> + 'a)> for Matrix3xN<V, S, T> where
    V: Convolution<'a, S, T, &'a dyn ComplexImpulseResponse<T>>, 
[src]

impl<V, S, T, N, D> GetMetaData<T, N, D> for Matrix3xN<V, S, T> where
    T: RealNumber,
    S: ToSlice<T>,
    V: Vector<T> + GetMetaData<T, N, D>,
    N: NumberSpace,
    D: Domain
[src]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber, O: RealNumber> PreciseSumOps<[O; 3]> for Matrix3xN<V, S, T> where
    V: PreciseSumOps<O>, 
[src]

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> TimeToFrequencyDomainOperations<S, T> for Matrix3xN<V, S, T> where
    <V as ToFreqResult>::FreqResult: Vector<T>,
    V: TimeToFrequencyDomainOperations<S, T>, 
[src]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber> PreciseStatisticsOps<T> for Matrix3xN<V, S, T> where
    V: PreciseStatisticsOps<Statistics<T>, Result = Statistics<T>>, 
[src]

type Result = [Statistics<T>; 3]

impl<V: Vector<T> + ToRealResult, S: ToSlice<T>, T: RealNumber> ToRealResult for Matrix3xN<V, S, T> where
    <V as ToRealResult>::RealResult: Vector<T>, 
[src]

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber, N: NumberSpace, D: Domain> ElementaryWrapAroundOps<Matrix3xN<V, S, T>, T, N, D> for Matrix3xN<V, S, T> where
    V: ElementaryWrapAroundOps<V, T, N, D> + GetMetaData<T, N, D>, 
[src]

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber, N: NumberSpace, D: Domain> ElementaryWrapAroundOps<V, T, N, D> for Matrix3xN<V, S, T> where
    V: ElementaryWrapAroundOps<V, T, N, D> + GetMetaData<T, N, D>, 
[src]

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

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

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

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

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

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

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber, N: NumberSpace, D: Domain, O> ComplexToRealSetterOps<O, T, N, D> for Matrix3xN<V, S, T> where
    O: Matrix<V, T> + GetMetaData<T, N, D>,
    V: ComplexToRealSetterOps<V, T, N, D> + GetMetaData<T, N, D>, 
[src]

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

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

impl<V: Vector<T> + ToTimeResult, S: ToSlice<T>, T: RealNumber> ToTimeResult for Matrix3xN<V, S, T> where
    <V as ToTimeResult>::TimeResult: Vector<T>, 
[src]

type TimeResult = Matrix3xN<V::TimeResult, S, T>

Specifies what the the result is if a type is transformed to time domain.

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber, N: NumberSpace, D: Domain> PreciseDotProductOps<Matrix3xN<V, S, T>, T, T, N, D> for Matrix3xN<V, S, T> where
    V: PreciseDotProductOps<V, T, T, N, D, Output = ScalarResult<T>> + GetMetaData<T, N, D>, 
[src]

type Output = ScalarResult<Vec<T>>

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber, N: NumberSpace, D: Domain> PreciseDotProductOps<V, T, T, N, D> for Matrix3xN<V, S, T> where
    V: PreciseDotProductOps<V, T, T, N, D, Output = ScalarResult<T>> + GetMetaData<T, N, D>, 
[src]

type Output = ScalarResult<[T; 3]>

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> ComplexToRealTransformsOpsBuffered<S, T> for Matrix3xN<V, S, T> where
    <V as ToRealResult>::RealResult: Vector<T>,
    V: ComplexToRealTransformsOpsBuffered<S, T>, 
[src]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber> PreciseStatisticsSplitOps<T> for Matrix3xN<V, S, T> where
    V: PreciseStatisticsSplitOps<Statistics<T>, Result = StatsVec<Statistics<T>>>, 
[src]

type Result = [StatsVec<Statistics<T>>; 3]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber> StatisticsOps<T> for Matrix3xN<V, S, T> where
    V: StatisticsOps<Statistics<T>, Result = Statistics<T>>, 
[src]

type Result = [Statistics<T>; 3]

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

impl<V: Vector<T> + ToRealTimeResult, S: ToSlice<T>, T: RealNumber> ToRealTimeResult for Matrix3xN<V, S, T> where
    <V as ToRealTimeResult>::RealTimeResult: Vector<T>, 
[src]

impl<S: ToSliceMut<T>, T: RealNumber, N: NumberSpace, D: Domain, O, V> CrossCorrelationOps<O, S, T, N, D> for Matrix3xN<V, S, T> where
    O: Matrix<V, T> + GetMetaData<T, N, D>,
    V: CrossCorrelationOps<V, S, T, N, D> + GetMetaData<T, N, D> + Vector<T>, 
[src]

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber, N: NumberSpace, D: Domain> DotProductOps<Matrix3xN<V, S, T>, T, T, N, D> for Matrix3xN<V, S, T> where
    V: DotProductOps<V, T, T, N, D, Output = ScalarResult<T>> + GetMetaData<T, N, D>, 
[src]

type Output = ScalarResult<Vec<T>>

impl<S: ToSlice<T>, V: Vector<T>, T: RealNumber, N: NumberSpace, D: Domain> DotProductOps<V, T, T, N, D> for Matrix3xN<V, S, T> where
    V: DotProductOps<V, T, T, N, D, Output = ScalarResult<T>> + GetMetaData<T, N, D>, 
[src]

type Output = ScalarResult<[T; 3]>

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

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

impl<V: Vector<T> + ToComplexResult, S: ToSlice<T>, T: RealNumber> ToComplexResult for Matrix3xN<V, S, T> where
    <V as ToComplexResult>::ComplexResult: Vector<T>, 
[src]

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

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

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> CrossCorrelationArgumentOps<S, T> for Matrix3xN<V, S, T> where
    <V as ToFreqResult>::FreqResult: Vector<T>,
    V: CrossCorrelationArgumentOps<S, T>, 
[src]

impl<S: ToSliceMut<T>, T: RealNumber, N: NumberSpace, D: Domain> ConvolutionOps<DspVec<S, T, N, D>, S, T, N, D> for Matrix3xN<DspVec<S, T, N, D>, S, T> where
    DspVec<S, T, N, D>: ConvolutionOps<DspVec<S, T, N, D>, S, T, N, D>, 
[src]

impl<'a, S: ToSliceMut<T>, T: RealNumber, N: NumberSpace, D: Domain> ConvolutionOps<[[&'a DspVec<S, T, N, D>; 3]; 3], S, T, N, D> for Matrix3xN<DspVec<S, T, N, D>, S, T>
[src]

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> SymmetricTimeToFrequencyDomainOperations<S, T> for Matrix3xN<V, S, T> where
    <V as ToFreqResult>::FreqResult: Vector<T>,
    V: SymmetricTimeToFrequencyDomainOperations<S, T>, 
[src]

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber, N: NumberSpace, D: Domain> ElementaryOps<Matrix3xN<V, S, T>, T, N, D> for Matrix3xN<V, S, T> where
    V: ElementaryOps<V, T, N, D> + GetMetaData<T, N, D>, 
[src]

impl<V: Vector<T>, S: ToSlice<T>, T: RealNumber, N: NumberSpace, D: Domain> ElementaryOps<V, T, N, D> for Matrix3xN<V, S, T> where
    V: ElementaryOps<V, T, N, D> + GetMetaData<T, N, D>, 
[src]

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

impl<V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> FrequencyToTimeDomainOperations<S, T> for Matrix3xN<V, S, T> where
    <V as ToTimeResult>::TimeResult: Vector<T>,
    V: FrequencyToTimeDomainOperations<S, T>, 
[src]

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

impl<'a, V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> FrequencyMultiplication<'a, S, T, &'a (dyn RealFrequencyResponse<T> + 'a)> for Matrix3xN<V, S, T> where
    V: FrequencyMultiplication<'a, S, T, &'a dyn RealFrequencyResponse<T>>, 
[src]

impl<'a, V: Vector<T>, S: ToSliceMut<T>, T: RealNumber> FrequencyMultiplication<'a, S, T, &'a (dyn ComplexFrequencyResponse<T> + 'a)> for Matrix3xN<V, S, T> where
    V: FrequencyMultiplication<'a, S, T, &'a dyn ComplexFrequencyResponse<T>>, 
[src]

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

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

Auto Trait Implementations

impl<V, S, T> Send for Matrix3xN<V, S, T> where
    S: Send,
    V: Send

impl<V, S, T> Sync for Matrix3xN<V, S, T> where
    S: Sync,
    V: Sync

Blanket Implementations

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T