diffsol-c 0.6.0

A diffsol wrapper featuring runtime scalar/matrix/solver types and a C API
docs.rs failed to build diffsol-c-0.6.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: diffsol-c-0.5.2

diffsol-c

A runtime-typed wrapper and C API around diffsol.

Where the diffsol crate selects its scalar, matrix, and solver types at compile time via generics, diffsol-c exposes them as runtime choices behind a C-compatible interface, making diffsol usable from C and other languages via FFI.

The crate is built as both a C dynamic library and a Rust library (crate-type = ["cdylib", "rlib"]).

What's in this crate

  • Runtime selection of scalar / matrix / linear-solver / ODE-solver types.
  • A C API for building and solving ODE/DAE problems.
  • Integration with the DiffSL DSL for specifying equations.

Features

  • diffsl-cranelift: DiffSL with the Cranelift JIT backend.
  • diffsl-llvm15 … diffsl-llvm21: DiffSL with the corresponding LLVM backend.
  • diffsl-external-f64 / diffsl-external-f32 / diffsl-external-dynamic: externally compiled DiffSL modules.
  • suitesparse: enable the KLU sparse direct solver (via diffsol/suitesparse).
  • wasm: WebAssembly support.

Links

License

Licensed under the MIT license. See the repository for details.