sparseSpatialSampling.geometry.triangle_geometry module

Implements a class for using triangles (2D) as geometry object.

class sparseSpatialSampling.geometry.triangle_geometry.TriangleGeometry(name, keep_inside, points, refine=False, min_refinement_level=None)[source]

Bases: GeometryObject

Implement a class for using triangles (2D) as geometry objects representing the numerical domain or geometries inside the domain.

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.

  • points (list[tuple | list | pt.Tensor | np.ndarray] | pt.Tensor) – List containing the three points of the triangle. Each point is defined by two coordinates.

  • 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 triangle.

Returns:

center coordinates of the triangle.

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

check_triangle(vertices)[source]

Check if the given vertices are inside this triangle. This method provides access to the _mask_triangle method from other classes.

Parameters:

vertices (pt.Tensor) – Tensor of vertices, where each column corresponds to a coordinate.

Returns:

Boolean mask that is True for every vertex inside the triangle or on its surface.

Return type:

pt.Tensor

property main_width: float

Return the width of the main dimension of the triangle.

Returns:

Main width of the triangle.

Return type:

float

property type: str

Return the name of the geometry object.

Returns:

Name of the geometry object.

Return type:

str