Trait basic_dsp_vector::ConvolutionOps
[−]
[src]
pub trait ConvolutionOps<S, T, A> where S: ToSliceMut<T>, T: RealNumber { fn convolve_vector<B>(&mut self, buffer: &mut B, impulse_response: &A) -> VoidResult where B: Buffer<S, T>; }
Provides a convolution operation for types which at some point are slice based.
Required Methods
fn convolve_vector<B>(&mut self, buffer: &mut B, impulse_response: &A) -> VoidResult where B: Buffer<S, T>
Convolves self with the convolution function impulse_response.
For performance it's recommended
to use multiply both vectors in frequency domain instead of this operation.
Failures
TransRes may report the following ErrorReason members:
VectorMustBeInTimeDomain: ifselfis in frequency domain.VectorMetaDataMustAgree: in caseselfandimpulse_responseare not in the same number space and same domain.InvalidArgumentLength: ifself.points() < impulse_response.points().
Implementors
impl<S, T, N, D> ConvolutionOps<S, T, DspVec<S, T, N, D>> for DspVec<S, T, N, D> where S: ToSliceMut<T>, T: RealNumber, N: NumberSpace, D: TimeDomain