@@ -40,12 +40,9 @@ def __init__(
4040 self .degree = degree
4141 basix_cell = _ufl_cell_type_to_basix (self .cell_type )
4242 self .points , self .weights = basix .make_quadrature (basix_cell , self .degree , rule = self .type )
43- self .dx = ufl .dx (
44- metadata = {
45- "quadrature_rule" : self .type ,
46- "quadrature_degree" : self .degree ,
47- }
48- )
43+
44+ metadata = {"quadrature_degree" : self .degree , "quadrature_scheme" : self .type .name }
45+ self .dx = ufl .dx (metadata = metadata )
4946
5047 def create_quadrature_space (self , mesh : df .mesh .Mesh ) -> df .fem .functionspace :
5148 """
@@ -56,13 +53,9 @@ def create_quadrature_space(self, mesh: df.mesh.Mesh) -> df.fem.functionspace:
5653 A scalar quadrature `FunctionSpace` on `mesh`.
5754 """
5855 assert mesh .ufl_cell () == self .cell_type
59- Qe = basix .ufl .quadrature_element (mesh .topology .cell_name (), value_shape = (), degree = self .degree )
60- # Qe = ufl.FiniteElement(
61- # "Quadrature",
62- # self.cell_type,
63- # self.degree,
64- # quad_scheme=self.type.name,
65- # )
56+ Qe = basix .ufl .quadrature_element (
57+ mesh .topology .cell_name (), value_shape = (), degree = self .degree , scheme = self .type .name
58+ )
6659
6760 return df .fem .functionspace (mesh , Qe )
6861
@@ -76,14 +69,10 @@ def create_quadrature_vector_space(self, mesh: df.mesh.Mesh, dim: int) -> df.fem
7669 A vector valued quadrature `FunctionSpace` on `mesh`.
7770 """
7871 assert mesh .ufl_cell () == self .cell_type
79- # Qe = ufl.VectorElement(
80- # "Quadrature",
81- # self.cell_type,
82- # self.degree,
83- # quad_scheme=self.type.name,
84- # dim=dim,
85- # )
86- Qe = basix .ufl .quadrature_element (mesh .topology .cell_name (), value_shape = (dim ,), degree = self .degree )
72+
73+ Qe = basix .ufl .quadrature_element (
74+ mesh .topology .cell_name (), value_shape = (dim ,), degree = self .degree , scheme = self .type .name
75+ )
8776
8877 return df .fem .functionspace (mesh , Qe )
8978
@@ -97,14 +86,10 @@ def create_quadrature_tensor_space(self, mesh: df.mesh.Mesh, shape: tuple[int, i
9786 A tensor valued quadrature `FunctionSpace` on `mesh`.
9887 """
9988 assert mesh .ufl_cell () == self .cell_type
100- # Qe = ufl.TensorElement(
101- # "Quadrature",
102- # self.cell_type,
103- # self.degree,
104- # quad_scheme=self.type.name,
105- # shape=shape,
106- # )
107- Qe = basix .ufl .quadrature_element (mesh .topology .cell_name (), value_shape = shape , degree = self .degree )
89+
90+ Qe = basix .ufl .quadrature_element (
91+ mesh .topology .cell_name (), value_shape = shape , degree = self .degree , scheme = self .type .name
92+ )
10893
10994 return df .fem .functionspace (mesh , Qe )
11095
0 commit comments