detect TopologyType="Mixed" in XDMF 2
@@ -147,7 +147,11 @@ class XdmfReader:
data_items = list(c)
if len(data_items) != 1:
raise ReadError()
- meshio_type = xdmf_to_meshio_type[c.attrib["TopologyType"]]
+ topology_type = c.attrib["TopologyType"]
+ if topology_type == "Mixed":
+ cells = translate_mixed_cells(data_items[0])
+ else:
+ meshio_type = xdmf_to_meshio_type[topology_type]
cells[meshio_type] = self._read_data_item(data_items[0])
elif c.tag == "Geometry":
