#include <fastmarchingfirstorderengquistosher.hxx>
Inheritance diagram for Multivac::CFastMarchingFirstOrderEngquistOsher< T >:
Public Types | |
typedef CFastMarchingNode< T > | heap_node_value_type |
typedef CFastMarchingNode< T > & | heap_node_reference |
typedef const CFastMarchingNode< T > & | heap_node_const_reference |
typedef CFastMarchingNode< T > * | heap_node_pointer |
typedef const CFastMarchingNode< T > * | heap_node_const_pointer |
Public Member Functions | |
CFastMarchingFirstOrderEngquistOsher () throw () | |
Default constructor. | |
CFastMarchingFirstOrderEngquistOsher (T TMax_) throw () | |
Main constructor. | |
~CFastMarchingFirstOrderEngquistOsher () throw () | |
Destructor. | |
virtual bool | IsNarrowBand () const |
Should this updater be used for the narrow band level set method? | |
virtual bool | IsFastMarching () const |
Should this updater be used for the fast marching method? | |
virtual void | Init (CMesh< T > &Mesh, CLevelSet< T > &Phi) |
Inits the updater. | |
virtual void | UpdateLevelSet (T Delta_t, CMesh< T > &Mesh, CSpeedFunction< T > &F, CLevelSet< T > &Phi, T CurrentTime) |
Updates the level set function Phi. | |
virtual bool | KeepOnWorking () const |
Should computations be continued? |
|
Main constructor.
|
|
Inits the updater. The matrix 'PointersToNodes' is allocated and filled with -1. If PointersToNodes(i, j) is -1, the grid point (i, j) is not in trial points.
Implements Multivac::CUpdater< T >. |
|
Should this updater be used for the fast marching method?
Implements Multivac::CUpdater< T >. |
|
Should this updater be used for the narrow band level set method?
Implements Multivac::CUpdater< T >. |
|
Should computations be continued? If 'KeepOnWorking' returns 'true', then computations should be continued. Computations will be continued if there are still trial points and if the current smallest arrival time is strictly less than TMax (majorant of arrival times).
Reimplemented from Multivac::CUpdater< T >. |
|
Updates the level set function Phi. This function updates the level set function Phi. The trial point with the smallest time arrival time is removed from trial points set (and becomes a "known" point). Then, neighbors arrival times are updated (if needed). Updates are performed with the first order Engquist-Osher scheme.
Implements Multivac::CUpdater< T >. |