sparseSpatialSampling.geometry.pyramid_geometry module

Implements a class for using square pyramids (3D) as geometry object.

class sparseSpatialSampling.geometry.pyramid_geometry.PyramidGeometry3D(name, keep_inside, nodes, refine=False, min_refinement_level=None)[source]

Bases: GeometryObject

Implement a class for using square pyramids (3D) as geometry objects representing the numerical domain or geometries inside the domain.

Note

It is expected that four out of the five nodes form a planar plane representing the base of the pyramid. The order of the nodes doesn’t matter.

Parameters:
  • name (str) – Name of the geometry object.

  • keep_inside (bool) – If True, the points inside the object are kept; if False, they are masked out.

  • nodes (list[list[float]] | list[tuple[float]]) – List of five 3D coordinates, each representing one vertex of the pyramid.

  • refine (bool) – If True, the mesh around the geometry object is refined after \(S^3\) generates the mesh.

  • min_refinement_level (int | None) – Minimum refinement level for resolving the geometry. If None and refine=True, the geometry will be resolved with the maximum refinement level present at its surface after \(S^3\) has generated the grid.

property center: torch.Tensor

Return the center coordinates based on the main width of the pyramid.

Returns:

center coordinates of the pyramid.

Return type:

pt.Tensor

check_cell(cell_nodes, refine_geometry=False)[source]

Check if a cell is valid or invalid based on the specified settings.

Parameters:
  • cell_nodes (pt.Tensor) – Vertices of the cell to be checked.

  • refine_geometry (bool) – If False, cells are masked out while generating the grid. If True, checks whether a cell is located in the vicinity of the geometry surface to refine it subsequently. This parameter is provided by \(S^3\).

Returns:

True if the cell is invalid, False if the cell is valid.

Return type:

bool

property main_width: float

Return the width of the main dimension of the pyramid.

Returns:

Main width of the pyramid.

Return type:

float

property type: str

Return the name of the geometry object.

Returns:

Name of the geometry object.

Return type:

str