Skip to content

Commit f7504a6

Browse files
committed
More
1 parent 834c9ad commit f7504a6

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

python/basix/ufl.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -605,7 +605,7 @@ def __eq__(self, other) -> bool:
605605
def __hash__(self) -> int:
606606
return super().__hash__()
607607

608-
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.ArrayLike:
608+
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.NDArray[np.float64]:
609609
tables = self._element.tabulate(nderivs, points)
610610
output = []
611611
for tbl in tables: # type: ignore
@@ -773,7 +773,7 @@ def is_mixed(self) -> bool:
773773
def degree(self) -> int:
774774
return max((e.degree for e in self._sub_elements), default=-1)
775775

776-
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.ArrayLike:
776+
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.NDArray[np.float64]:
777777
tables = []
778778
results = [e.tabulate(nderivs, points) for e in self._sub_elements]
779779
for deriv_tables in zip(*results):
@@ -1044,7 +1044,7 @@ def is_quadrature(self) -> bool:
10441044
def is_real(self) -> bool:
10451045
return self._sub_element.is_real
10461046

1047-
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.ArrayLike:
1047+
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.NDArray[np.float64]:
10481048
assert len(self._block_shape) == 1 # TODO: block shape
10491049
assert self.reference_value_size == self._block_size # TODO: remove this assumption
10501050
output = []
@@ -1281,7 +1281,9 @@ def __eq__(self, other) -> bool:
12811281
def __hash__(self) -> int:
12821282
return super().__hash__()
12831283

1284-
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.ArrayLike:
1284+
def tabulate(
1285+
self, nderivs: int, points: _npt.NDArray[np.floating]
1286+
) -> _npt.NDArray[np.floating]:
12851287
if nderivs > 0:
12861288
raise ValueError("Cannot take derivatives of Quadrature element.")
12871289

@@ -1424,7 +1426,9 @@ def __hash__(self) -> int:
14241426
def dtype(self) -> _npt.DTypeLike:
14251427
raise NotImplementedError()
14261428

1427-
def tabulate(self, nderivs: int, points: _npt.NDArray[np.floating]) -> _npt.ArrayLike:
1429+
def tabulate(
1430+
self, nderivs: int, points: _npt.NDArray[np.floating]
1431+
) -> _npt.NDArray[np.floating]:
14281432
out = np.zeros((nderivs + 1, len(points), self.reference_value_size**2))
14291433
for v in range(self.reference_value_size):
14301434
out[0, :, self.reference_value_size * v + v] = 1.0
@@ -1578,7 +1582,7 @@ def element(
15781582
symmetry: bool | None = None,
15791583
dof_ordering: list[int] | None = None,
15801584
dtype: _npt.DTypeLike | None = None,
1581-
) -> _BasixElement:
1585+
) -> _BasixElement | _BlockedElement:
15821586
"""Create a UFL compatible element using Basix.
15831587
15841588
Args:
@@ -1919,7 +1923,7 @@ def blocked_element(
19191923
sub_element: _ElementBase,
19201924
shape: tuple[int, ...],
19211925
symmetry: bool | None = None,
1922-
) -> _ElementBase:
1926+
) -> _BlockedElement:
19231927
"""Create a UFL compatible blocked element.
19241928
19251929
Args:

0 commit comments

Comments
 (0)