warp.fem.PointBasisSpace#

class warp.fem.PointBasisSpace(
quadrature,
kernel_func=None,
kernel_grad_func=None,
kernel_values=None,
distance_space='reference',
max_nodes_per_element=-1,
)[source]#
Parameters:
__init__(
quadrature,
kernel_func=None,
kernel_grad_func=None,
kernel_values=None,
distance_space='reference',
max_nodes_per_element=-1,
)[source]#

An unstructured BasisSpace with radial basis kernels (by default, the Dirac delta function)

Parameters:
  • quadrature (Quadrature) – Quadrature formula defining the node locations and quadrature weights

  • kernel_func (Function | None) – Kernel function to be used for the basis space. First two arguments must be squared distance to the kernel center and the quadrature point index, then optionally additional kernel values. Default to Dirac delta function.

  • kernel_grad_func (Function | None) – Gradient of the kernel function. Must take same arguments as kernel_func. Defaults to zero gradient.

  • kernel_values (dict[str, Any] | None) – Dictionary of additional values to be passed to the kernel function

  • distance_space (str) – Space in which to compute the distance between the sample and the kernel center point. Can be “reference” or “world”. Defaults to “reference”.

  • max_nodes_per_element (int) – Maximum number of point nodes per element to consider. If not provided, get from the quadrature.

Methods

__init__(quadrature[, kernel_func, ...])

An unstructured BasisSpace with radial basis kernels (by default, the Dirac delta function)

basis_arg_value(device)

fill_basis_arg(arg, device)

make_element_inner_weight()

make_element_inner_weight_gradient()

make_element_outer_weight()

make_element_outer_weight_gradient()

make_node_coords_in_element()

make_node_quadrature_weight()

make_trace_node_quadrature_weight(trace_basis)

node_positions([out])

Returns a temporary array containing the world position for each node

trace()

Attributes

BasisArg

geometry

Underlying geometry of the basis space

kernel_values

Dictionary of additional values to be passed to the kernel function

name

topology

Underlying topology of the basis space

value

weight_gradient_type

weight_type

property kernel_values: dict[str, Any][source]#

Dictionary of additional values to be passed to the kernel function

property name[source]#
property value: Value[source]#
property BasisArg: <property object at 0x7f873e1421b0>[source]#
fill_basis_arg(arg, device)[source]#
Parameters:

arg (<property object at 0x7f873e1421b0>)

basis_arg_value(device)[source]#
Return type:

<property object at 0x7f873e1421b0>

make_node_coords_in_element()[source]#
make_node_quadrature_weight()[source]#
make_element_inner_weight()[source]#
make_element_inner_weight_gradient()[source]#
make_element_outer_weight()[source]#
make_element_outer_weight_gradient()[source]#
make_trace_node_quadrature_weight(trace_basis)[source]#