Numerical Bric-a-Brac

Collections of numerical techniques with Python and standard computational packages (Numpy, SciPy, Numba, Matplotlib ...).

Implicit Solver

Folder implicit_solver

Description Implicit Solver.

Explore code generation of vectorized code for physics solver.

  • Time Integrator : Baraff and Witkin's
  • Spring / Area / Bending / Collision Constraint
  • Early code generator for vectorized code
Implicit Solver Beam

Path Tracing

Folder path_tracing

Description Path Tracer with Python and Numba

  • Multithreading with Memory pool per-thread
Monte Carlo Path Tracer


Examples of convolution neural network architectures.

Convolution neural network with Keras
ResNet Residual neural network with Keras

Generative Network

Examples of generative neural network architectures.

Autoencoder - ...
Variational autoencoder - ...

Stencil Codes

Evaluate stencil codes with Numba (CPU/GPU)

Folder stencil_codes

Poisson Solver - ...
Laplace Inpainting - ...
Conway's game of life - ...
Convolution matrix - ...

Dimensionality Reduction

Optimal transformation with PCA - ...
Image compression with SVD ...
Eigenface ...

Dynamic Programming

Dynamic Programming Examples ...

Graph Theory

Graph matrices ..
Graph colouring - ..
Dijkstra's algorithm ..
Spectral graph theory - WIP ..

Interpolation and Regression

Interpolation and regression algorithms

Folder interpolation_regression

RBF Interpolation - ...
Polynomial Regression - ...

Machine Learning Study

Supervised Learning
Simple linear regression ...
Polynomial regression ...
Logistic regression ...
Multiclass Classification ...
Support Vector Machine ...
Unsupervised Learning
K-means clustering ...

Deep Deformation

WIP of the Fast and deep deformation approximations - I will find time to finish it, no sure when ...

Folder deep_deformation


Multivariable Optimizations

Implementation of Gradient Descent and Newton's methods

File optimizations

  • Optimizer : Gradient Descent, Newton-Raphson, Quasi-Newton (BFGS)
  • Line Search : Backtracking
Gradient Descent

Skeletal Subspace Deformation

Skeletal Subspace Deformation

Folder skinning

Skeletal Subspace Deformation

Inverse Kinematics

Implementation of inverse kinematics using pseudo-inverse of a jacobian matrix


  • Pseudo-Inverse with regularization term (Damped Least Squares method)
Inverse Kinematics

1D Time Integration

Single one-dimensional damped spring to evaluate explicit integrators and compare with analytic solution.


Includes Explicit Euler, RK2, RK4, Semi-Implicit Euler (Euler-Cromer), Leap Frog

Explicit Integrators

Markov Chain - Authors names generator

Generate authors names by using Markov Chain.
It uses the Collection of Poems from Poetry Foundation to generate probability matrix