Hamilton-Jacobi solver on unstructured triangular grids
Implementation based on:
"Finite-Element Discretization Of Static Hamilton-Jacobi Equations Based On A Local Variational Principle"
by F. Bornemann and C. Rasch
Comments:
1. There is no restriction on the type of triangulation, i.e. it does not need to be acute. But the method will require more than one sweep of the mesh (because of lack of causality). Howver, only a few iterations should be necessary to achieve convergence.
2. Two versions of the code are implemented. One is pure MATLAB and the other uses a MEX function. The MEX version is faster by about a factor of 100 for the example that I include.
3. The MEX version allows for a variable distance metric. See the test code for a demonstration.
4. The MEX version uses a FIFO buffer to implement a non-linear adaptive Gauss-Seidel iteration (see the paper). FIFO buffers cannot be easily implemented in pure MATLAB.
5. The MEX version C++ code uses Object-Oriented methods.
6. I put in a lot of error checking to make the code robust to user-error. However, I make no claim that this software is completely correct. Use it at your own risk!
Citation pour cette source
Shawn Walker (2024). Hamilton-Jacobi solver on unstructured triangular grids (https://www.mathworks.com/matlabcentral/fileexchange/24827-hamilton-jacobi-solver-on-unstructured-triangular-grids), MATLAB Central File Exchange. Extrait(e) le .
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxCatégories
- Mathematics and Optimization > Partial Differential Equation Toolbox > Domain-Specific Modeling > Structural Mechanics >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
HJB_Solver_Package/
HJB_Solver_Package/@SolveEikonal/
HJB_Solver_Package/@SolveEikonalmex/
Version | Publié le | Notes de version | |
---|---|---|---|
1.2.0.0 | This is now part of the FELICITY package, which can also be downloaded on the Central File Exchange. |
||
1.1.0.0 | minor portability update. |
||
1.0.0.0 |