Adaptive Grid Discretizations
Adaptive Grid Discretizations using Lattice Basis Reduction (AGD-LBR)
A set of tools for discretizing anisotropic PDEs on cartesian grids
This repository contains
- the agd library (Adaptive Grid Discretizations), written in Python® and cuda®
- a series of jupyter notebooks in the Python® language (online static and interactive view), reproducing my research in Anisotropic PDE discretizations and their applications.
- a basic documentation, generated with pdoc.
The AGD library
The recommended ways to install are
conda install agd -c agd-lbr
alternatively (required for using the GPU eikonal solver)
pip install agd
You may visualize the notebooks online using nbviewer, or experimentally run and modify the notebooks online using GoogleColab. You may need to turn on GPU acceleration in GoogleColab (typical error: cannot import cupy) : Modify->Notebook parameters->GPU.
The notebooks are intended as documentation and testing for the adg library. They encompass:
- Anisotropic fast marching methods, for shortest path computation.
- Non-divergence form PDEs, including non-linear PDEs such as Monge-Ampere.
- Divergence form anisotropic PDEs, often encountered in image processing.
- Algorithmic tools, related with lattice basis reduction methods, and automatic differentiation.
conda env create --file agd-hfm.yaml conda activate agd-hfm
In order to open the book summary, type in a terminal:
jupyter notebook Summary.ipynb
Then use the hyperlinks to navigate within the notebooks.
Recent versions of Matlab are able to call the Python interpreter, and thus to use the agd library. See Notebooks_FMM/Matlab for examples featuring the CPU and GPU eikonal solvers.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.