warp.fem.space.shape.TriangleShapeFunction#

class warp.fem.space.shape.TriangleShapeFunction[source]#

Base class for shape functions defined on triangular elements.

__init__()#

Methods

__init__()

make_element_inner_weight()

Create a device function returning the value of the shape function associated to a given node at given coordinates.

make_element_inner_weight_gradient()

Create a device function returning the gradient of the shape function associated to a given node at given coordinates.

make_node_coords_in_element()

Create a device function returning the coordinates of each node.

make_node_quadrature_weight()

Create a device function returning the weight of each node when used as a quadrature point over the element.

make_trace_node_quadrature_weight()

Create a device function returning the weight of each node when used as a quadrature point over the element boundary.

node_type_and_index(node_index_in_elt)

Attributes

EDGE

INTERIOR

VERTEX

name

Unique name encoding all parameters defining the shape function

value

Value type of the shape function.

VERTEX_NODE_COUNT

Number of shape function nodes per vertex.

EDGE_NODE_COUNT

Number of shape function nodes per triangle edge (excluding vertex nodes).

INTERIOR_NODE_COUNT

Number of shape function nodes per triangle (excluding edge and vertex nodes).

ORDER

Maximum degree of the polynomials used to define the shape function.

NODES_PER_ELEMENT

Number of shape function nodes.

VERTEX = 0#
EDGE = 1#
INTERIOR = 2#
VERTEX_NODE_COUNT: int#

Number of shape function nodes per vertex.

EDGE_NODE_COUNT: int#

Number of shape function nodes per triangle edge (excluding vertex nodes).

INTERIOR_NODE_COUNT: int#

Number of shape function nodes per triangle (excluding edge and vertex nodes).

static node_type_and_index(node_index_in_elt)[source]#
Parameters:

node_index_in_elt (int)