Eikonal
Distance function computation using the Eikonal equation.
Defined in Rodin/Distance/Eikonal.h
template < class FES, class Data> class Eikonal;
| Template parameters | |
|---|---|
| FES | Finite element space type |
| Data | Data storage type for the solution |
This class solves the Eikonal equation to compute distance functions on meshes using the Fast Marching Method. It can optionally compute signed distance functions by specifying interior regions.
Mathematical Background
The Eikonal equation describes the propagation of wavefronts with unit speed, which is equivalent to computing distances. The Fast Marching Method solves this equation efficiently on unstructured meshes.
Usage Example
P1 fes(mesh); GridFunction u(fes); Eikonal eikonal(u); eikonal.setInterface(interfaceAttr) .setInterior(interiorAttr) .solve() .sign();
Inherits from
| Base class | Responsibility |
|---|---|
Base<Eikonal<FES, Data>>publicFull typeBase< Eikonal< FES, Data > > | Base class for distance function computation models using CRTP. |
Inherited interface
| Declared in | Members |
|---|---|
Base |
Public types
-
using SolutionType = Variational::
GridFunction<FES, Data> - Solution type: grid function containing the distance values.
Constructors, destructors, conversion operators
- Eikonal(SolutionType& u)
- Constructs an Eikonal distance solver.
Public functions
Function documentation
Eikonal(SolutionType& u)
Constructs an Eikonal distance solver.
| Parameters | |
|---|---|
| u in/out | Grid function to store the computed distance values |