Coverage for /dolfinx-env/lib/python3.12/site-packages/io4dolfinx/compat.py: 73%
15 statements
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-08 09:09 +0000
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-08 09:09 +0000
1"""Layer for small backward compatibility wrappers for DOLFINx"""
3import dolfinx
4import numpy as np
5import numpy.typing as npt
8def cmap(mesh: dolfinx.mesh.Mesh) -> dolfinx.fem.CoordinateElement:
9 """Get the basix Cmap for the mesh."""
10 if hasattr(mesh.geometry, "cmaps"):
11 return mesh.geometry.cmaps[0]
12 if callable(mesh.geometry.cmap):
13 return mesh.geometry.cmap()
14 else:
15 return mesh.geometry.cmap
18def dofmap(mesh: dolfinx.mesh.Mesh) -> npt.NDArray[np.int32]:
19 """Get the dofmap for the geometry."""
20 if hasattr(mesh.geometry, "dofmaps"):
21 return mesh.geometry.dofmaps[0]
22 if callable(mesh.geometry.dofmap):
23 return mesh.geometry.dofmap()
24 else:
25 return mesh.geometry.dofmap