Geometry#
Engineering geometries must facilitate:
Accurate physical representation
Element discretization and parallel computation
Region segmentation for conditions & couplings
Spatial transformations and instancing
Introduction#
Structured vs Unstructured#
Unstructured: Traditional declarative meshes storing nodal positions and topology as discrete elements.
Structured: Procedural grids/trees computing positions and topology on-demand. Used for SDF and background spatial computations.
Implicit Shapes#
Level sets express shapes without discrete topology. Fields map coordinates x to scalar values φ(x). The implicit boundary is defined where φ(x) = C (default C=0).
Signed Distance Field (SDF)#
When |∇φ(x)| = 1, the field is a distance field. With C=0, interior values are negative, exterior positive, satisfying SDF criteria.
Analytic vs Sampled#
Analytic: Primitive SDFs combined via operators for unlimited resolution. Requires gradient error handling.
Sampled: Discrete SDF on background grids (1M–1B nodes) enabling constant-time parallel sampling. Exact distances solved for narrow-band shells; winding numbers determine sign robustly.
Computable Topology#
Physics simulation requires shape discretization into computable elements. Nodes are points in space-time connected by elements to facilitate information flow.
Element Types#
Intrinsic attributes:
type(NODE1,LINE2,TRI3,QUAD4,TET4,HEX8, …)id(0default, positive for users)indices(defining vertices)
Extrinsic functions: center, domain, distance, contains, decompose, quality, neighbors
Nodes (0D)#
Supported:
NODE1Functions:
volume(based on median dual fragment)
Edges (1D)#
Supported:
LINE2,DUAL2Functions:
length,area(interface vector forDUAL2)
Faces (2D)#
Supported:
TRI3,QUAD4Functions:
area(normal vector)
Cells (3D)#
Supported:
TET4,HEX8Functions:
volume(scalar)
Median Duals#
The primary mesh is what users see/save. Downstream numerics may interpret it differently:
FEM: Uses primary mesh directly with Gauss-Legendre quadrature.
FVM: Interprets primary mesh as Voronoi inverse, yielding median-dual control volumes for flux accuracy.
Regions of Interest#
Regions assign IDs to element subsets for boundary conditions and coupling.
Dimension |
Region Type |
Element Type |
Visibility Default |
|---|---|---|---|
0D |
Groups |
Nodes |
|
1D |
Loops |
Edges |
|
2D |
Surfaces |
Faces |
|
3D |
Volumes |
Cells |
|
Elements and regions are complementary: each element has an id, and region id corresponds to elements with matching id.