···
2
+
maintainer: "tim@tbrk.org"
4
+
"Timothy Bourke <tim@tbrk.org>"
5
+
"Jun Inoue <Jun.Lambda@gmail.com>"
6
+
"Marc Pouzet <Marc.Pouzet@ens.fr>"
8
+
homepage: "http://inria-parkas.github.io/sundialsml/"
9
+
bug-reports: "https://github.com/inria-parkas/sundialsml/issues"
10
+
dev-repo: "git+https://github.com/inria-parkas/sundialsml"
11
+
doc: "http://inria-parkas.github.io/sundialsml/"
18
+
license: "BSD-3-Clause"
20
+
["./configure" "--stubdir=%{stublibs}%/"
22
+
"--docdir=%{doc}%/sundialsml/"
23
+
"--os-distribution=%{os-distribution}%"]
25
+
[make "doc"] {with-doc}
28
+
[make "install-findlib"]
29
+
[make "install-doc"] {with-doc}
32
+
"ocaml" {>= "4.03.0"}
35
+
"conf-sundials" {>= "2" & build}
40
+
synopsis: "Interface to the Sundials suite of numerical solvers"
41
+
conflicts: ["base-domains"]
43
+
Sundials is a collection of six numerical solvers: CVODE, CVODES, IDA, IDAS,
44
+
ARKODE, and KINSOL. This interface provides access to all features of the
45
+
underlying library except the Hypre and PETSC nvectors.
47
+
The structure of the OCaml interface mostly follows that of the original
48
+
library, both for ease of reading the existing documentation and for
49
+
converting existing source code, but several changes have been made for
50
+
programming convenience and to increase safety, namely:
52
+
- solver sessions are mostly configured via algebraic data types rather than
53
+
multiple function calls;
55
+
- errors are signalled by exceptions not return codes (also from
56
+
user-supplied callback routines);
58
+
- user data is shared between callback routines via closures (partial
59
+
applications of functions);
61
+
- vectors are checked for compatibility with a session (using a combination
62
+
of static and dynamic checks), and;
64
+
- explicit free commands are not necessary since OCaml is a
65
+
garbage-collected language.
67
+
The detailed OCaml documentation contains cross-links to the original
68
+
documentation. OCaml versions of the standard examples usually have an
69
+
overhead of about 30% compared to the original C versions, and only rarely
72
+
src: "https://github.com/inria-parkas/sundialsml/archive/refs/tags/v6.1.0p0.tar.gz"
73
+
checksum: "md5=fce8b029866ded92a025aaa33056c0b3"