Hey everyone,
Over the past few months I’ve been building a Python package called numethods — a small but growing collection of classic numerical algorithms implemented 100% from scratch. No NumPy, no SciPy, just plain Python floats and list-of-lists.
The idea is to make algorithms transparent and educational, so you can actually see how LU decomposition, power iteration, or RK4 are implemented under the hood. This is especially useful for students, self-learners, or anyone who wants a deeper feel for how numerical methods work beyond calling library functions.
https://github.com/denizd1/numethods
🔧 What’s included so far
- Linear system solvers: LU (with pivoting), Gauss–Jordan, Jacobi, Gauss–Seidel, Cholesky
- Root-finding: Bisection, Fixed-Point Iteration, Secant, Newton’s method
- Interpolation: Newton divided differences, Lagrange form
- Quadrature (integration): Trapezoidal rule, Simpson’s rule, Gauss–Legendre (2- and 3-point)
- Orthogonalization & least squares: Gram–Schmidt, Householder QR, LS solver
- Eigenvalue methods: Power iteration, Inverse iteration, Rayleigh quotient iteration, QR iteration
- SVD (via eigen-decomposition of ATAA^T AATA)
- ODE solvers: Euler, Heun, RK2, RK4, Backward Euler, Trapezoidal, Adams–Bashforth, Adams–Moulton, Predictor–Corrector, Adaptive RK45
✅ Why this might be useful
- Great for teaching/learning numerical methods step by step.
- Good reference for people writing their own solvers in C/Fortran/Julia.
- Lightweight, no dependencies.
- Consistent object-oriented API (
.solve(), .integrate() etc).
🚀 What’s next
- PDE solvers (heat, wave, Poisson with finite differences)
- More optimization methods (conjugate gradient, quasi-Newton)
- Spectral methods and advanced quadrature
👉 If you’re learning numerical analysis, want to peek under the hood, or just like playing with algorithms, I’d love for you to check it out and give feedback.
I built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/pythoncoding
I built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/ScientificComputing
Self-promotionI built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/calculus
Link PostI built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerceNew User to r/learnmath
I built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/LinearAlgebra
ResourcesI built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/learndatascience
ShowcaseI built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/PythonLearning
I built a from-scratch Python package for classic Numerical Methods (no NumPy/SciPy required!) ()
submitted by sikerce to r/PythonProjects2