[x] Create reference mesh on a sphere via Gmsh with nodes in physical space. Compute reference coordinates (theta, phi) and map those through the Bubble transformation to obtain a discretization of the 2d manifold itself.
[x] Introduce clipping based on projection ( non linear optimization with nonlinear constraints). Possible use mystic package for penalty based free optimization to incoorperate the constraint.
[ ] Introduce a framework that allows to decide how the triangles are "extended" or "clipped" to preserve high quality triangulation. This might based on a simple compare the choices of triangle that would arise via multiple projections of its vertices and compare those (angle based).
[ ] In the clipping plane separate lineloops need to be indified. Build a vertex (index) to connected line (hashmap : int -> list) Based on the idea to not allow lines with more than 2 neighbours, independend line loops can be detected.
[x] A bubble should be placed within a Box. For this introduce a Box class, possible name : BoxWithBubbles. This class should handle box intersections with bubbles.
[x] Build the actual geo / msh / xml file to have a bubble within a box.
[ ] Develop bubble subclasses, that allow for more complex structures.
[x] Create reference mesh on a sphere via Gmsh with nodes in physical space. Compute reference coordinates (theta, phi) and map those through the Bubble transformation to obtain a discretization of the 2d manifold itself.
[x] Introduce clipping based on projection ( non linear optimization with nonlinear constraints). Possible use mystic package for penalty based free optimization to incoorperate the constraint.
[ ] Introduce a framework that allows to decide how the triangles are "extended" or "clipped" to preserve high quality triangulation. This might based on a simple compare the choices of triangle that would arise via multiple projections of its vertices and compare those (angle based).
[ ] In the clipping plane separate lineloops need to be indified. Build a vertex (index) to connected line (hashmap : int -> list) Based on the idea to not allow lines with more than 2 neighbours, independend line loops can be detected.
[x] A bubble should be placed within a Box. For this introduce a Box class, possible name : BoxWithBubbles. This class should handle box intersections with bubbles.
[x] Build the actual geo / msh / xml file to have a bubble within a box.
[ ] Develop bubble subclasses, that allow for more complex structures.
[ ] Test periodicity of trafo via scatter plot