MaRDI Open Interfaces¶
MaDRI Open Interfaces is a software package that aims to improve interoperability and reusability in Scientific Computing. It does so
by providing a set of interfaces that hide the implementation details of numerical packages, allowing users to switch between different implementations without slow and costly code modifications,
by doing data marshalling between different programming languages automatically, so that users of one language could use implementations written in another language.
For example, using Open Interfaces, computational scientists that prefer Python, can use implementations written in C or Julia without writing explicit bindings and easily switch between different implementations of numerical algorithms for the same problem type.
Contents:
- 1. Getting Started
- 2. How-To
- 3. Explanation
- 4. API Reference
- 5. Technical notes
- 5.1. 2023-09-05 Notes on DBus
- 5.2. 2023-09-08 Python buffer protocol
- 5.3. 2024-01-25 Comparison of performance between using
scipy.integrate.ode
versusivp
interface - 5.4. 2024-01-31 Profiling conversion between NumPy ndarrays and OIFArrayF64 data structures
- 5.5. 2024-02-08 Performance study of conversion to C types from Python types
- 5.6. 2024-02-09 Performance study of conversion of OIF arrays to NumPy arrays via C extension
- 5.7. 2024-02-23 Performance analysis with Python wrapper for C callback (C extension)
- 5.8. 2024-03-12 IVP CVODE performance study
- 5.9. Details
- 5.10. 2025-03-31 Folder Structure
- 5.11. How to release new version of Open Interfaces