warp.fem.ShapeFunction#

class warp.fem.ShapeFunction[source]#

Interface class for defining scalar-valued shape functions over a single element.

__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.

Attributes

name

Unique name encoding all parameters defining the shape function

value

Value type of the shape function.

ORDER

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

NODES_PER_ELEMENT

Number of shape function nodes.

ORDER: int#

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

NODES_PER_ELEMENT: int#

Number of shape function nodes.

class Value(*values)[source]#
Scalar = 0#

Scalar-valued shape function.

CovariantVector = 1#

Covariant vector-valued shape function.

ContravariantVector = 2#

Contravariant vector-valued shape function.

value: Value = 0#

Value type of the shape function.

property name: str[source]#

Unique name encoding all parameters defining the shape function

make_node_coords_in_element()[source]#

Create a device function returning the coordinates of each node.

make_node_quadrature_weight()[source]#

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

make_trace_node_quadrature_weight()[source]#

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

make_element_inner_weight()[source]#

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

make_element_inner_weight_gradient()[source]#

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