pub fn dwt_multilevel<T: SignalType + 'static>(
signal: &Signal<T>,
wavelet: &dyn Wavelet,
levels: usize,
boundary: BoundaryMode,
) -> Result<MultilevelDWTResult<T>>Expand description
Perform multi-level 1D Discrete Wavelet Transform
§Energy Conservation Notes
This function maintains excellent energy conservation (Parseval’s theorem) for most signals:
- Even-length signals: Perfect energy conservation (< 1e-15 relative error)
- Odd-length signals with periodic boundaries: May have 1-20% energy errors due to boundary wrap-around effects. This is a mathematical characteristic of DWT, not a bug.
For applications requiring perfect energy conservation with odd-length signals, consider zero-padding the signal to even length before processing.