Trait signalo_filters::traits::LinearPhaseShift
[−]
[src]
pub trait LinearPhaseShift: PhaseShift { fn linear_phase_shift(&self) -> isize; }
Trait for linearly phase shifting systems.
Background:
A system is called linear if it follows these two principles:
-
Superposition: Let
x1(t)
,x2(t)
be the inputs applied to a system andy1(t)
,y2(t)
be the outputs. Forx1(t)
the output of the system isy1(t)
and forx2(t)
output of the systemy2(t)
then forx1(t) + x2(t)
if the output of the system isy1(t) + y2(t)
then system is said to be obeying superposition principle. -
Homogeneity: Consider for an input
x(t)
for which output of the system isy(t)
. Then if for the inputax(t)
(where a is some constant value) output isay(t)
then system is said to be obeying homogeneity principle. Consequence of the homogeneity (or scaling) property is that a zero input to the system yields a zero output.
If the above two property are satisfied system is said to be a linear system. Wikipedia
Required Methods
fn linear_phase_shift(&self) -> isize
Returns the constant linear phase shift of self
.