diff --git a/README.md b/README.md index 3037aa00..ed6c6225 100644 --- a/README.md +++ b/README.md @@ -209,6 +209,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) with respect to documented and/or tested features. +### Unreleased + +- Fixed: `ElementVector` works also for split_bases/split_indices in case `mesh.dim() != elem.dim` + ### [9.0.0] - 2023-12-24 - Removed: Python 3.7 support diff --git a/skfem/assembly/basis/abstract_basis.py b/skfem/assembly/basis/abstract_basis.py index 8b21baa7..1a1c7962 100644 --- a/skfem/assembly/basis/abstract_basis.py +++ b/skfem/assembly/basis/abstract_basis.py @@ -338,7 +338,7 @@ def split_indices(self) -> List[ndarray]: e.interior_dofs]) return output elif isinstance(self.elem, ElementVector): - ndims = self.mesh.dim() + ndims = self.elem.dim e = self.elem.elem for k in range(ndims): output.append(np.concatenate(( @@ -359,7 +359,7 @@ def split_bases(self) -> List['AbstractBasis']: elif isinstance(self.elem, ElementVector): return [type(self)(self.mesh, self.elem.elem, self.mapping, quadrature=self.quadrature) - for _ in range(self.mesh.dim())] + for _ in range(self.elem.dim)] return [self] @property