with the method of characteristics. The method of characteristics is implemented efficiently with the aid of computational geometry and polyhedron scan conversion. The computed distance is accurate to within machine precision. The computational complexity of the algorithm is linear in both the number of grid points for which the distance is computed and the size of the mesh. Thus for many problems, it has the optimal computational complexity. Visit http://www.its.caltech.edu/~sean/ for publications on solving static Hamilton-Jacobi equations and in particular for computing the CPT.To use the standard interface, instantiate a State<3,T> or State<2,T> class. Its member functions provide the interface. Consult the class for this documentation.
I have compiled the library using g++ (GCC) 3.4.2. If you use a different compiler or version, the code may need modification.
The C interface is not in the cpt namespace. Instead the functions have a cpt_ prefix. For example: cpt_closest_point_transform_3(). The C interface wraps the standard interface. Functions in the fortran interface have a cpt_ prefix and a _f suffix. For example: cpt_closest_point_transform_3_f(). The fortran interface wraps the C interface.
Both the C and fortran interfaces instantiate a static instance of State<3,T> and State<2,T>. Thus you must make and link with the library. Use gnu "make" to build the cpt.a archive.
1.4.7