[[bench]]
harness = false
name = "bm"
path = "benches/bm.rs"
[[bench]]
harness = false
name = "levy"
path = "benches/levy.rs"
[[bench]]
harness = false
name = "ou"
path = "benches/ou.rs"
[[bench]]
harness = false
name = "random"
path = "benches/random.rs"
[dependencies.csv]
optional = true
version = "1.4"
[dependencies.cudarc]
features = ["std", "cuda-version-from-build-system", "curand"]
optional = true
version = "0.18"
[dependencies.derive_builder]
optional = true
version = "0.20"
[dependencies.either]
optional = true
version = "1"
[dependencies.gauss-quad]
version = "0.2.4"
[dependencies.metal]
optional = true
version = "0.32"
[dependencies.mimalloc]
optional = true
version = "0.1"
[dependencies.num-complex]
version = "0.4"
[dependencies.num-traits]
version = "0.2"
[dependencies.plotters]
optional = true
version = "0.3"
[dependencies.plotters-backend]
optional = true
version = "0.3"
[dependencies.rand]
version = "0.9"
[dependencies.rand_distr]
version = "0.5"
[dependencies.rand_xoshiro]
version = "0.7"
[dependencies.rayon]
version = "1.11"
[dependencies.realfft]
version = "3.5"
[dependencies.thiserror]
version = "2"
[dev-dependencies.criterion]
version = "0.8"
[[example]]
doc-scrape-examples = false
name = "CIR"
path = "examples/CIR.rs"
[[example]]
doc-scrape-examples = false
name = "bm"
path = "examples/bm.rs"
[[example]]
doc-scrape-examples = false
name = "langevin"
path = "examples/langevin.rs"
[[example]]
doc-scrape-examples = false
name = "randoms"
path = "examples/randoms.rs"
[features]
cuda = ["dep:cudarc"]
default = ["mimalloc"]
io = ["dep:csv"]
metal = ["dep:metal"]
mimalloc = ["dep:mimalloc"]
visualize = ["dep:plotters", "dep:derive_builder", "dep:plotters-backend", "dep:either"]
[lib]
doctest = false
name = "diffusionx"
path = "src/lib.rs"
[package]
authors = ["Xiangong Tang <tangxiangong@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
categories = ["science", "mathematics"]
description = "A multi-threaded crate for random number generation and stochastic process simulation, with optional GPU acceleration."
edition = "2024"
keywords = ["stochastic-process", "simulation", "Monte-Carlo", "gpu"]
license = "MIT OR Apache-2.0"
name = "diffusionx"
readme = "README.md"
repository = "https://github.com/tangxiangong/diffusionx"
rust-version = "1.87"
version = "0.10.0"
[package.metadata.docs.rs]
features = ["visualize", "io"]
rustdoc-args = ["--cfg", "docsrs", "--html-in-header", "./docs-header.html"]
[profile.release]
codegen-units = 1
lto = true
panic = "abort"