4 releases

0.0.8 Feb 16, 2024
0.0.7 Feb 15, 2024
0.0.6 Feb 2, 2024
0.0.5 Dec 12, 2023
0.0.4 Dec 6, 2023

#1589 in Math


Used in cellular_raza

GPL-2.0 license

410KB
8K SLoC

cellular_raza core

This crate contains core features used for numerical integration, storing and loading data.


lib.rs:

This crate collects objects and methods needed to run a numerical simulation of given objects that satisfy the given [concepts].

Backends

This crate supports multiple types of backends. Currently, the backend::cpu_os_threads backend is the general-purpose solver which can deal with (almost) all simulation [concepts]. In the future, the backend::chili backend will be replacing it, delivering better performance, modularity while also updating [concepts].

Storage

We distinguish between a full (de-)serialization of the simulation and exporting data from individual simulation steps.

Full (de)serialization

The first approach allows for a full reload of the total simulation which in principle enables methods such as starting/stopping the simulation and continuing from the last known point. This can also be used to avoid numerical solving problems by restarting from the last known good save point. However, the latter functionalities do not exist currently but are planned for future releases.

Exporting

This approach allows to take cells or domain objects and extract information to then save these in a given format. The methods needed to do this have not yet been developed and are part of future releases.

Dependencies

~20–32MB
~352K SLoC