pub fn modwt_time_scales(
signal_length: usize,
filter_length: usize,
) -> Vec<(usize, usize, usize)>Expand description
Calculate time scales accessible at each MODWT decomposition level
Returns the approximate time scale (in samples) that each decomposition level represents. This is useful for understanding what time scales can be analyzed with a given signal length and wavelet.
ยงExample
use iron_wave::transform::modwt::modwt_time_scales;
// For a signal sampled at 1 minute intervals
let scales = modwt_time_scales(1440, 4); // 1 day = 1440 minutes, DB2 filter
assert_eq!(scales.len(), 8); // Can decompose into 8 levels
assert_eq!(scales[0], (1, 2, 4)); // Level 1: 2-4 minutes
assert_eq!(scales[1], (2, 4, 8)); // Level 2: 4-8 minutes
assert_eq!(scales[2], (3, 8, 16)); // Level 3: 8-16 minutes
assert_eq!(scales[3], (4, 16, 32)); // Level 4: 16-32 minutes