[package]
edition = "2024"
name = "math-optimisation"
version = "0.4.0"
authors = ["Pierre F. Aubert pierre@spinorama.org"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Non linear optimisation library with own DE solvers and interface to NLOpt and MetaHeuristics"
readme = "README.md"
license = "GPL-3.0-or-later"
repository = "https://github.com/pierreaubert/sotf"
[features]
default = []
plotly_static = ["dep:plotly_static"]
[lib]
name = "math_audio_optimisation"
path = "src/mod.rs"
[[bin]]
name = "benchmark_convergence"
path = "bench/benchmark_convergence.rs"
[[bin]]
name = "plot_de"
path = "bin/plot_de.rs"
[[bin]]
name = "run-de"
path = "bin/run_de.rs"
[[example]]
name = "optde_adaptive_demo"
path = "examples/optde_adaptive_demo.rs"
[[example]]
name = "optde_basic"
path = "examples/optde_basic.rs"
[[example]]
name = "optde_linear_constraints"
path = "examples/optde_linear_constraints.rs"
[[example]]
name = "optde_nonlinear_constraints"
path = "examples/optde_nonlinear_constraints.rs"
[[example]]
name = "optde_parallel"
path = "examples/optde_parallel.rs"
[dependencies.clap]
version = "4.5"
features = ["derive"]
[dependencies.directories]
version = "6"
[dependencies.math-test-functions]
version = "0.4"
default-features = false
[dependencies.ndarray]
version = "0.17"
features = [
"rayon",
"blas",
"serde",
]
default-features = false
[dependencies.plotly]
version = "0.13"
[dependencies.plotly_static]
version = "0.1"
features = [
"chromedriver",
"webdriver_download",
]
optional = true
[dependencies.rand]
version = "0.9.2"
[dependencies.rayon]
version = "1.11"
[dependencies.thiserror]
version = "2.0.17"
[dev-dependencies]
[target.'cfg(all(any(target_os = "ios", target_os="ios_sim"), target_arch = "aarch64"))'.dependencies]
[target.'cfg(all(target_os = "linux", target_arch="aarch64"))'.dependencies]
[target.'cfg(all(target_os = "linux", target_arch="aarch64", target_env="musl"))'.dependencies]
[target.'cfg(all(target_os = "linux", target_arch="x86_64"))'.dependencies]
[target.'cfg(all(target_os = "linux", target_arch="x86_64", target_env="musl"))'.dependencies]
[target.'cfg(all(target_os = "windows", target_arch="aarch64"))'.dependencies]
[target.'cfg(all(target_os = "windows", target_arch="x86_64"))'.dependencies]
[target.'cfg(target_os = "macos")'.dependencies]