Skip to main content

Tool that solves ODE's numerically. Written in Python.

Project description

Numerical ODE Solver

This project is a Python implementation for solving ordinary differential equations (ODEs) numerically. The script allows users to choose between two methods: Euler's Method and Runge-Kutta 4th Order Method (RK4), providing a visual representation of the solution (optional). Note: Euler's Method is more inaccurate than RK4.

Requirements

Python version >= 3.8

Ensure the following Python libraries are installed:

Install it using pip:

pip install numODEsolver

Example

import numODEsolver as ns
import matplotlib.pyplot as plt #optional for plot

solver = ns.Solver()
f = solver.get_function("y") 
values = solver.rk4_1order(f,x0=0,y0=1,n=10000,bound=10.1)
n = solver.get_value(values,val=10,dec=5)
print(n)
plt.plot(results[:,0],results[:,1])
plt.show()
from numODEsolver import solver

solver = ns.Solver()
f = solver.get_function("y'+y") #y' = for 1st derivative. The ode would be y'' = y'+y
x,y,dy = solver.euler_2order(f,x0=0,y0=1,dy0=1,n=10000,bound=5)
n = solver.get_value(values,val=3,dec=2)
print(n)

Version History

  • 8.12.2024 - v0.1 -> only 1st order ODE's are solvable, more features coming soon
  • 15.12.2024 - v0.2 -> removed plot function
  • 26.1.2025 - v0.3 -> included 2nd order methods, see more on GitHub
  • 18.03.2025 - v2.0 -> more secure function handeling, more stable numerical methods.

For more documentation take a look at the source code on my GitHub.

You can modify the script to add more methods, or change visualization settings.

Contributions and suggestions are welcome!

Lukas

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

numodesolver-2.0.0.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

numodesolver-2.0.0-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file numodesolver-2.0.0.tar.gz.

File metadata

  • Download URL: numodesolver-2.0.0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for numodesolver-2.0.0.tar.gz
Algorithm Hash digest
SHA256 f7ae18540bd56622399f6c7706c32ee948ad0fad05c8d662b4c889ed333d6af6
MD5 28a3856b965ada21f91eeb6b65ab3723
BLAKE2b-256 3e5a624da5c60e0c6b65c559d17cc5d321b0f657a4df243e19c7ae930d84cb2c

See more details on using hashes here.

File details

Details for the file numodesolver-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: numodesolver-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for numodesolver-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3c9e5feaa232db37dddea1eb0b2882255fbe5d3a13d02a42e4a03450aed26fb2
MD5 c9e50e8254a32361db3fb5b3474bc3e6
BLAKE2b-256 da7ee9880dcd174d6362e1a7edb262b8dc5ce5c2bbe3c8f2da5293adcb7b4c46

See more details on using hashes here.

Supported by

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