The shortest path algorithm on the surface of OpenFOAM meshes.
Note: the code from the geodesic subdirectory is a clone of the geodesic project (the downloadable zip file geodesic_cpp_03_02_2008.zip
). This project is licensend under the MIT License. See geodesic/readme.txt for further information.
The code was developed using OpenFOAM-2.3.x. It might or might not work with newer versions of OpenFOAM (please test and let me know).
- Download source
git clone https://github.com/fospald/fastMarchingFoam.git
- Run Allwmake, which uses the wmake tool of OpenFOAM
sh Allwmake
This should build the fastMrchingFoam
solver.
The demo consists of a simple 1x1x2 box. The points and distance field names are specified in constant/fastMarchingDict
.
For this demo a distance filed d
is generated, which gives the shortest distance to the point (0.0 0.2 0.5)
. The maxDist
parameter can be used perform the distance calculation only up to distance maxDist
(in order to save computation time). Larger distances are then set to maxDist
.
cd demo
sh Allrun
This should run the solver, convert the results to VTK and open them in ParaView.
Felix Ospald gratefully acknowledges financial support by the German Research Foundation (DFG), Federal Cluster of Excellence EXC 1075 "MERGE Technologies for Multifunctional Lightweight Structures". Many thanks to Matti Schneider for his helpful introduction to FFT-based homogenization and ideas regarding the ACG distribution.