[package]
name = "math-solvers"
version = "0.3.2"
description = "High-performance linear solvers for BEM and FEM"
edition = { workspace = true }
authors = { workspace = true }
license = { workspace = true }
repository = { workspace = true }
keywords = ["linear-algebra", "solvers", "gmres", "preconditionner"]
categories = ["science", "mathematics"]
[lib]
name = "math_audio_solvers"
path = "src/lib.rs"
[dependencies]
ndarray = { version = "0.17", default-features = false, features = ["rayon", "serde"] }
num-complex = { workspace = true, features = ["serde"] }
num-traits = { workspace = true }
ndarray-linalg = { workspace = true, optional = true }
rayon = { workspace = true, optional = true }
thiserror = { workspace = true }
log = { workspace = true }
wasm-bindgen = { workspace = true, optional = true }
wasm-bindgen-rayon = { workspace = true, optional = true }
[target.'cfg(target_os = "macos")'.dependencies]
ndarray-linalg = { workspace = true, optional = true, features = ["openblas-system"] }
[target.'cfg(any(target_os = "linux", target_os = "windows"))'.dependencies]
ndarray-linalg = { workspace = true, optional = true, features = ["openblas-system"] }
[dev-dependencies]
approx = { workspace = true }
[features]
default = ["native"]
native = [
"ndarray/blas",
"ndarray/rayon",
"ndarray-linalg",
"rayon",
]
parallel = ["rayon"]
wasm = [
"rayon",
"wasm-bindgen",
"wasm-bindgen-rayon",
]