[package]
edition = "2024"
rust-version = "1.95"
name = "ndwt"
version = "0.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance discrete and lifting wavelet transforms for 1-D and N-D signals, with SIMD acceleration, adjoint operations, and 8 boundary conditions."
documentation = "https://docs.rs/ndwt"
readme = "README.md"
keywords = [
"wavelet",
"signal-processing",
"dwt",
"simd",
"lwt",
]
categories = [
"science",
"algorithms",
]
license = "MIT"
repository = "https://github.com/jcapriot/wavelets-rs"
[features]
default = [
"rayon",
"ndarray",
"x86-v3",
]
x86-v3 = ["pulp/x86-v3"]
x86-v4 = ["pulp/x86-v4"]
[lib]
name = "ndwt"
path = "src/lib.rs"
[[example]]
name = "dwt_1d"
path = "examples/dwt_1d.rs"
[[example]]
name = "lwt_2d"
path = "examples/lwt_2d.rs"
[[test]]
name = "broadcasted_test"
path = "tests/broadcasted_test.rs"
[[test]]
name = "dwt_driver_test"
path = "tests/dwt_driver_test.rs"
[[test]]
name = "inteleave_test"
path = "tests/inteleave_test.rs"
[[test]]
name = "lwt_driver_test"
path = "tests/lwt_driver_test.rs"
[[bench]]
name = "wavelet_bench"
path = "benches/wavelet_bench.rs"
harness = false
[dependencies.aligned-vec]
version = "0.6.4"
[dependencies.itertools]
version = "0.14.0"
[dependencies.ndarray]
version = "0.17.2"
optional = true
[dependencies.ndwt-macros]
version = "0.1.1"
[dependencies.num-complex]
version = "0.4.6"
[dependencies.num-traits]
version = "0.2.19"
[dependencies.pulp]
version = "0.22.2"
[dependencies.rayon]
version = "1.12.0"
optional = true
[dev-dependencies.criterion]
version = "0.8.2"
[dev-dependencies.rstest]
version = "0.26.1"
[lints.clippy]
approx_constant = "allow"
excessive_precision = "allow"