Trait basic_dsp::VectorConvolution
[−]
[src]
pub trait VectorConvolution<T>: DataVector<T> where T: RealNumber { fn convolve_vector(self, impulse_response: &Self) -> VecResult<Self>; }
Provides a convolution operation for data vectors with data vectors.
Required Methods
fn convolve_vector(self, impulse_response: &Self) -> VecResult<Self>
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
VecResult 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 VectorConvolution<f32> for GenericDataVector<f32>impl VectorConvolution<f64> for GenericDataVector<f64>impl VectorConvolution<f32> for RealTimeVector<f32>impl VectorConvolution<f64> for RealTimeVector<f64>impl VectorConvolution<f32> for ComplexTimeVector<f32>impl VectorConvolution<f64> for ComplexTimeVector<f64>impl VectorConvolution<f32> for RealFreqVector<f32>impl VectorConvolution<f64> for RealFreqVector<f64>impl VectorConvolution<f32> for ComplexFreqVector<f32>impl VectorConvolution<f64> for ComplexFreqVector<f64>