Skip to main content

A Python package for solving ordinary differential equations on the GPU using OpenCL

Project description

clODE - an OpenCL based tool for solving ordinary differential equations (ODEs)

Python PyPI version OpenSSF Scorecard Windows Mac Linux

Documentation
Documentation

clODE is an efficient computational tool designed for parallel solving of ordinary differential equation (ODE) ensembles using OpenCL. It lets users define their ODE system and the ensemble of parameter sets and initial conditions in Python. By leveraging OpenCL, significant speedups can be obtained for this inherently parallel problem on any CPU, GPU, or other device with OpenCL support. Two primary modes of simulation are supported:

  • FeatureSimulator computes features of ODE trajectories, such as oscillation period, on-the-fly, without storing the trajectory data, facilitating extensive parameter analyses with considerable computational speed improvements.
  • TrajectorySimulator stores the full trajectory data.

clODE offers flexibility in simulator deployment across different hardware, allowing, for example, the FeatureSimulator to operate on a GPU while the TrajectorySimulator runs on a CPU.

Developed in C++ and OpenCL, clODE is accessible for direct use in C++ applications or through a Python interface. The library compiles with bazel and bazelisk, and works on Linux, Windows, and MacOS platforms.

Installation

See installation for instructions on how to install CLODE.

Getting Started

See Getting Started for an example of clODE usage.

Source

The source code is available on GitHub.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clode-0.7.1.tar.gz (469.6 kB view hashes)

Uploaded Source

Built Distributions

clode-0.7.1-cp312-cp312-win_amd64.whl (525.0 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

clode-0.7.1-cp312-cp312-macosx_10_9_universal2.whl (607.9 kB view hashes)

Uploaded CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)

clode-0.7.1-cp311-cp311-win_amd64.whl (524.5 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

clode-0.7.1-cp311-cp311-macosx_10_9_universal2.whl (604.6 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

clode-0.7.1-cp310-cp310-win_amd64.whl (524.6 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

clode-0.7.1-cp310-cp310-macosx_11_0_x86_64.whl (592.5 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ x86-64

clode-0.7.1-cp39-cp39-win_amd64.whl (524.6 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

clode-0.7.1-cp39-cp39-macosx_11_0_x86_64.whl (592.7 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ x86-64

clode-0.7.1-cp38-cp38-win_amd64.whl (524.5 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

clode-0.7.1-cp38-cp38-macosx_11_0_x86_64.whl (592.3 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page