Skip to content

A collection of python implementations using SWIG, Instant, F2PY... Optimization like Least Squares Levenberg-Marquardt. Boundary Value problem solvers. Integration Simpson/Trapezoidal. Interpolation like Cubic spline. Tridiagonal/pentadiagonal system of equations solver. Linear algebra like Matrix inversion (Gauss-Jordan) and much more

License

danielrioslinares/python-library

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

python-library

This is a library of Python 3 implementations made by myself in order to practise numerical algorithms, this modules are intended to show a good approach to the problem as simple as possible without fancies detections (in general). There are three different possible implementations: Standalone Python 3 denoted by (PYT), Python 3 C API (CPY) and Python-Fortran wrapper (F90).

  • arr_XiYo : CPY only, a C API wrapper for Python 3 that allows to parse PyList to C arrays, do the treatment and return. Templates. It consists on 4 modules depending of number of inputs and outputs
    • arr_siso : SISO, Single Input Single Output. Only one list as input, only one list as output.
    • arr_simo : SIMO, Single Input Multiple Output. Only one list as input, more than one lists as output.
    • arr_miso : MISO, Multiple Input Single Output. More than one lists as input, only one list as output.
    • arr_mimo : MIMO, Multiple Input Multiple Output. More than one lists as input, more than one lists as output.
  • intsm_ue : Simpson integration method for a non-uniform mesh of 1D set of data X,Y.
  • inttp_ue : Trapezoidal integration method for a non-uniform mesh of 1D set of data X,Y.
  • mxinv_gj : Matrix inversion using Gauss-Jordan pivoting algorithm. Pass the square matrix A as argument to return A⁻¹.
  • rtf1d_mu : Root Finding 1D class storing f(x) function to root and optionally dfdx(x) for Newton-Raphson, then calling the different methods (bisection, secant, regulafalsi, ridders, brent, newtonraphson) returns the x0 which f(x0)=0.
  • slesv_tr : system of linear equations solver for tridiagonal matrix of coefficients.
  • slesv_pt : system of linear equations solver for pentadiagonal matrix of coefficients.
  • inpsp_cX : Interpolation with cubic splines
  • bvp2o1d1euei_fd1 : BVP (Boundary Value Problem) solver for second order differential equations of the form y'' = f(y,x) (no y' term).
  • bvp2o1d1euec_diffusion : BVP (Boundary Value Problem) solver for second order differential equations - d/dx ( D(x) * dy/dx ) + K(x) y(x) = q(x), diffusion equation.

About

A collection of python implementations using SWIG, Instant, F2PY... Optimization like Least Squares Levenberg-Marquardt. Boundary Value problem solvers. Integration Simpson/Trapezoidal. Interpolation like Cubic spline. Tridiagonal/pentadiagonal system of equations solver. Linear algebra like Matrix inversion (Gauss-Jordan) and much more

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published