ffcx.ir.representationutils

Utility functions for some code shared between representations.

Functions

create_quadrature_points_and_weights(...[, ...])

Create quadrature rule and return points and weights.

integral_type_to_entity_dim(integral_type, tdim)

Given integral_type and domain tdim, return the tdim of the integration entity.

map_integral_points(points, integral_type, ...)

Map points from reference entity to its parent reference cell.

Classes

QuadratureRule(points, weights[, tensor_factors])

A quadrature rule.

class ffcx.ir.representationutils.QuadratureRule(points, weights, tensor_factors=None)[source]

Bases: object

A quadrature rule.

Initialise.

id()[source]

Return unique deterministic identifier.

Note

This identifier is used to provide unique names to tables and symbols in generated code.

ffcx.ir.representationutils.create_quadrature(cellname: str, degree: int, rule: str, elements: list[_ElementBase]) tuple[Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes], Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | bool | int | float | complex | str | bytes | _NestedSequence[bool | int | float | complex | str | bytes]][source]

Create a quadrature rule.

ffcx.ir.representationutils.create_quadrature_points_and_weights(integral_type, cell, degree, rule, elements, use_tensor_product=False)[source]

Create quadrature rule and return points and weights.

ffcx.ir.representationutils.integral_type_to_entity_dim(integral_type, tdim)[source]

Given integral_type and domain tdim, return the tdim of the integration entity.

ffcx.ir.representationutils.map_facet_points(points: ndarray[Any, dtype[float64]], facet: int, cellname: str) ndarray[Any, dtype[float64]][source]

Map points from a reference facet to a physical facet.

ffcx.ir.representationutils.map_integral_points(points, integral_type, cell, entity)[source]

Map points from reference entity to its parent reference cell.

ffcx.ir.representationutils.reference_cell_vertices(cellname: str) ndarray[Any, dtype[float64]][source]

Get the vertices of a reference cell.