rlst 0.5.0

A Rust native linear algebra library.
Documentation
[build-dependencies.bindgen]
default-features = false
version = "0.72.1"

[build-dependencies.cc]
version = "=1.2"

[build-dependencies.cmake]
version = "0.1"

[build-dependencies.git2]
version = "0.20"

[dependencies.aligned-vec]
version = "0.6"

[dependencies.blas]
version = "0.23"

[dependencies.bytemuck]
version = "1.24.0"

[dependencies.coe-rs]
version = "0.1.2"

[dependencies.fftw-sys]
default-features = false
optional = true
version = "0.8"

[dependencies.itertools]
version = "0.14"

[dependencies.lapack]
version = "0.20"

[dependencies.log]
optional = true
version = "0.4"

[dependencies.mpi]
features = ["derive", "complex"]
optional = true
version = "0.8.1"

[dependencies.mpi-sys]
optional = true
version = "0.2.3"

[dependencies.num]
features = ["serde", "rand"]
version = "0.4"

[dependencies.num_cpus]
version = "1"

[dependencies.paste]
version = "1"

[dependencies.pulp]
version = "0.22"

[dependencies.rand]
version = "0.9"

[dependencies.rand_chacha]
version = "0.9"

[dependencies.rand_distr]
version = "0.5"

[dependencies.rlst-proc-macro]
version = "0.5"

[dependencies.serde]
version = "1"

[dependencies.thiserror]
version = "2"

[dependencies.typenum]
features = ["const-generics"]
version = "1"

[dev-dependencies.approx]
features = ["num-complex"]
version = "0.5"

[dev-dependencies.paste]
version = "1"

[dev-dependencies.rand]
version = "0.9"

[[example]]
name = "array_operations"
path = "examples/array_operations.rs"

[[example]]
name = "array_tools"
path = "examples/array_tools.rs"
required-features = ["mpi"]

[[example]]
name = "distributed_array"
path = "examples/distributed_array.rs"
required-features = ["mpi"]

[[example]]
name = "distributed_array_operations"
path = "examples/distributed_array_operations.rs"
required-features = ["mpi"]

[[example]]
name = "distributed_csr_matrix"
path = "examples/distributed_csr_matrix.rs"
required-features = ["mpi"]

[[example]]
name = "eigenvalue_decomposition"
path = "examples/eigenvalue_decomposition.rs"

[[example]]
name = "ghost_communicator"
path = "examples/ghost_communicator.rs"
required-features = ["mpi"]

[[example]]
name = "lu_decomposition"
path = "examples/lu_decomposition.rs"

[[example]]
name = "parallel_sort"
path = "examples/parallel_sort.rs"
required-features = ["mpi"]

[features]
blis_threading = []
default = []
enable_tracing = ["rlst-proc-macro/enable_tracing", "dep:log"]
fftw = ["dep:fftw-sys"]
fftw_mkl = ["fftw-sys/intel-mkl"]
fftw_source = ["fftw-sys/source"]
fftw_system = ["fftw-sys/system"]
mkl_threading = []
mpi = ["dep:mpi", "dep:mpi-sys"]
nightly = []
openblas_threading = []
strict = []

[lib]
name = "rlst"
path = "src/lib.rs"

[lints.clippy]
wildcard_imports = "forbid"

[package]
authors = ["The rlst contributors"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["mathematics", "science"]
description = "A Rust native linear algebra library."
edition = "2024"
homepage = "https://codeberg.org/linalg-rs"
keywords = ["numerics"]
license = "MIT / Apache-2.0"
name = "rlst"
readme = "README.md"
repository = "https://codeberg.org/linalg-rs/rlst"
resolver = "2"
version = "0.5.0"

[target.'cfg(target_os = "linux")'.dev-dependencies.blas-src]
features = ["openblas"]
version = "0.14"

[target.'cfg(target_os = "linux")'.dev-dependencies.lapack-src]
features = ["openblas"]
version = "0.13"

[target.'cfg(target_os = "linux")'.dev-dependencies.openblas-src]
features = ["system"]
version = "0.10"

[target.'cfg(target_os = "macos")'.dev-dependencies.blas-src]
features = ["accelerate"]
version = "0.14"

[target.'cfg(target_os = "macos")'.dev-dependencies.lapack-src]
features = ["accelerate"]
version = "0.13"