FMMSolver Class Reference
The Fast Marching Method solver. More...
Public Member Functions  
FMMSolver (const Grid &g, Vect< real_t > &phi, bool ha=false)  
Constructor. More...  
~FMMSolver ()  
Destructor.  
void  solve () 
Execute the fast marching program.  
void  ExtendSpeed (Vect< real_t > &F) 
Extend speed by Sethian's method. More...  
real_t  check_error () 
Return the consistency error of the method. More...  
Detailed Description
The Fast Marching Method solver.
This class enables computing the signed distance function with respect to an interface. It works in 2D and 3D on a structured grid. The class is an interface for client. It points to FMM
Constructor & Destructor Documentation
Constructor.
 Parameters

[in] g Instance of class Grid defining the grid on which the distance is computed. [in] phi Vector containing the level set function at grid nodes. The vector entries are 0 on the interface (from which the distance is computed), positive on one side and negative on the other side. They must contain the signed distance on the nodes surrounding the interface. These values identify by linear interpolation the interface position. The vector entries can take any value on other grid nodes, provided they have the right sign. [in] ha true if high accuracy FMM is active. The high accuracy version is more accurate but requires more accurate values on the nodes neighbouring the interface.
Member Function Documentation
Extend speed by Sethian's method.
The method consists in calculating a speed F
such that its gradient is orthogonal to the gradient of the level set function
 Parameters

[in,out] F Speed function where on input the value of the function is meaningful on the interface. On output F
contains the extended speed
real_t check_error  (  ) 
Return the consistency error of the method.
Consistency is measured by computing the discrete value of the norm of the gradient of the signed distance and subtracting the obtained norm from 1. The absolute value of the result is returned.