Let
\Omega \subset \mathbb{R}^d a bounded domain,
{\mathcal S} a surface triangulation of
\partial \Omega.
Let
D a large computational box, endowed with a simplicial mesh
{\mathcal T}.
A level set function associated to
\Omega is often generated as the signed distance function
d_\Omega to
\Omega, for its unit gradient property
\lvert \lvert \nabla d_\Omega(x) \lvert \lvert = 1 \mbox{ a.e } x \in \mathbb{R}^d,
which is of tremendous importance in numerical applications.
Pascal Frey and I developed an algorithm for generating
a piecewise linear approximation of
d_\Omega on
{\mathcal T},
which first creates any (possibly very irregular) level set function
\phi_0 associated to
\Omega, then solves the unsteady Eikonal equation :
\left\{ \begin{array}{ccc}
\frac{\partial \phi}{\partial t} + \mbox{sgn}(\phi_0)\left(\lvert\lvert \nabla \phi \lvert\lvert -1 \right) = 0 & \mbox{for} & (t,x) \in (0,\infty)\times \mathbb{R}^d\\
\phi(0,.) = \phi_0 &\mbox{for}& x \in \mathbb{R}^d
\end{array} \right. ,
relying on a numerical scheme based on some theoretical properties of this equation.
In a second time, we devised a process to adapt the computational mesh
{\mathcal T} into a new mesh
\widetilde{\mathcal T} which is amenable for an accurate computation of
d_\Omega,
and at the same time an accurate reconstruction of
\partial \Omega as the
0 isosurface
of the computed approximation to
d_\Omega (up to a user-defined tolerance).
|
|
|
|
|
Isosurfaces of the signed distance function to the Venus' (left), computed on an anisotropic adapted background mesh |
Let
\Omega(t) \subset \mathbb{R}^d an evolving domain along a velocity field
V(t,x). The motion of
\Omega(t) is translated in terms of an associated level set function
\phi(t,.) as the so-called
level set advection equation :
\left\{ \begin{array}{ccc}
\frac{\partial \phi}{\partial t}(t,x) + V(t,x).\nabla \phi(t,x) = 0 & \mbox{for} & (t,x) \in (0,T) \times \mathbb{R}^d\\
\phi(0,.) &\mbox{given on}&\mathbb{R}^d
\end{array} \right. .
From the
method of characteristics,
Cuc Bui,
Pascal Frey and I devised a simple numerical scheme to solve this equation on a simplicial mesh, in two and three space dimensions. As this scheme is low-order and dissipative, we also devised a mesh adaptation process to enhance its accuracy.
|
|
Cut on a three-dimensional mesh adapted with respect to both 0 level sets at two consecutive time steps |
Cécile Dobzrynski,
Pascal Frey and I developed local remeshing algorithms with the final aim to mesh the negative subdomain of a level set function supported on a computational mesh.
As a first step, we were led to investigate on surface remeshing : an initial surface triangulation
{\mathcal T} of a continuous ideal surface
{\mathcal S} is supplied, which is possibly ill-shaped, oversampled or undersampled. A local surface model is computed first, so as to infer a piece of
{\mathcal S} from a local configuration on
{\mathcal T}. Then, using carefully-driven local remeshing operators, such as edge splits, edge collapses, a new, well-shaped triangulation
\widetilde{\mathcal T} of
{\mathcal S} is obtained.
These ideas were next coupled with a subsequent short mathematical analysis to provide a model for anisotropic surface remeshing.
We then extended this strategy to deal with full
3d remeshing: from an initial tetrahedral mesh of a continuous ideal domain
\Omega \subset \mathbb{R}^3, of possibly poor mesh quality, a new well-shaped mesh is computed, which is a close geometric approximation of
\Omega. As a special case, and with rather few adaptations of the procedure, the
0 level set of some scalar function
\phi defined at the vertices of the original mesh
{\mathcal T} can be meshed, by first discretizing it explicitly into
{\mathcal T} using a simple pattern-based procedure, then remeshing the resulting ill-shaped mesh into a fine one.
|
|
|
|
Remeshing of a Three-dimensional model model. (tpp) Initial mesh {\mathcal T}; (bottom) final result \widetilde{\mathcal T}. |