class for the fast marching algorithm on 3-D uniform grids More...
Public Member Functions | |
FastMarching3DG () | |
Default Constructor. More... | |
FastMarching3DG (const Grid &g, Vect< real_t > &T) | |
Constructor using grid data. More... | |
FastMarching3DG (const Grid &g, Vect< real_t > &T, Vect< real_t > &F) | |
Constructor. More... | |
~FastMarching3DG () | |
Destructor. | |
void | set (const Grid &g, Vect< real_t > &T) |
Define grid and solution vector. More... | |
void | set (const Grid &g, Vect< real_t > &T, Vect< real_t > &F) |
Define grid, solution vector and prppagation speed. More... | |
int | run () |
Execute Fast Marching Procedure. More... | |
real_t | getResidual () |
Check consistency by computing the discrete residual. More... | |
Public Member Functions inherited from Equa | |
Equa () | |
Default constructor. | |
virtual | ~Equa () |
Destructor. | |
void | setMesh (Mesh &m) |
Define mesh and renumber DOFs after removing imposed ones. | |
Mesh & | getMesh () const |
Return reference to Mesh instance. More... | |
LinearSolver & | getLinearSolver () |
Return reference to linear solver instance. | |
Matrix< real_t > * | getMatrix () const |
Return pointer to matrix. | |
void | setSolver (Iteration ls, Preconditioner pc=IDENT_PREC) |
Choose solver for the linear system. More... | |
void | setMatrixType (int t) |
Choose type of matrix. More... | |
int | solveLinearSystem (Matrix< real_t > *A, Vect< real_t > &b, Vect< real_t > &x) |
Solve the linear system with given matrix and right-hand side. More... | |
int | solveLinearSystem (Vect< real_t > &b, Vect< real_t > &x) |
Solve the linear system with given right-hand side. More... | |
void | LinearSystemInfo () |
Print info on linear system solver. | |
class for the fast marching algorithm on 3-D uniform grids
This class implements the Fast Marching method to solve the eikonal equation in a 3-D uniform grid. In other words, the class solves the partial differential equation |∇T|F = 1 with T = 0 on the interface, where F
is the velocity
FastMarching3DG | ( | ) |
Default Constructor.
Initializes to default value grid data
FastMarching3DG | ( | const Grid & | g, |
Vect< real_t > & | T | ||
) |
Constructor using grid data.
Constructor using Grid instance
[in] | g | Instance of class Grid |
[in] | T | Vector containing the on input an initialization of the distance function and once the function run is invoked the distance at grid nodes. The initialization vector must use the following rules:
|
Constructor.
Constructor using Grid instance and propagation speed
[in] | g | Instance of class Grid |
[in] | T | Vector containing the on input an initialization of the distance function and once the function run is invoked the distance at grid nodes. The initialization vector must use the following rules:
|
[in] | F | Vector containing propagation speed at grid nodes |
real_t getResidual | ( | ) |
Check consistency by computing the discrete residual.
This function returns residual error (||∇u|2|F|2-1|)
int run | ( | ) |
Execute Fast Marching Procedure.
Once this function is invoked, the vector T
in the constructor or in the member function set
contains the solution
Define grid and solution vector.
This function is to be used if the default constructor has been used
[in] | g | Instance of class Grid |
[in] | T | Vector containing the on input an initialization of the distance function and once the function run is invoked the distance at grid nodes. The initialization vector must use the following rules:
|
Define grid, solution vector and prppagation speed.
This function is to be used if the default constructor has been used
[in] | g | Instance of class Grid |
[in] | T | Vector containing the on input an initialization of the distance function and once the function run is invoked the distance at grid nodes. The initialization vector must use the following rules:
|
[in] | F | Vector containing propagation speed at grid nodes |