pinnx.geometry module#

This module provides geometric domains for defining the spatial and temporal extent of PDE problems. Geometries support point sampling, boundary identification, and boolean operations for complex shapes.

Core Interfaces#

Base classes and key geometric constructs.

AbstractGeometry: Base class for all geometries.

Geometry: Standard geometry interface.

GeometryXTime: Combines spatial geometry with time domain for time-dependent problems.

TimeDomain: Represents the temporal dimension.

DictPointGeometry: Geometry that works with dictionary-based points with physical units.

AbstractGeometry

Geometry

Base class for defining geometries.

GeometryXTime

TimeDomain

DictPointGeometry

Convert a geometry to a dictionary geometry.

Boolean Operations#

Constructive solid geometry (CSG) operations for combining geometries.

CSGUnion: Union of two geometries (A ∪ B).

CSGIntersection: Intersection of two geometries (A ∩ B).

CSGDifference: Difference of two geometries (A B).

CSGUnion

Construct an object by CSG Union.

CSGIntersection

Construct an object by CSG Intersection.

CSGDifference

Construct an object by CSG Difference.

Canonical Domains#

Standard geometric shapes in 1D, 2D, 3D, and N-D.

1D: Interval

2D: Rectangle, Triangle, Polygon, Disk, Ellipse, StarShaped

3D: Cuboid, Sphere

N-D: Hypercube, Hypersphere

Interval

Rectangle

Triangle

Triangle.

Polygon

Simple polygon.

Disk

Ellipse

Ellipse.

StarShaped

Star-shaped 2d domain, i.e., a geometry whose boundary is parametrized in polar coordinates as:

Cuboid

Sphere

Hypercube

Hypersphere

Point-Based Geometry#

Geometries defined by discrete point sets.

PointCloud

A geometry represented by a point cloud, i.e., a set of points in space.