warp.fem.SpaceRestriction#

class warp.fem.SpaceRestriction(
space_partition,
domain,
device=None,
temporary_store=None,
)[source]#

Restriction of a space partition to a given GeometryDomain.

Parameters:
__init__(
space_partition,
domain,
device=None,
temporary_store=None,
)[source]#
Parameters:

Methods

__init__(space_partition, domain[, device, ...])

fill_node_arg(arg, device)

Fill node arguments for device functions.

node_arg_value(device)

node_count()

Upper bound for the node count, use node_count_sync to get the actual value.

node_count_sync()

Ensure that the node count is synchronized with the device and return it.

node_partition_indices()

Return partition node indices referenced by this restriction.

partition_element_offsets()

Return offsets into the per-node element index arrays.

rebuild([device, temporary_store])

Rebuild internal indices for the space restriction.

total_node_element_count()

Return the total number of node-element references.

Attributes

NodeArg

node_element_index

node_element_range

node_partition_index

node_partition_index_from_element_offset

space_partition

Partition of the function space nodes that will be restricted.

space_topology

Topology of the full function space.

domain

Domain to which the space partition is being restricted.

space_partition: SpacePartition#

Partition of the function space nodes that will be restricted.

space_topology: SpaceTopology#

Topology of the full function space.

domain: GeometryDomain#

Domain to which the space partition is being restricted.

rebuild(device=None, temporary_store=None)[source]#

Rebuild internal indices for the space restriction.

Parameters:
node_count_sync()[source]#

Ensure that the node count is synchronized with the device and return it.

Return type:

int

node_count()[source]#

Upper bound for the node count, use node_count_sync to get the actual value.

Return type:

int

partition_element_offsets()[source]#

Return offsets into the per-node element index arrays.

node_partition_indices()[source]#

Return partition node indices referenced by this restriction.

total_node_element_count()[source]#

Return the total number of node-element references.

NodeArg = <warp._src.codegen.Struct object>#
node_arg_value(device)[source]#
fill_node_arg(arg, device)[source]#

Fill node arguments for device functions.

Parameters:

arg (NodeArg)

node_partition_index = <Function SpaceRestriction__node_partition_index(args: warp._src.fem.space.restriction.SpaceRestriction.NodeArg, restriction_node_index: int)>#
Parameters:
  • args (NodeArg)

  • restriction_node_index (int)

node_partition_index_from_element_offset = <Function SpaceRestriction__node_partition_index_from_element_offset(args: warp._src.fem.space.restriction.SpaceRestriction.NodeArg, element_offset: int)>#
Parameters:
  • args (NodeArg)

  • element_offset (int)

node_element_range = <Function SpaceRestriction__node_element_range(args: warp._src.fem.space.restriction.SpaceRestriction.NodeArg, partition_node_index: int)>#
Parameters:
  • args (NodeArg)

  • partition_node_index (int)

node_element_index = <Function SpaceRestriction__node_element_index(args: warp._src.fem.space.restriction.SpaceRestriction.NodeArg, node_element_offset: int)>#
Parameters:
  • args (NodeArg)

  • node_element_offset (int)