Version:

salvus.mesh.algorithms.unstructured_mesh.extrude

salvus.mesh.algorithms.unstructured_mesh.extrude salvus mesh algorithms unstructured_mesh extrude
Mesh extrusion algorithms.

Functions

extrude()

Extrude a 2D mesh to create a 3D mesh.
Each extruded 2D mesh can be offset, scaled and rotated copies of the original.
SIGNATURE
def extrude(
    mesh: UnstructuredMesh,
    offsets: npt.NDArray,
    scale: npt.NDArray | None = None,
    rotation: npt.NDArray | None = None,
    center: npt.NDArray | None = None,
) -> UnstructuredMesh: ...
ARGUMENTS
Required
mesh
Type:UnstructuredMesh
Description:
The mesh to extrude.
Required
offsets
Type:npt.NDArray
Description:
offsets, either in the new dimension or all 3 dimension, shape is (nextrude, ) or (nextrude, 3)
Optional
scale
Type:npt.NDArray | None
Default value:None
Description:
scaling factor for each extruded copy, relative to the center, shape is (nextrude,)
Optional
rotation
Type:npt.NDArray | None
Default value:None
Description:
rotation of each extruded copy in terms of euler angles relative to the center, shape is (nextrude, 3)
Optional
center
Type:npt.NDArray | None
Default value:None
Description:
center coordinates for rotation, defaults to the center of mass of the original 2D mesh, shape is (3,)
RETURNS
Return type: UnstructuredMesh

extrude_side_set()

Extrude a side set to add new elements to the mesh.
SIGNATURE
def extrude_side_set(
    mesh: UnstructuredMesh,
    side_set: str,
    offsets: npt.NDArray,
    scale: npt.NDArray | None = None,
    rotation: npt.NDArray | None = None,
    center: npt.NDArray | None = None,
) -> UnstructuredMesh: ...
ARGUMENTS
Required
mesh
Type:UnstructuredMesh
Description:
The mesh to extrude.
Required
side_set
Type:str
Description:
name of the side set
Required
offsets
Type:npt.NDArray
Description:
offsets, either in the new dimension or all 3 dimension, shape is (nextrude, ) or (nextrude, 3)
Optional
scale
Type:npt.NDArray | None
Default value:None
Description:
scaling factor for each extruded copy, relative to the center, shape is (nextrude,)
Optional
rotation
Type:npt.NDArray | None
Default value:None
Description:
rotation of each extruded copy in terms of euler angles relative to the center, shape is (nextrude, 3)
Optional
center
Type:npt.NDArray | None
Default value:None
Description:
center coordinates for rotation, defaults to the center of mass of the original 2D mesh, shape is (3,)
RETURNS
Return type: UnstructuredMesh

extrude_side_set_2D()

Extrude a side set of a 2D mesh and append new elements.
Currently, the functionality is limited to cartesian meshes with side sets that are aligned with the coordinate axis.
SIGNATURE
def extrude_side_set_2D(
    mesh: UnstructuredMesh,
    side_set: str,
    offsets: npt.NDArray,
    direction: str | None = None,
) -> UnstructuredMesh: ...
ARGUMENTS
Required
mesh
Type:UnstructuredMesh
Description:
The mesh to extrude.
Required
side_set
Type:str
Description:
name of the side set
Required
offsets
Type:npt.NDArray
Description:
offsets, either in the new dimension or all 3 dimension, shape is (nextrude, ) or (nextrude, 3)
Optional
direction
Type:str | None
Default value:None
Description:
Optional axis of extrusion if offsets is a one-dimensional array. Must be x or y.
RETURNS
Return type: UnstructuredMesh
PAGE CONTENTS