Skip to content

v2.0.0

Latest
Compare
Choose a tag to compare
@philippkraft philippkraft released this 21 Jan 17:06
· 1 commit to master since this release

New CVODE solvers, reaction objects and connection directors

This CMF version breaks compatibility to older versions but contains many improvements:

Build system

CMF is now build as a pure C++ static library and linked to independently built CVODE solver from the
SUNDIALS package. CVODE is configured to link with the KLU solver from the
SUITESPARSE library. Both solvers and the CMF core library are build as CMAKE projects. Build instructions can be found in tools/install_solvers.bat/.sh and tools/install_cmf_core.bat/.sh. The setup.py script invokes these scripts as needed.

Solvers

In v1.6 there was one wrapper for the CVode solver with several options for solver configuration. Now different solver types are selected per different wrappers, CVodeDense, CVodeKrylov (default CVodeIntegrator in v1.6), CVodeBanded and CVodeDiagonal.
New versions (not available in v1.6) are CVodeAdams as an explicit multistep solver with up to 12th order and CVodeKLU with a direct sparse solver. The CVodeKLU solver analysis the hydrological network and uses a specialized solver for the sparse structure of the Jacobi-Matrix.

Reaction objects

Reactive fluxes can be modelled using a simplified chemistry module to model 1st and 2nd order reaction kinetics and equilibrium
reactions.

Connection directors

It is now possible to use the BaseConnection object to create connections directly in Python. This will be in most cases unacceptable slow, but a good opportunity for connection development

Cell geometries

Cells can be amended by a geometry, the network and area can be derived from the geometry.