From d7eecd798ffc4dce9857ee0b050ae87411e97ed0 Mon Sep 17 00:00:00 2001 From: Alexandru Fikl Date: Sun, 8 Nov 2020 20:00:37 -0600 Subject: [PATCH 1/6] try to add a more generic node numbering --- contrib/gmsh-simplex-node-tuples.py | 104 ++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 contrib/gmsh-simplex-node-tuples.py diff --git a/contrib/gmsh-simplex-node-tuples.py b/contrib/gmsh-simplex-node-tuples.py new file mode 100644 index 0000000..504602e --- /dev/null +++ b/contrib/gmsh-simplex-node-tuples.py @@ -0,0 +1,104 @@ +import os +import subprocess + +import numpy as np +import gmsh + + +OUTPUT_TEMPLATE = """ +tri_node_tuples = %s + +tet_node_tuples = %s +""" + + +def generate_triangle_node_tuples(tmpdir, order): + # {{{ create mesh + + gmsh.model.add(f"Triangle{order}") + gmsh.option.setNumber("Mesh.MeshSizeMin", 2*order) + gmsh.option.setNumber("Mesh.MeshSizeMax", 2*order) + + gmsh.model.occ.addRectangle(0, 0, 0, order, order) + gmsh.model.occ.synchronize() + + gmsh.model.mesh.generate(2) + gmsh.model.mesh.setOrder(order) + + # this generates an X triangle mesh like + # + # +-----+ + # |\ /| + # | \ / | + # | + | + # | / \ | + # |/ 0 \| + # +-----+ + # + # and we'll work on the bottom 0 element + # FIXME: would be nice to just generate two triangles there + + # }}} + + # {{{ get element + + el_types, _, node_tags = gmsh.model.mesh.getElements(2) + assert len(el_types) == 1 + + # get node indices for the first element + nnodes = gmsh.model.mesh.getElementProperties(el_types[0])[3] + node_tags = node_tags[0].reshape(-1, nnodes) - 1 + assert node_tags[0].size == (order + 1) * (order + 2) // 2 + + _, nodes, _ = gmsh.model.mesh.getNodes() + nodes = nodes.reshape(-1, 3) + + # transform element nodes to match the unit triangle + mat = np.array([[1, -1], [0, 2]]) + nodes = (mat @ nodes[node_tags[0, :], :-1].T).T + + # }}} + + return [tuple(node) for node in nodes.astype(int)] + + +def generate_tetrahedron_node_tuples(tmpdir, order): + raise NotImplementedError + + +def generate_node_tuples(filename, max_order=10): + tri_node_tuples = {} + tet_node_tuples = {} + + gmsh.initialize() + gmsh.option.setNumber("General.Terminal", 1) + + import tempfile + with tempfile.TemporaryDirectory() as tmp: + for order in range(1, max_order + 1): + tri_node_tuples[order] = generate_triangle_node_tuples(".", order) + # tet_node_tuples[order] = generate_tetrahedron_node_tuples(tmp, order) + + gmsh.finalize() + + from pprint import pformat + txt = (OUTPUT_TEMPLATE % ( + pformat(tri_node_tuples, width=80), + pformat(tet_node_tuples, width=80) + )).replace('"', "") + + if filename is None: + print(txt) + else: + with open(filename, "w") as fd: + fd.write(txt) + + +if __name__ == "__main__": + import argparse + + parser = argparse.ArgumentParser() + parser.add_argument("filename", nargs="?", default=None) + args = parser.parse_args() + + generate_node_tuples(args.filename) From 077d433a98023d8a0576fea530e89692eac1bc68 Mon Sep 17 00:00:00 2001 From: Alexandru Fikl Date: Mon, 9 Nov 2020 09:24:26 -0600 Subject: [PATCH 2/6] add all gmsh high order node tuples --- contrib/gmsh-node-tuples.py | 160 + contrib/gmsh-simplex-node-tuples.py | 104 - gmsh_interop/node_tuples.py | 5042 +++++++++++++++++++++++++++ gmsh_interop/reader.py | 158 +- 4 files changed, 5210 insertions(+), 254 deletions(-) create mode 100644 contrib/gmsh-node-tuples.py delete mode 100644 contrib/gmsh-simplex-node-tuples.py create mode 100644 gmsh_interop/node_tuples.py diff --git a/contrib/gmsh-node-tuples.py b/contrib/gmsh-node-tuples.py new file mode 100644 index 0000000..80dd296 --- /dev/null +++ b/contrib/gmsh-node-tuples.py @@ -0,0 +1,160 @@ +import gmsh + + +OUTPUT_TEMPLATE = """# GENERATED by gmsh_interop/contrib/gmsh-node-tuples.py +# GMSH_VERSION: %s +# DO NOT EDIT + +triangle_data = %s + +tetrahedron_data = %s + +quadrangle_data = %s + +hexahedron_data = %s +""" + + +TRIANGLE_ELEMENTS = { + "MSH_TRI_3": 2, + "MSH_TRI_6": 9, + "MSH_TRI_10": 21, + "MSH_TRI_15": 23, + "MSH_TRI_21": 25, + "MSH_TRI_28": 42, + "MSH_TRI_36": 43, + "MSH_TRI_45": 44, + "MSH_TRI_55": 45, + "MSH_TRI_66": 46, + } + + +TETRAHEDRON_ELEMENTS = { + "MSH_TET_4": 4, + "MSH_TET_10": 11, + "MSH_TET_20": 29, + "MSH_TET_35": 30, + "MSH_TET_56": 31, + "MSH_TET_84": 71, + "MSH_TET_120": 72, + "MSH_TET_165": 73, + "MSH_TET_220": 74, + "MSH_TET_286": 75, + } + + +QUADRANGLE_ELEMENTS = { + "MSH_QUA_4": 3, + "MSH_QUA_9": 10, + "MSH_QUA_16": 36, + "MSH_QUA_25": 37, + "MSH_QUA_36": 38, + "MSH_QUA_49": 47, + "MSH_QUA_64": 48, + "MSH_QUA_81": 49, + "MSH_QUA_100": 50, + "MSH_QUA_121": 51, + } + + +HEXAHEHEDRON_ELEMENTS = { + "MSH_HEX_8": 5, + "MSH_HEX_27": 12, + "MSH_HEX_64": 92, + "MSH_HEX_125": 93, + "MSH_HEX_216": 94, + "MSH_HEX_343": 95, + "MSH_HEX_512": 96, + "MSH_HEX_729": 97, + "MSH_HEX_1000": 98, + } + + +def generate_node_tuples_from_gmsh(eltype, eldim, elvertices, domain="unit"): + # {{{ get element + + name, dim, order, nnodes, nodes, nvertices = \ + gmsh.model.mesh.getElementProperties(eltype) + assert dim == eldim + assert nvertices == elvertices + + nodes = nodes.reshape(nnodes, dim) * order + if domain == "unit": + pass + elif domain == "biunit": + nodes = (1.0 + nodes) / 2.0 + else: + raise ValueError(f"unknown domain: '{domain}'") + + # }}} + + return [tuple(node) for node in nodes.astype(int)] + + +def generate_node_tuples(filename): + tri_data = {} + tet_data = {} + qua_data = {} + hex_data = {} + + gmsh.initialize() + gmsh.option.setNumber("General.Terminal", 1) + + for order, (name, eltype) in enumerate(TRIANGLE_ELEMENTS.items()): + node_tuples = generate_node_tuples_from_gmsh(eltype, 2, 3) + tri_data[order + 1] = { + "node_tuples": node_tuples, + "element_type": eltype, + "element_name": name, + } + + for order, (name, eltype) in enumerate(TETRAHEDRON_ELEMENTS.items()): + node_tuples = generate_node_tuples_from_gmsh(eltype, 3, 4) + tet_data[order + 1] = { + "node_tuples": node_tuples, + "element_type": eltype, + "element_name": name, + } + + for order, (name, eltype) in enumerate(QUADRANGLE_ELEMENTS.items()): + node_tuples = generate_node_tuples_from_gmsh(eltype, 2, 4, domain="biunit") + qua_data[order + 1] = { + "node_tuples": node_tuples, + "element_type": eltype, + "element_name": name, + } + + for order, (name, eltype) in enumerate(HEXAHEHEDRON_ELEMENTS.items()): + node_tuples = generate_node_tuples_from_gmsh(eltype, 3, 8, domain="biunit") + hex_data[order + 1] = { + "node_tuples": node_tuples, + "element_type": eltype, + "element_name": name, + } + + gmsh.finalize() + + from pprint import pformat + txt = (OUTPUT_TEMPLATE % ( + gmsh.GMSH_API_VERSION, + pformat(tri_data, width=80), + pformat(tet_data, width=80), + pformat(qua_data, width=80), + pformat(hex_data, width=80), + )).replace('"', "") + + if filename is None: + print(txt) + else: + with open(filename, "w") as fd: + fd.write(txt) + + +if __name__ == "__main__": + import argparse + + parser = argparse.ArgumentParser() + parser.add_argument("filename", nargs="?", default=None) + args = parser.parse_args() + + generate_node_tuples(args.filename) diff --git a/contrib/gmsh-simplex-node-tuples.py b/contrib/gmsh-simplex-node-tuples.py deleted file mode 100644 index 504602e..0000000 --- a/contrib/gmsh-simplex-node-tuples.py +++ /dev/null @@ -1,104 +0,0 @@ -import os -import subprocess - -import numpy as np -import gmsh - - -OUTPUT_TEMPLATE = """ -tri_node_tuples = %s - -tet_node_tuples = %s -""" - - -def generate_triangle_node_tuples(tmpdir, order): - # {{{ create mesh - - gmsh.model.add(f"Triangle{order}") - gmsh.option.setNumber("Mesh.MeshSizeMin", 2*order) - gmsh.option.setNumber("Mesh.MeshSizeMax", 2*order) - - gmsh.model.occ.addRectangle(0, 0, 0, order, order) - gmsh.model.occ.synchronize() - - gmsh.model.mesh.generate(2) - gmsh.model.mesh.setOrder(order) - - # this generates an X triangle mesh like - # - # +-----+ - # |\ /| - # | \ / | - # | + | - # | / \ | - # |/ 0 \| - # +-----+ - # - # and we'll work on the bottom 0 element - # FIXME: would be nice to just generate two triangles there - - # }}} - - # {{{ get element - - el_types, _, node_tags = gmsh.model.mesh.getElements(2) - assert len(el_types) == 1 - - # get node indices for the first element - nnodes = gmsh.model.mesh.getElementProperties(el_types[0])[3] - node_tags = node_tags[0].reshape(-1, nnodes) - 1 - assert node_tags[0].size == (order + 1) * (order + 2) // 2 - - _, nodes, _ = gmsh.model.mesh.getNodes() - nodes = nodes.reshape(-1, 3) - - # transform element nodes to match the unit triangle - mat = np.array([[1, -1], [0, 2]]) - nodes = (mat @ nodes[node_tags[0, :], :-1].T).T - - # }}} - - return [tuple(node) for node in nodes.astype(int)] - - -def generate_tetrahedron_node_tuples(tmpdir, order): - raise NotImplementedError - - -def generate_node_tuples(filename, max_order=10): - tri_node_tuples = {} - tet_node_tuples = {} - - gmsh.initialize() - gmsh.option.setNumber("General.Terminal", 1) - - import tempfile - with tempfile.TemporaryDirectory() as tmp: - for order in range(1, max_order + 1): - tri_node_tuples[order] = generate_triangle_node_tuples(".", order) - # tet_node_tuples[order] = generate_tetrahedron_node_tuples(tmp, order) - - gmsh.finalize() - - from pprint import pformat - txt = (OUTPUT_TEMPLATE % ( - pformat(tri_node_tuples, width=80), - pformat(tet_node_tuples, width=80) - )).replace('"', "") - - if filename is None: - print(txt) - else: - with open(filename, "w") as fd: - fd.write(txt) - - -if __name__ == "__main__": - import argparse - - parser = argparse.ArgumentParser() - parser.add_argument("filename", nargs="?", default=None) - args = parser.parse_args() - - generate_node_tuples(args.filename) diff --git a/gmsh_interop/node_tuples.py b/gmsh_interop/node_tuples.py new file mode 100644 index 0000000..0c0a83a --- /dev/null +++ b/gmsh_interop/node_tuples.py @@ -0,0 +1,5042 @@ +# GENERATED by gmsh_interop/contrib/gmsh-node-tuples.py +# GMSH_VERSION: 4.7.0 +# DO NOT EDIT + +triangle_data = { + 1: { + "element_name": "MSH_TRI_3", + "element_type": 2, + "node_tuples": [(0, 0), (1, 0), (0, 1)], + }, + 2: { + "element_name": "MSH_TRI_6", + "element_type": 9, + "node_tuples": [(0, 0), (2, 0), (0, 2), (1, 0), (1, 1), (0, 1)], + }, + 3: { + "element_name": "MSH_TRI_10", + "element_type": 21, + "node_tuples": [ + (0, 0), + (3, 0), + (0, 3), + (1, 0), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (0, 1), + (1, 1), + ], + }, + 4: { + "element_name": "MSH_TRI_15", + "element_type": 23, + "node_tuples": [ + (0, 0), + (4, 0), + (0, 4), + (1, 0), + (2, 0), + (3, 0), + (3, 1), + (2, 2), + (1, 3), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (2, 1), + (1, 2), + ], + }, + 5: { + "element_name": "MSH_TRI_21", + "element_type": 25, + "node_tuples": [ + (0, 0), + (5, 0), + (0, 5), + (1, 0), + (2, 0), + (3, 0), + (4, 0), + (4, 1), + (3, 2), + (2, 3), + (1, 4), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (3, 1), + (1, 3), + (2, 1), + (2, 2), + (1, 2), + ], + }, + 6: { + "element_name": "MSH_TRI_28", + "element_type": 42, + "node_tuples": [ + (0, 0), + (6, 0), + (0, 6), + (1, 0), + (2, 0), + (3, 0), + (4, 0), + (5, 0), + (5, 1), + (4, 2), + (3, 3), + (2, 4), + (1, 5), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (4, 1), + (1, 4), + (2, 1), + (3, 1), + (3, 2), + (2, 3), + (1, 3), + (1, 2), + (2, 2), + ], + }, + 7: { + "element_name": "MSH_TRI_36", + "element_type": 43, + "node_tuples": [ + (0, 0), + (7, 0), + (0, 7), + (1, 0), + (2, 0), + (3, 0), + (4, 0), + (4, 0), + (6, 0), + (6, 1), + (4, 2), + (4, 3), + (3, 4), + (2, 4), + (1, 6), + (0, 6), + (0, 4), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (4, 1), + (1, 4), + (2, 1), + (3, 1), + (4, 1), + (4, 2), + (3, 3), + (2, 4), + (1, 4), + (1, 3), + (1, 2), + (2, 2), + (3, 2), + (2, 3), + ], + }, + 8: { + "element_name": "MSH_TRI_45", + "element_type": 44, + "node_tuples": [ + (0, 0), + (8, 0), + (0, 8), + (1, 0), + (2, 0), + (3, 0), + (4, 0), + (5, 0), + (6, 0), + (7, 0), + (7, 1), + (6, 2), + (5, 3), + (4, 4), + (3, 5), + (2, 6), + (1, 7), + (0, 7), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (6, 1), + (1, 6), + (2, 1), + (3, 1), + (4, 1), + (5, 1), + (5, 2), + (4, 3), + (3, 4), + (2, 5), + (1, 5), + (1, 4), + (1, 3), + (1, 2), + (2, 2), + (4, 2), + (2, 4), + (3, 2), + (3, 3), + (2, 3), + ], + }, + 9: { + "element_name": "MSH_TRI_55", + "element_type": 45, + "node_tuples": [ + (0, 0), + (9, 0), + (0, 9), + (1, 0), + (2, 0), + (3, 0), + (4, 0), + (5, 0), + (6, 0), + (6, 0), + (8, 0), + (8, 1), + (6, 2), + (6, 3), + (5, 4), + (4, 5), + (3, 6), + (2, 6), + (1, 8), + (0, 8), + (0, 6), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (6, 1), + (1, 6), + (2, 1), + (3, 1), + (4, 1), + (5, 1), + (6, 1), + (6, 2), + (5, 3), + (4, 4), + (3, 5), + (2, 6), + (1, 6), + (1, 5), + (1, 4), + (1, 3), + (1, 2), + (2, 2), + (5, 2), + (2, 5), + (3, 2), + (4, 2), + (4, 3), + (3, 4), + (2, 4), + (2, 3), + (3, 3), + ], + }, + 10: { + "element_name": "MSH_TRI_66", + "element_type": 46, + "node_tuples": [ + (0, 0), + (10, 0), + (0, 10), + (1, 0), + (2, 0), + (3, 0), + (4, 0), + (5, 0), + (6, 0), + (7, 0), + (8, 0), + (9, 0), + (9, 1), + (8, 2), + (7, 3), + (6, 4), + (5, 5), + (4, 6), + (3, 7), + (2, 8), + (1, 9), + (0, 9), + (0, 8), + (0, 7), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (8, 1), + (1, 8), + (2, 1), + (3, 1), + (4, 1), + (5, 1), + (6, 1), + (7, 1), + (7, 2), + (6, 3), + (5, 4), + (4, 5), + (3, 6), + (2, 7), + (1, 7), + (1, 6), + (1, 5), + (1, 4), + (1, 3), + (1, 2), + (2, 2), + (6, 2), + (2, 6), + (3, 2), + (4, 2), + (5, 2), + (5, 3), + (4, 4), + (3, 5), + (2, 5), + (2, 4), + (2, 3), + (3, 3), + (4, 3), + (3, 4), + ], + }, +} + +tetrahedron_data = { + 1: { + "element_name": "MSH_TET_4", + "element_type": 4, + "node_tuples": [(0, 0, 0), (1, 0, 0), (0, 1, 0), (0, 0, 1)], + }, + 2: { + "element_name": "MSH_TET_10", + "element_type": 11, + "node_tuples": [ + (0, 0, 0), + (2, 0, 0), + (0, 2, 0), + (0, 0, 2), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (0, 1, 1), + (1, 0, 1), + ], + }, + 3: { + "element_name": "MSH_TET_20", + "element_type": 29, + "node_tuples": [ + (0, 0, 0), + (3, 0, 0), + (0, 3, 0), + (0, 0, 3), + (1, 0, 0), + (2, 0, 0), + (2, 1, 0), + (1, 2, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 2), + (0, 0, 1), + (0, 1, 2), + (0, 2, 1), + (1, 0, 2), + (2, 0, 1), + (1, 1, 0), + (1, 0, 1), + (0, 1, 1), + (1, 1, 1), + ], + }, + 4: { + "element_name": "MSH_TET_35", + "element_type": 30, + "node_tuples": [ + (0, 0, 0), + (4, 0, 0), + (0, 4, 0), + (0, 0, 4), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (3, 1, 0), + (2, 2, 0), + (1, 3, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 3), + (0, 2, 2), + (0, 3, 1), + (1, 0, 3), + (2, 0, 2), + (3, 0, 1), + (1, 1, 0), + (1, 2, 0), + (2, 1, 0), + (1, 0, 1), + (2, 0, 1), + (1, 0, 2), + (0, 1, 1), + (0, 1, 2), + (0, 2, 1), + (1, 1, 2), + (2, 1, 1), + (1, 2, 1), + (1, 1, 1), + ], + }, + 5: { + "element_name": "MSH_TET_56", + "element_type": 31, + "node_tuples": [ + (0, 0, 0), + (5, 0, 0), + (0, 5, 0), + (0, 0, 5), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (4, 1, 0), + (3, 2, 0), + (2, 3, 0), + (1, 4, 0), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 4), + (0, 2, 3), + (0, 3, 2), + (0, 4, 1), + (1, 0, 4), + (2, 0, 3), + (3, 0, 2), + (4, 0, 1), + (1, 1, 0), + (1, 3, 0), + (3, 1, 0), + (1, 2, 0), + (2, 2, 0), + (2, 1, 0), + (1, 0, 1), + (3, 0, 1), + (1, 0, 3), + (2, 0, 1), + (2, 0, 2), + (1, 0, 2), + (0, 1, 1), + (0, 1, 3), + (0, 3, 1), + (0, 1, 2), + (0, 2, 2), + (0, 2, 1), + (1, 1, 3), + (3, 1, 1), + (1, 3, 1), + (2, 1, 2), + (2, 2, 1), + (1, 2, 2), + (1, 1, 1), + (2, 1, 1), + (1, 2, 1), + (1, 1, 2), + ], + }, + 6: { + "element_name": "MSH_TET_84", + "element_type": 71, + "node_tuples": [ + (0, 0, 0), + (6, 0, 0), + (0, 6, 0), + (0, 0, 6), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), + (5, 1, 0), + (4, 2, 0), + (3, 3, 0), + (2, 4, 0), + (1, 5, 0), + (0, 5, 0), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 5), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 5), + (0, 2, 4), + (0, 3, 3), + (0, 4, 2), + (0, 5, 1), + (1, 0, 5), + (2, 0, 4), + (3, 0, 3), + (4, 0, 2), + (5, 0, 1), + (1, 1, 0), + (1, 4, 0), + (4, 1, 0), + (1, 2, 0), + (1, 3, 0), + (2, 3, 0), + (3, 2, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (1, 0, 1), + (4, 0, 1), + (1, 0, 4), + (2, 0, 1), + (3, 0, 1), + (3, 0, 2), + (2, 0, 3), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (0, 1, 1), + (0, 1, 4), + (0, 4, 1), + (0, 1, 2), + (0, 1, 3), + (0, 2, 3), + (0, 3, 2), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (1, 1, 4), + (4, 1, 1), + (1, 4, 1), + (2, 1, 3), + (3, 1, 2), + (3, 2, 1), + (2, 3, 1), + (1, 3, 2), + (1, 2, 3), + (2, 2, 2), + (1, 1, 1), + (3, 1, 1), + (1, 3, 1), + (1, 1, 3), + (2, 1, 1), + (2, 2, 1), + (1, 2, 1), + (1, 1, 2), + (1, 2, 2), + (2, 1, 2), + ], + }, + 7: { + "element_name": "MSH_TET_120", + "element_type": 72, + "node_tuples": [ + (0, 0, 0), + (7, 0, 0), + (0, 7, 0), + (0, 0, 7), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (4, 0, 0), + (6, 0, 0), + (6, 1, 0), + (4, 2, 0), + (4, 3, 0), + (3, 4, 0), + (2, 4, 0), + (1, 6, 0), + (0, 6, 0), + (0, 4, 0), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 6), + (0, 0, 4), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 6), + (0, 2, 4), + (0, 3, 4), + (0, 4, 3), + (0, 4, 2), + (0, 6, 1), + (1, 0, 6), + (2, 0, 4), + (3, 0, 4), + (4, 0, 3), + (4, 0, 2), + (6, 0, 1), + (1, 1, 0), + (1, 4, 0), + (4, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (2, 4, 0), + (3, 3, 0), + (4, 2, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 3, 0), + (3, 2, 0), + (1, 0, 1), + (4, 0, 1), + (1, 0, 4), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (4, 0, 2), + (3, 0, 3), + (2, 0, 4), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (3, 0, 2), + (2, 0, 3), + (0, 1, 1), + (0, 1, 4), + (0, 4, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 2, 4), + (0, 3, 3), + (0, 4, 2), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 3), + (0, 3, 2), + (1, 1, 4), + (4, 1, 1), + (1, 4, 1), + (2, 1, 4), + (3, 1, 3), + (4, 1, 2), + (4, 2, 1), + (3, 3, 1), + (2, 4, 1), + (1, 4, 2), + (1, 3, 3), + (1, 2, 4), + (2, 2, 3), + (3, 2, 2), + (2, 3, 2), + (1, 1, 1), + (4, 1, 1), + (1, 4, 1), + (1, 1, 4), + (2, 1, 1), + (3, 1, 1), + (3, 2, 1), + (2, 3, 1), + (1, 3, 1), + (1, 2, 1), + (1, 1, 3), + (1, 1, 2), + (1, 2, 3), + (1, 3, 2), + (2, 1, 3), + (3, 1, 2), + (2, 2, 1), + (2, 1, 2), + (1, 2, 2), + (2, 2, 2), + ], + }, + 8: { + "element_name": "MSH_TET_165", + "element_type": 73, + "node_tuples": [ + (0, 0, 0), + (8, 0, 0), + (0, 8, 0), + (0, 0, 8), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), + (6, 0, 0), + (7, 0, 0), + (7, 1, 0), + (6, 2, 0), + (5, 3, 0), + (4, 4, 0), + (3, 5, 0), + (2, 6, 0), + (1, 7, 0), + (0, 7, 0), + (0, 6, 0), + (0, 5, 0), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 7), + (0, 0, 6), + (0, 0, 5), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 7), + (0, 2, 6), + (0, 3, 5), + (0, 4, 4), + (0, 5, 3), + (0, 6, 2), + (0, 7, 1), + (1, 0, 7), + (2, 0, 6), + (3, 0, 5), + (4, 0, 4), + (5, 0, 3), + (6, 0, 2), + (7, 0, 1), + (1, 1, 0), + (1, 6, 0), + (6, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (1, 5, 0), + (2, 5, 0), + (3, 4, 0), + (4, 3, 0), + (5, 2, 0), + (5, 1, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 4, 0), + (4, 2, 0), + (2, 3, 0), + (3, 3, 0), + (3, 2, 0), + (1, 0, 1), + (6, 0, 1), + (1, 0, 6), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (5, 0, 1), + (5, 0, 2), + (4, 0, 3), + (3, 0, 4), + (2, 0, 5), + (1, 0, 5), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (4, 0, 2), + (2, 0, 4), + (3, 0, 2), + (3, 0, 3), + (2, 0, 3), + (0, 1, 1), + (0, 1, 6), + (0, 6, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 1, 5), + (0, 2, 5), + (0, 3, 4), + (0, 4, 3), + (0, 5, 2), + (0, 5, 1), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 4), + (0, 4, 2), + (0, 2, 3), + (0, 3, 3), + (0, 3, 2), + (1, 1, 6), + (6, 1, 1), + (1, 6, 1), + (2, 1, 5), + (3, 1, 4), + (4, 1, 3), + (5, 1, 2), + (5, 2, 1), + (4, 3, 1), + (3, 4, 1), + (2, 5, 1), + (1, 5, 2), + (1, 4, 3), + (1, 3, 4), + (1, 2, 5), + (2, 2, 4), + (4, 2, 2), + (2, 4, 2), + (3, 2, 3), + (3, 3, 2), + (2, 3, 3), + (1, 1, 1), + (5, 1, 1), + (1, 5, 1), + (1, 1, 5), + (2, 1, 1), + (3, 1, 1), + (4, 1, 1), + (4, 2, 1), + (3, 3, 1), + (2, 4, 1), + (1, 4, 1), + (1, 3, 1), + (1, 2, 1), + (1, 1, 4), + (1, 1, 3), + (1, 1, 2), + (1, 2, 4), + (1, 3, 3), + (1, 4, 2), + (2, 1, 4), + (3, 1, 3), + (4, 1, 2), + (2, 2, 1), + (2, 3, 1), + (3, 2, 1), + (2, 1, 2), + (3, 1, 2), + (2, 1, 3), + (1, 2, 2), + (1, 2, 3), + (1, 3, 2), + (2, 2, 3), + (3, 2, 2), + (2, 3, 2), + (2, 2, 2), + ], + }, + 9: { + "element_name": "MSH_TET_220", + "element_type": 74, + "node_tuples": [ + (0, 0, 0), + (9, 0, 0), + (0, 9, 0), + (0, 0, 9), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), + (6, 0, 0), + (6, 0, 0), + (8, 0, 0), + (8, 1, 0), + (6, 2, 0), + (6, 3, 0), + (5, 4, 0), + (4, 5, 0), + (3, 6, 0), + (2, 6, 0), + (1, 8, 0), + (0, 8, 0), + (0, 6, 0), + (0, 6, 0), + (0, 5, 0), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 8), + (0, 0, 6), + (0, 0, 6), + (0, 0, 5), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 8), + (0, 2, 6), + (0, 3, 6), + (0, 4, 5), + (0, 5, 4), + (0, 6, 3), + (0, 6, 2), + (0, 8, 1), + (1, 0, 8), + (2, 0, 6), + (3, 0, 6), + (4, 0, 5), + (5, 0, 4), + (6, 0, 3), + (6, 0, 2), + (8, 0, 1), + (1, 1, 0), + (1, 6, 0), + (6, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (1, 5, 0), + (1, 6, 0), + (2, 6, 0), + (3, 5, 0), + (4, 4, 0), + (5, 3, 0), + (6, 2, 0), + (6, 1, 0), + (5, 1, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 5, 0), + (5, 2, 0), + (2, 3, 0), + (2, 4, 0), + (3, 4, 0), + (4, 3, 0), + (4, 2, 0), + (3, 2, 0), + (3, 3, 0), + (1, 0, 1), + (6, 0, 1), + (1, 0, 6), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (5, 0, 1), + (6, 0, 1), + (6, 0, 2), + (5, 0, 3), + (4, 0, 4), + (3, 0, 5), + (2, 0, 6), + (1, 0, 6), + (1, 0, 5), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (5, 0, 2), + (2, 0, 5), + (3, 0, 2), + (4, 0, 2), + (4, 0, 3), + (3, 0, 4), + (2, 0, 4), + (2, 0, 3), + (3, 0, 3), + (0, 1, 1), + (0, 1, 6), + (0, 6, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 1, 5), + (0, 1, 6), + (0, 2, 6), + (0, 3, 5), + (0, 4, 4), + (0, 5, 3), + (0, 6, 2), + (0, 6, 1), + (0, 5, 1), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 5), + (0, 5, 2), + (0, 2, 3), + (0, 2, 4), + (0, 3, 4), + (0, 4, 3), + (0, 4, 2), + (0, 3, 2), + (0, 3, 3), + (1, 1, 6), + (6, 1, 1), + (1, 6, 1), + (2, 1, 6), + (3, 1, 5), + (4, 1, 4), + (5, 1, 3), + (6, 1, 2), + (6, 2, 1), + (5, 3, 1), + (4, 4, 1), + (3, 5, 1), + (2, 6, 1), + (1, 6, 2), + (1, 5, 3), + (1, 4, 4), + (1, 3, 5), + (1, 2, 6), + (2, 2, 5), + (5, 2, 2), + (2, 5, 2), + (3, 2, 4), + (4, 2, 3), + (4, 3, 2), + (3, 4, 2), + (2, 4, 3), + (2, 3, 4), + (3, 3, 3), + (1, 1, 1), + (6, 1, 1), + (1, 6, 1), + (1, 1, 6), + (2, 1, 1), + (3, 1, 1), + (4, 1, 1), + (5, 1, 1), + (5, 2, 1), + (4, 3, 1), + (3, 4, 1), + (2, 5, 1), + (1, 5, 1), + (1, 4, 1), + (1, 3, 1), + (1, 2, 1), + (1, 1, 5), + (1, 1, 4), + (1, 1, 3), + (1, 1, 2), + (1, 2, 5), + (1, 3, 4), + (1, 4, 3), + (1, 5, 2), + (2, 1, 5), + (3, 1, 4), + (4, 1, 3), + (5, 1, 2), + (2, 2, 1), + (2, 4, 1), + (4, 2, 1), + (2, 3, 1), + (3, 3, 1), + (3, 2, 1), + (2, 1, 2), + (4, 1, 2), + (2, 1, 4), + (3, 1, 2), + (3, 1, 3), + (2, 1, 3), + (1, 2, 2), + (1, 2, 4), + (1, 4, 2), + (1, 2, 3), + (1, 3, 3), + (1, 3, 2), + (2, 2, 4), + (4, 2, 2), + (2, 4, 2), + (3, 2, 3), + (3, 3, 2), + (2, 3, 3), + (2, 2, 2), + (3, 2, 2), + (2, 3, 2), + (2, 2, 3), + ], + }, + 10: { + "element_name": "MSH_TET_286", + "element_type": 75, + "node_tuples": [ + (0, 0, 0), + (10, 0, 0), + (0, 10, 0), + (0, 0, 10), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), + (6, 0, 0), + (7, 0, 0), + (8, 0, 0), + (9, 0, 0), + (9, 1, 0), + (8, 2, 0), + (7, 3, 0), + (6, 4, 0), + (5, 5, 0), + (4, 6, 0), + (3, 7, 0), + (2, 8, 0), + (1, 9, 0), + (0, 9, 0), + (0, 8, 0), + (0, 7, 0), + (0, 6, 0), + (0, 5, 0), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), + (0, 1, 0), + (0, 0, 9), + (0, 0, 8), + (0, 0, 7), + (0, 0, 6), + (0, 0, 5), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (0, 0, 1), + (0, 1, 9), + (0, 2, 8), + (0, 3, 7), + (0, 4, 6), + (0, 5, 5), + (0, 6, 4), + (0, 7, 3), + (0, 8, 2), + (0, 9, 1), + (1, 0, 9), + (2, 0, 8), + (3, 0, 7), + (4, 0, 6), + (5, 0, 5), + (6, 0, 4), + (7, 0, 3), + (8, 0, 2), + (9, 0, 1), + (1, 1, 0), + (1, 8, 0), + (8, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (1, 5, 0), + (1, 6, 0), + (1, 7, 0), + (2, 7, 0), + (3, 6, 0), + (4, 5, 0), + (5, 4, 0), + (6, 3, 0), + (7, 2, 0), + (7, 1, 0), + (6, 1, 0), + (5, 1, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 6, 0), + (6, 2, 0), + (2, 3, 0), + (2, 4, 0), + (2, 5, 0), + (3, 5, 0), + (4, 4, 0), + (5, 3, 0), + (5, 2, 0), + (4, 2, 0), + (3, 2, 0), + (3, 3, 0), + (3, 4, 0), + (4, 3, 0), + (1, 0, 1), + (8, 0, 1), + (1, 0, 8), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (5, 0, 1), + (6, 0, 1), + (7, 0, 1), + (7, 0, 2), + (6, 0, 3), + (5, 0, 4), + (4, 0, 5), + (3, 0, 6), + (2, 0, 7), + (1, 0, 7), + (1, 0, 6), + (1, 0, 5), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (6, 0, 2), + (2, 0, 6), + (3, 0, 2), + (4, 0, 2), + (5, 0, 2), + (5, 0, 3), + (4, 0, 4), + (3, 0, 5), + (2, 0, 5), + (2, 0, 4), + (2, 0, 3), + (3, 0, 3), + (4, 0, 3), + (3, 0, 4), + (0, 1, 1), + (0, 1, 8), + (0, 8, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 1, 5), + (0, 1, 6), + (0, 1, 7), + (0, 2, 7), + (0, 3, 6), + (0, 4, 5), + (0, 5, 4), + (0, 6, 3), + (0, 7, 2), + (0, 7, 1), + (0, 6, 1), + (0, 5, 1), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 6), + (0, 6, 2), + (0, 2, 3), + (0, 2, 4), + (0, 2, 5), + (0, 3, 5), + (0, 4, 4), + (0, 5, 3), + (0, 5, 2), + (0, 4, 2), + (0, 3, 2), + (0, 3, 3), + (0, 3, 4), + (0, 4, 3), + (1, 1, 8), + (8, 1, 1), + (1, 8, 1), + (2, 1, 7), + (3, 1, 6), + (4, 1, 5), + (5, 1, 4), + (6, 1, 3), + (7, 1, 2), + (7, 2, 1), + (6, 3, 1), + (5, 4, 1), + (4, 5, 1), + (3, 6, 1), + (2, 7, 1), + (1, 7, 2), + (1, 6, 3), + (1, 5, 4), + (1, 4, 5), + (1, 3, 6), + (1, 2, 7), + (2, 2, 6), + (6, 2, 2), + (2, 6, 2), + (3, 2, 5), + (4, 2, 4), + (5, 2, 3), + (5, 3, 2), + (4, 4, 2), + (3, 5, 2), + (2, 5, 3), + (2, 4, 4), + (2, 3, 5), + (3, 3, 4), + (4, 3, 3), + (3, 4, 3), + (1, 1, 1), + (7, 1, 1), + (1, 7, 1), + (1, 1, 7), + (2, 1, 1), + (3, 1, 1), + (4, 1, 1), + (5, 1, 1), + (6, 1, 1), + (6, 2, 1), + (5, 3, 1), + (4, 4, 1), + (3, 5, 1), + (2, 6, 1), + (1, 6, 1), + (1, 5, 1), + (1, 4, 1), + (1, 3, 1), + (1, 2, 1), + (1, 1, 6), + (1, 1, 5), + (1, 1, 4), + (1, 1, 3), + (1, 1, 2), + (1, 2, 6), + (1, 3, 5), + (1, 4, 4), + (1, 5, 3), + (1, 6, 2), + (2, 1, 6), + (3, 1, 5), + (4, 1, 4), + (5, 1, 3), + (6, 1, 2), + (2, 2, 1), + (2, 5, 1), + (5, 2, 1), + (2, 3, 1), + (2, 4, 1), + (3, 4, 1), + (4, 3, 1), + (4, 2, 1), + (3, 2, 1), + (3, 3, 1), + (2, 1, 2), + (5, 1, 2), + (2, 1, 5), + (3, 1, 2), + (4, 1, 2), + (4, 1, 3), + (3, 1, 4), + (2, 1, 4), + (2, 1, 3), + (3, 1, 3), + (1, 2, 2), + (1, 2, 5), + (1, 5, 2), + (1, 2, 3), + (1, 2, 4), + (1, 3, 4), + (1, 4, 3), + (1, 4, 2), + (1, 3, 2), + (1, 3, 3), + (2, 2, 5), + (5, 2, 2), + (2, 5, 2), + (3, 2, 4), + (4, 2, 3), + (4, 3, 2), + (3, 4, 2), + (2, 4, 3), + (2, 3, 4), + (3, 3, 3), + (2, 2, 2), + (4, 2, 2), + (2, 4, 2), + (2, 2, 4), + (3, 2, 2), + (3, 3, 2), + (2, 3, 2), + (2, 2, 3), + (2, 3, 3), + (3, 2, 3), + ], + }, +} + +quadrangle_data = { + 1: { + "element_name": "MSH_QUA_4", + "element_type": 3, + "node_tuples": [(0, 0), (1, 0), (1, 1), (0, 1)], + }, + 2: { + "element_name": "MSH_QUA_9", + "element_type": 10, + "node_tuples": [ + (0, 0), + (1, 0), + (1, 1), + (0, 1), + (0, 0), + (1, 0), + (0, 1), + (0, 0), + (0, 0), + ], + }, + 3: { + "element_name": "MSH_QUA_16", + "element_type": 36, + "node_tuples": [ + (-1, -1), + (2, -1), + (2, 2), + (-1, 2), + (0, -1), + (0, -1), + (2, 0), + (2, 0), + (0, 2), + (0, 2), + (-1, 0), + (-1, 0), + (0, 0), + (0, 0), + (0, 0), + (0, 0), + ], + }, + 4: { + "element_name": "MSH_QUA_25", + "element_type": 37, + "node_tuples": [ + (-1, -1), + (2, -1), + (2, 2), + (-1, 2), + (0, -1), + (0, -1), + (1, -1), + (2, 0), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (0, 2), + (-1, 1), + (-1, 0), + (-1, 0), + (0, 0), + (1, 0), + (1, 1), + (0, 1), + (0, 0), + (1, 0), + (0, 1), + (0, 0), + (0, 0), + ], + }, + 5: { + "element_name": "MSH_QUA_36", + "element_type": 38, + "node_tuples": [ + (-2, -2), + (3, -2), + (3, 3), + (-2, 3), + (-1, -2), + (0, -2), + (1, -2), + (2, -2), + (3, -1), + (3, 0), + (3, 1), + (3, 2), + (2, 3), + (1, 3), + (0, 3), + (-1, 3), + (-2, 2), + (-2, 1), + (-2, 0), + (-2, -1), + (-1, -1), + (2, -1), + (2, 2), + (-1, 2), + (0, -1), + (1, -1), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (-1, 1), + (-1, 0), + (0, 0), + (1, 0), + (1, 1), + (0, 1), + ], + }, + 6: { + "element_name": "MSH_QUA_49", + "element_type": 47, + "node_tuples": [ + (-2, -2), + (3, -2), + (3, 3), + (-2, 3), + (-1, -2), + (0, -2), + (0, -2), + (1, -2), + (2, -2), + (3, -1), + (3, 0), + (3, 0), + (3, 1), + (3, 2), + (2, 3), + (1, 3), + (0, 3), + (0, 3), + (-1, 3), + (-2, 2), + (-2, 1), + (-2, 0), + (-2, 0), + (-2, -1), + (-1, -1), + (2, -1), + (2, 2), + (-1, 2), + (0, -1), + (0, -1), + (1, -1), + (2, 0), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (0, 2), + (-1, 1), + (-1, 0), + (-1, 0), + (0, 0), + (1, 0), + (1, 1), + (0, 1), + (0, 0), + (1, 0), + (0, 1), + (0, 0), + (0, 0), + ], + }, + 7: { + "element_name": "MSH_QUA_64", + "element_type": 48, + "node_tuples": [ + (-3, -3), + (4, -3), + (4, 4), + (-3, 4), + (-2, -3), + (-1, -3), + (0, -3), + (0, -3), + (1, -3), + (2, -3), + (4, -2), + (4, -1), + (4, 0), + (4, 0), + (4, 1), + (4, 2), + (2, 4), + (1, 4), + (0, 4), + (0, 4), + (-1, 4), + (-2, 4), + (-3, 2), + (-3, 1), + (-3, 0), + (-3, 0), + (-3, -1), + (-3, -2), + (-2, -2), + (2, -2), + (2, 2), + (-2, 2), + (-1, -2), + (0, -2), + (0, -2), + (1, -2), + (2, -1), + (2, 0), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (0, 2), + (-1, 2), + (-2, 1), + (-2, 0), + (-2, 0), + (-2, -1), + (-1, -1), + (1, -1), + (1, 1), + (-1, 1), + (0, -1), + (0, -1), + (1, 0), + (1, 0), + (0, 1), + (0, 1), + (-1, 0), + (-1, 0), + (0, 0), + (0, 0), + (0, 0), + (0, 0), + ], + }, + 8: { + "element_name": "MSH_QUA_81", + "element_type": 49, + "node_tuples": [ + (-3, -3), + (4, -3), + (4, 4), + (-3, 4), + (-2, -3), + (-1, -3), + (0, -3), + (0, -3), + (1, -3), + (2, -3), + (3, -3), + (4, -2), + (4, -1), + (4, 0), + (4, 0), + (4, 1), + (4, 2), + (4, 3), + (3, 4), + (2, 4), + (1, 4), + (0, 4), + (0, 4), + (-1, 4), + (-2, 4), + (-3, 3), + (-3, 2), + (-3, 1), + (-3, 0), + (-3, 0), + (-3, -1), + (-3, -2), + (-2, -2), + (3, -2), + (3, 3), + (-2, 3), + (-1, -2), + (0, -2), + (0, -2), + (1, -2), + (2, -2), + (3, -1), + (3, 0), + (3, 0), + (3, 1), + (3, 2), + (2, 3), + (1, 3), + (0, 3), + (0, 3), + (-1, 3), + (-2, 2), + (-2, 1), + (-2, 0), + (-2, 0), + (-2, -1), + (-1, -1), + (2, -1), + (2, 2), + (-1, 2), + (0, -1), + (0, -1), + (1, -1), + (2, 0), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (0, 2), + (-1, 1), + (-1, 0), + (-1, 0), + (0, 0), + (1, 0), + (1, 1), + (0, 1), + (0, 0), + (1, 0), + (0, 1), + (0, 0), + (0, 0), + ], + }, + 9: { + "element_name": "MSH_QUA_100", + "element_type": 50, + "node_tuples": [ + (-4, -4), + (5, -4), + (5, 5), + (-4, 5), + (-3, -4), + (-2, -4), + (-1, -4), + (0, -4), + (1, -4), + (1, -4), + (2, -4), + (3, -4), + (5, -3), + (5, -2), + (5, -1), + (5, 0), + (5, 1), + (5, 1), + (5, 2), + (5, 3), + (3, 5), + (2, 5), + (1, 5), + (1, 5), + (0, 5), + (-1, 5), + (-2, 5), + (-3, 5), + (-4, 3), + (-4, 2), + (-4, 1), + (-4, 1), + (-4, 0), + (-4, -1), + (-4, -2), + (-4, -3), + (-3, -3), + (3, -3), + (3, 3), + (-3, 3), + (-2, -3), + (-1, -3), + (0, -3), + (1, -3), + (1, -3), + (2, -3), + (3, -2), + (3, -1), + (3, 0), + (3, 1), + (3, 1), + (3, 2), + (2, 3), + (1, 3), + (1, 3), + (0, 3), + (-1, 3), + (-2, 3), + (-3, 2), + (-3, 1), + (-3, 1), + (-3, 0), + (-3, -1), + (-3, -2), + (-2, -2), + (2, -2), + (2, 2), + (-2, 2), + (-1, -2), + (0, -2), + (1, -2), + (1, -2), + (2, -1), + (2, 0), + (2, 1), + (2, 1), + (1, 2), + (1, 2), + (0, 2), + (-1, 2), + (-2, 1), + (-2, 1), + (-2, 0), + (-2, -1), + (-1, -1), + (1, -1), + (1, 1), + (-1, 1), + (0, -1), + (1, -1), + (1, 0), + (1, 1), + (1, 1), + (0, 1), + (-1, 1), + (-1, 0), + (0, 0), + (1, 0), + (1, 1), + (0, 1), + ], + }, + 10: { + "element_name": "MSH_QUA_121", + "element_type": 51, + "node_tuples": [ + (-4, -4), + (5, -4), + (5, 5), + (-4, 5), + (-3, -4), + (-2, -4), + (-1, -4), + (0, -4), + (0, -4), + (1, -4), + (2, -4), + (3, -4), + (4, -4), + (5, -3), + (5, -2), + (5, -1), + (5, 0), + (5, 0), + (5, 1), + (5, 2), + (5, 3), + (5, 4), + (4, 5), + (3, 5), + (2, 5), + (1, 5), + (0, 5), + (0, 5), + (-1, 5), + (-2, 5), + (-3, 5), + (-4, 4), + (-4, 3), + (-4, 2), + (-4, 1), + (-4, 0), + (-4, 0), + (-4, -1), + (-4, -2), + (-4, -3), + (-3, -3), + (4, -3), + (4, 4), + (-3, 4), + (-2, -3), + (-1, -3), + (0, -3), + (0, -3), + (1, -3), + (2, -3), + (3, -3), + (4, -2), + (4, -1), + (4, 0), + (4, 0), + (4, 1), + (4, 2), + (4, 3), + (3, 4), + (2, 4), + (1, 4), + (0, 4), + (0, 4), + (-1, 4), + (-2, 4), + (-3, 3), + (-3, 2), + (-3, 1), + (-3, 0), + (-3, 0), + (-3, -1), + (-3, -2), + (-2, -2), + (3, -2), + (3, 3), + (-2, 3), + (-1, -2), + (0, -2), + (0, -2), + (1, -2), + (2, -2), + (3, -1), + (3, 0), + (3, 0), + (3, 1), + (3, 2), + (2, 3), + (1, 3), + (0, 3), + (0, 3), + (-1, 3), + (-2, 2), + (-2, 1), + (-2, 0), + (-2, 0), + (-2, -1), + (-1, -1), + (2, -1), + (2, 2), + (-1, 2), + (0, -1), + (0, -1), + (1, -1), + (2, 0), + (2, 0), + (2, 1), + (1, 2), + (0, 2), + (0, 2), + (-1, 1), + (-1, 0), + (-1, 0), + (0, 0), + (1, 0), + (1, 1), + (0, 1), + (0, 0), + (1, 0), + (0, 1), + (0, 0), + (0, 0), + ], + }, +} + +hexahedron_data = { + 1: { + "element_name": "MSH_HEX_8", + "element_type": 5, + "node_tuples": [ + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + ], + }, + 2: { + "element_name": "MSH_HEX_27", + "element_type": 12, + "node_tuples": [ + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (1, 0, 0), + (0, 1, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 1), + (1, 0, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 0), + ], + }, + 3: { + "element_name": "MSH_HEX_64", + "element_type": 92, + "node_tuples": [ + (-1, -1, -1), + (2, -1, -1), + (2, 2, -1), + (-1, 2, -1), + (-1, -1, 2), + (2, -1, 2), + (2, 2, 2), + (-1, 2, 2), + (0, -1, -1), + (0, -1, -1), + (-1, 0, -1), + (-1, 0, -1), + (-1, -1, 0), + (-1, -1, 0), + (2, 0, -1), + (2, 0, -1), + (2, -1, 0), + (2, -1, 0), + (0, 2, -1), + (0, 2, -1), + (2, 2, 0), + (2, 2, 0), + (-1, 2, 0), + (-1, 2, 0), + (0, -1, 2), + (0, -1, 2), + (-1, 0, 2), + (-1, 0, 2), + (2, 0, 2), + (2, 0, 2), + (0, 2, 2), + (0, 2, 2), + (0, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, -1, 0), + (0, -1, 0), + (0, -1, 0), + (0, -1, 0), + (-1, 0, 0), + (-1, 0, 0), + (-1, 0, 0), + (-1, 0, 0), + (2, 0, 0), + (2, 0, 0), + (2, 0, 0), + (2, 0, 0), + (0, 2, 0), + (0, 2, 0), + (0, 2, 0), + (0, 2, 0), + (0, 0, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + ], + }, + 4: { + "element_name": "MSH_HEX_125", + "element_type": 93, + "node_tuples": [ + (-1, -1, -1), + (2, -1, -1), + (2, 2, -1), + (-1, 2, -1), + (-1, -1, 2), + (2, -1, 2), + (2, 2, 2), + (-1, 2, 2), + (0, -1, -1), + (0, -1, -1), + (1, -1, -1), + (-1, 0, -1), + (-1, 0, -1), + (-1, 1, -1), + (-1, -1, 0), + (-1, -1, 0), + (-1, -1, 1), + (2, 0, -1), + (2, 0, -1), + (2, 1, -1), + (2, -1, 0), + (2, -1, 0), + (2, -1, 1), + (1, 2, -1), + (0, 2, -1), + (0, 2, -1), + (2, 2, 0), + (2, 2, 0), + (2, 2, 1), + (-1, 2, 0), + (-1, 2, 0), + (-1, 2, 1), + (0, -1, 2), + (0, -1, 2), + (1, -1, 2), + (-1, 0, 2), + (-1, 0, 2), + (-1, 1, 2), + (2, 0, 2), + (2, 0, 2), + (2, 1, 2), + (1, 2, 2), + (0, 2, 2), + (0, 2, 2), + (0, 0, -1), + (0, 1, -1), + (1, 1, -1), + (1, 0, -1), + (0, 0, -1), + (0, 1, -1), + (1, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, -1, 0), + (1, -1, 0), + (1, -1, 1), + (0, -1, 1), + (0, -1, 0), + (1, -1, 0), + (0, -1, 1), + (0, -1, 0), + (0, -1, 0), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 1), + (-1, 1, 0), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 0), + (-1, 0, 0), + (-1, 0, 0), + (2, 0, 0), + (2, 1, 0), + (2, 1, 1), + (2, 0, 1), + (2, 0, 0), + (2, 1, 0), + (2, 0, 1), + (2, 0, 0), + (2, 0, 0), + (1, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 1), + (0, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 0), + (0, 2, 0), + (0, 0, 2), + (1, 0, 2), + (1, 1, 2), + (0, 1, 2), + (0, 0, 2), + (1, 0, 2), + (0, 1, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (1, 0, 0), + (0, 1, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 1), + (1, 0, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 0), + ], + }, + 5: { + "element_name": "MSH_HEX_216", + "element_type": 94, + "node_tuples": [ + (-2, -2, -2), + (3, -2, -2), + (3, 3, -2), + (-2, 3, -2), + (-2, -2, 3), + (3, -2, 3), + (3, 3, 3), + (-2, 3, 3), + (-1, -2, -2), + (0, -2, -2), + (1, -2, -2), + (2, -2, -2), + (-2, -1, -2), + (-2, 0, -2), + (-2, 1, -2), + (-2, 2, -2), + (-2, -2, -1), + (-2, -2, 0), + (-2, -2, 1), + (-2, -2, 2), + (3, -1, -2), + (3, 0, -2), + (3, 1, -2), + (3, 2, -2), + (3, -2, -1), + (3, -2, 0), + (3, -2, 1), + (3, -2, 2), + (2, 3, -2), + (1, 3, -2), + (0, 3, -2), + (-1, 3, -2), + (3, 3, -1), + (3, 3, 0), + (3, 3, 1), + (3, 3, 2), + (-2, 3, -1), + (-2, 3, 0), + (-2, 3, 1), + (-2, 3, 2), + (-1, -2, 3), + (0, -2, 3), + (1, -2, 3), + (2, -2, 3), + (-2, -1, 3), + (-2, 0, 3), + (-2, 1, 3), + (-2, 2, 3), + (3, -1, 3), + (3, 0, 3), + (3, 1, 3), + (3, 2, 3), + (2, 3, 3), + (1, 3, 3), + (0, 3, 3), + (-1, 3, 3), + (-1, -1, -2), + (-1, 2, -2), + (2, 2, -2), + (2, -1, -2), + (-1, 0, -2), + (-1, 1, -2), + (0, 2, -2), + (1, 2, -2), + (2, 1, -2), + (2, 0, -2), + (1, -1, -2), + (0, -1, -2), + (0, 0, -2), + (0, 1, -2), + (1, 1, -2), + (1, 0, -2), + (-1, -2, -1), + (2, -2, -1), + (2, -2, 2), + (-1, -2, 2), + (0, -2, -1), + (1, -2, -1), + (2, -2, 0), + (2, -2, 1), + (1, -2, 2), + (0, -2, 2), + (-1, -2, 1), + (-1, -2, 0), + (0, -2, 0), + (1, -2, 0), + (1, -2, 1), + (0, -2, 1), + (-2, -1, -1), + (-2, -1, 2), + (-2, 2, 2), + (-2, 2, -1), + (-2, -1, 0), + (-2, -1, 1), + (-2, 0, 2), + (-2, 1, 2), + (-2, 2, 1), + (-2, 2, 0), + (-2, 1, -1), + (-2, 0, -1), + (-2, 0, 0), + (-2, 0, 1), + (-2, 1, 1), + (-2, 1, 0), + (3, -1, -1), + (3, 2, -1), + (3, 2, 2), + (3, -1, 2), + (3, 0, -1), + (3, 1, -1), + (3, 2, 0), + (3, 2, 1), + (3, 1, 2), + (3, 0, 2), + (3, -1, 1), + (3, -1, 0), + (3, 0, 0), + (3, 1, 0), + (3, 1, 1), + (3, 0, 1), + (2, 3, -1), + (-1, 3, -1), + (-1, 3, 2), + (2, 3, 2), + (1, 3, -1), + (0, 3, -1), + (-1, 3, 0), + (-1, 3, 1), + (0, 3, 2), + (1, 3, 2), + (2, 3, 1), + (2, 3, 0), + (1, 3, 0), + (0, 3, 0), + (0, 3, 1), + (1, 3, 1), + (-1, -1, 3), + (2, -1, 3), + (2, 2, 3), + (-1, 2, 3), + (0, -1, 3), + (1, -1, 3), + (2, 0, 3), + (2, 1, 3), + (1, 2, 3), + (0, 2, 3), + (-1, 1, 3), + (-1, 0, 3), + (0, 0, 3), + (1, 0, 3), + (1, 1, 3), + (0, 1, 3), + (-1, -1, -1), + (2, -1, -1), + (2, 2, -1), + (-1, 2, -1), + (-1, -1, 2), + (2, -1, 2), + (2, 2, 2), + (-1, 2, 2), + (0, -1, -1), + (1, -1, -1), + (-1, 0, -1), + (-1, 1, -1), + (-1, -1, 0), + (-1, -1, 1), + (2, 0, -1), + (2, 1, -1), + (2, -1, 0), + (2, -1, 1), + (1, 2, -1), + (0, 2, -1), + (2, 2, 0), + (2, 2, 1), + (-1, 2, 0), + (-1, 2, 1), + (0, -1, 2), + (1, -1, 2), + (-1, 0, 2), + (-1, 1, 2), + (2, 0, 2), + (2, 1, 2), + (1, 2, 2), + (0, 2, 2), + (0, 0, -1), + (0, 1, -1), + (1, 1, -1), + (1, 0, -1), + (0, -1, 0), + (1, -1, 0), + (1, -1, 1), + (0, -1, 1), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 1), + (-1, 1, 0), + (2, 0, 0), + (2, 1, 0), + (2, 1, 1), + (2, 0, 1), + (1, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 1), + (0, 0, 2), + (1, 0, 2), + (1, 1, 2), + (0, 1, 2), + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + ], + }, + 6: { + "element_name": "MSH_HEX_343", + "element_type": 95, + "node_tuples": [ + (-2, -2, -2), + (3, -2, -2), + (3, 3, -2), + (-2, 3, -2), + (-2, -2, 3), + (3, -2, 3), + (3, 3, 3), + (-2, 3, 3), + (-1, -2, -2), + (0, -2, -2), + (0, -2, -2), + (1, -2, -2), + (2, -2, -2), + (-2, -1, -2), + (-2, 0, -2), + (-2, 0, -2), + (-2, 1, -2), + (-2, 2, -2), + (-2, -2, -1), + (-2, -2, 0), + (-2, -2, 0), + (-2, -2, 1), + (-2, -2, 2), + (3, -1, -2), + (3, 0, -2), + (3, 0, -2), + (3, 1, -2), + (3, 2, -2), + (3, -2, -1), + (3, -2, 0), + (3, -2, 0), + (3, -2, 1), + (3, -2, 2), + (2, 3, -2), + (1, 3, -2), + (0, 3, -2), + (0, 3, -2), + (-1, 3, -2), + (3, 3, -1), + (3, 3, 0), + (3, 3, 0), + (3, 3, 1), + (3, 3, 2), + (-2, 3, -1), + (-2, 3, 0), + (-2, 3, 0), + (-2, 3, 1), + (-2, 3, 2), + (-1, -2, 3), + (0, -2, 3), + (0, -2, 3), + (1, -2, 3), + (2, -2, 3), + (-2, -1, 3), + (-2, 0, 3), + (-2, 0, 3), + (-2, 1, 3), + (-2, 2, 3), + (3, -1, 3), + (3, 0, 3), + (3, 0, 3), + (3, 1, 3), + (3, 2, 3), + (2, 3, 3), + (1, 3, 3), + (0, 3, 3), + (0, 3, 3), + (-1, 3, 3), + (-1, -1, -2), + (-1, 2, -2), + (2, 2, -2), + (2, -1, -2), + (-1, 0, -2), + (-1, 0, -2), + (-1, 1, -2), + (0, 2, -2), + (0, 2, -2), + (1, 2, -2), + (2, 1, -2), + (2, 0, -2), + (2, 0, -2), + (1, -1, -2), + (0, -1, -2), + (0, -1, -2), + (0, 0, -2), + (0, 1, -2), + (1, 1, -2), + (1, 0, -2), + (0, 0, -2), + (0, 1, -2), + (1, 0, -2), + (0, 0, -2), + (0, 0, -2), + (-1, -2, -1), + (2, -2, -1), + (2, -2, 2), + (-1, -2, 2), + (0, -2, -1), + (0, -2, -1), + (1, -2, -1), + (2, -2, 0), + (2, -2, 0), + (2, -2, 1), + (1, -2, 2), + (0, -2, 2), + (0, -2, 2), + (-1, -2, 1), + (-1, -2, 0), + (-1, -2, 0), + (0, -2, 0), + (1, -2, 0), + (1, -2, 1), + (0, -2, 1), + (0, -2, 0), + (1, -2, 0), + (0, -2, 1), + (0, -2, 0), + (0, -2, 0), + (-2, -1, -1), + (-2, -1, 2), + (-2, 2, 2), + (-2, 2, -1), + (-2, -1, 0), + (-2, -1, 0), + (-2, -1, 1), + (-2, 0, 2), + (-2, 0, 2), + (-2, 1, 2), + (-2, 2, 1), + (-2, 2, 0), + (-2, 2, 0), + (-2, 1, -1), + (-2, 0, -1), + (-2, 0, -1), + (-2, 0, 0), + (-2, 0, 1), + (-2, 1, 1), + (-2, 1, 0), + (-2, 0, 0), + (-2, 0, 1), + (-2, 1, 0), + (-2, 0, 0), + (-2, 0, 0), + (3, -1, -1), + (3, 2, -1), + (3, 2, 2), + (3, -1, 2), + (3, 0, -1), + (3, 0, -1), + (3, 1, -1), + (3, 2, 0), + (3, 2, 0), + (3, 2, 1), + (3, 1, 2), + (3, 0, 2), + (3, 0, 2), + (3, -1, 1), + (3, -1, 0), + (3, -1, 0), + (3, 0, 0), + (3, 1, 0), + (3, 1, 1), + (3, 0, 1), + (3, 0, 0), + (3, 1, 0), + (3, 0, 1), + (3, 0, 0), + (3, 0, 0), + (2, 3, -1), + (-1, 3, -1), + (-1, 3, 2), + (2, 3, 2), + (1, 3, -1), + (0, 3, -1), + (0, 3, -1), + (-1, 3, 0), + (-1, 3, 0), + (-1, 3, 1), + (0, 3, 2), + (0, 3, 2), + (1, 3, 2), + (2, 3, 1), + (2, 3, 0), + (2, 3, 0), + (1, 3, 0), + (0, 3, 0), + (0, 3, 1), + (1, 3, 1), + (0, 3, 0), + (0, 3, 0), + (0, 3, 1), + (1, 3, 0), + (0, 3, 0), + (-1, -1, 3), + (2, -1, 3), + (2, 2, 3), + (-1, 2, 3), + (0, -1, 3), + (0, -1, 3), + (1, -1, 3), + (2, 0, 3), + (2, 0, 3), + (2, 1, 3), + (1, 2, 3), + (0, 2, 3), + (0, 2, 3), + (-1, 1, 3), + (-1, 0, 3), + (-1, 0, 3), + (0, 0, 3), + (1, 0, 3), + (1, 1, 3), + (0, 1, 3), + (0, 0, 3), + (1, 0, 3), + (0, 1, 3), + (0, 0, 3), + (0, 0, 3), + (-1, -1, -1), + (2, -1, -1), + (2, 2, -1), + (-1, 2, -1), + (-1, -1, 2), + (2, -1, 2), + (2, 2, 2), + (-1, 2, 2), + (0, -1, -1), + (0, -1, -1), + (1, -1, -1), + (-1, 0, -1), + (-1, 0, -1), + (-1, 1, -1), + (-1, -1, 0), + (-1, -1, 0), + (-1, -1, 1), + (2, 0, -1), + (2, 0, -1), + (2, 1, -1), + (2, -1, 0), + (2, -1, 0), + (2, -1, 1), + (1, 2, -1), + (0, 2, -1), + (0, 2, -1), + (2, 2, 0), + (2, 2, 0), + (2, 2, 1), + (-1, 2, 0), + (-1, 2, 0), + (-1, 2, 1), + (0, -1, 2), + (0, -1, 2), + (1, -1, 2), + (-1, 0, 2), + (-1, 0, 2), + (-1, 1, 2), + (2, 0, 2), + (2, 0, 2), + (2, 1, 2), + (1, 2, 2), + (0, 2, 2), + (0, 2, 2), + (0, 0, -1), + (0, 1, -1), + (1, 1, -1), + (1, 0, -1), + (0, 0, -1), + (0, 1, -1), + (1, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, -1, 0), + (1, -1, 0), + (1, -1, 1), + (0, -1, 1), + (0, -1, 0), + (1, -1, 0), + (0, -1, 1), + (0, -1, 0), + (0, -1, 0), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 1), + (-1, 1, 0), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 0), + (-1, 0, 0), + (-1, 0, 0), + (2, 0, 0), + (2, 1, 0), + (2, 1, 1), + (2, 0, 1), + (2, 0, 0), + (2, 1, 0), + (2, 0, 1), + (2, 0, 0), + (2, 0, 0), + (1, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 1), + (0, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 0), + (0, 2, 0), + (0, 0, 2), + (1, 0, 2), + (1, 1, 2), + (0, 1, 2), + (0, 0, 2), + (1, 0, 2), + (0, 1, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (1, 0, 0), + (0, 1, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 1), + (1, 0, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 0), + ], + }, + 7: { + "element_name": "MSH_HEX_512", + "element_type": 96, + "node_tuples": [ + (-3, -3, -3), + (4, -3, -3), + (4, 4, -3), + (-3, 4, -3), + (-3, -3, 4), + (4, -3, 4), + (4, 4, 4), + (-3, 4, 4), + (-2, -3, -3), + (-1, -3, -3), + (0, -3, -3), + (0, -3, -3), + (1, -3, -3), + (2, -3, -3), + (-3, -2, -3), + (-3, -1, -3), + (-3, 0, -3), + (-3, 0, -3), + (-3, 1, -3), + (-3, 2, -3), + (-3, -3, -2), + (-3, -3, -1), + (-3, -3, 0), + (-3, -3, 0), + (-3, -3, 1), + (-3, -3, 2), + (4, -2, -3), + (4, -1, -3), + (4, 0, -3), + (4, 0, -3), + (4, 1, -3), + (4, 2, -3), + (4, -3, -2), + (4, -3, -1), + (4, -3, 0), + (4, -3, 0), + (4, -3, 1), + (4, -3, 2), + (2, 4, -3), + (1, 4, -3), + (0, 4, -3), + (0, 4, -3), + (-1, 4, -3), + (-2, 4, -3), + (4, 4, -2), + (4, 4, -1), + (4, 4, 0), + (4, 4, 0), + (4, 4, 1), + (4, 4, 2), + (-3, 4, -2), + (-3, 4, -1), + (-3, 4, 0), + (-3, 4, 0), + (-3, 4, 1), + (-3, 4, 2), + (-2, -3, 4), + (-1, -3, 4), + (0, -3, 4), + (0, -3, 4), + (1, -3, 4), + (2, -3, 4), + (-3, -2, 4), + (-3, -1, 4), + (-3, 0, 4), + (-3, 0, 4), + (-3, 1, 4), + (-3, 2, 4), + (4, -2, 4), + (4, -1, 4), + (4, 0, 4), + (4, 0, 4), + (4, 1, 4), + (4, 2, 4), + (2, 4, 4), + (1, 4, 4), + (0, 4, 4), + (0, 4, 4), + (-1, 4, 4), + (-2, 4, 4), + (-2, -2, -3), + (-2, 2, -3), + (2, 2, -3), + (2, -2, -3), + (-2, -1, -3), + (-2, 0, -3), + (-2, 0, -3), + (-2, 1, -3), + (-1, 2, -3), + (0, 2, -3), + (0, 2, -3), + (1, 2, -3), + (2, 1, -3), + (2, 0, -3), + (2, 0, -3), + (2, -1, -3), + (1, -2, -3), + (0, -2, -3), + (0, -2, -3), + (-1, -2, -3), + (-1, -1, -3), + (-1, 1, -3), + (1, 1, -3), + (1, -1, -3), + (-1, 0, -3), + (-1, 0, -3), + (0, 1, -3), + (0, 1, -3), + (1, 0, -3), + (1, 0, -3), + (0, -1, -3), + (0, -1, -3), + (0, 0, -3), + (0, 0, -3), + (0, 0, -3), + (0, 0, -3), + (-2, -3, -2), + (2, -3, -2), + (2, -3, 2), + (-2, -3, 2), + (-1, -3, -2), + (0, -3, -2), + (0, -3, -2), + (1, -3, -2), + (2, -3, -1), + (2, -3, 0), + (2, -3, 0), + (2, -3, 1), + (1, -3, 2), + (0, -3, 2), + (0, -3, 2), + (-1, -3, 2), + (-2, -3, 1), + (-2, -3, 0), + (-2, -3, 0), + (-2, -3, -1), + (-1, -3, -1), + (1, -3, -1), + (1, -3, 1), + (-1, -3, 1), + (0, -3, -1), + (0, -3, -1), + (1, -3, 0), + (1, -3, 0), + (0, -3, 1), + (0, -3, 1), + (-1, -3, 0), + (-1, -3, 0), + (0, -3, 0), + (0, -3, 0), + (0, -3, 0), + (0, -3, 0), + (-3, -2, -2), + (-3, -2, 2), + (-3, 2, 2), + (-3, 2, -2), + (-3, -2, -1), + (-3, -2, 0), + (-3, -2, 0), + (-3, -2, 1), + (-3, -1, 2), + (-3, 0, 2), + (-3, 0, 2), + (-3, 1, 2), + (-3, 2, 1), + (-3, 2, 0), + (-3, 2, 0), + (-3, 2, -1), + (-3, 1, -2), + (-3, 0, -2), + (-3, 0, -2), + (-3, -1, -2), + (-3, -1, -1), + (-3, -1, 1), + (-3, 1, 1), + (-3, 1, -1), + (-3, -1, 0), + (-3, -1, 0), + (-3, 0, 1), + (-3, 0, 1), + (-3, 1, 0), + (-3, 1, 0), + (-3, 0, -1), + (-3, 0, -1), + (-3, 0, 0), + (-3, 0, 0), + (-3, 0, 0), + (-3, 0, 0), + (4, -2, -2), + (4, 2, -2), + (4, 2, 2), + (4, -2, 2), + (4, -1, -2), + (4, 0, -2), + (4, 0, -2), + (4, 1, -2), + (4, 2, -1), + (4, 2, 0), + (4, 2, 0), + (4, 2, 1), + (4, 1, 2), + (4, 0, 2), + (4, 0, 2), + (4, -1, 2), + (4, -2, 1), + (4, -2, 0), + (4, -2, 0), + (4, -2, -1), + (4, -1, -1), + (4, 1, -1), + (4, 1, 1), + (4, -1, 1), + (4, 0, -1), + (4, 0, -1), + (4, 1, 0), + (4, 1, 0), + (4, 0, 1), + (4, 0, 1), + (4, -1, 0), + (4, -1, 0), + (4, 0, 0), + (4, 0, 0), + (4, 0, 0), + (4, 0, 0), + (2, 4, -2), + (-2, 4, -2), + (-2, 4, 2), + (2, 4, 2), + (1, 4, -2), + (0, 4, -2), + (0, 4, -2), + (-1, 4, -2), + (-2, 4, -1), + (-2, 4, 0), + (-2, 4, 0), + (-2, 4, 1), + (-1, 4, 2), + (0, 4, 2), + (0, 4, 2), + (1, 4, 2), + (2, 4, 1), + (2, 4, 0), + (2, 4, 0), + (2, 4, -1), + (1, 4, -1), + (-1, 4, -1), + (-1, 4, 1), + (1, 4, 1), + (0, 4, -1), + (0, 4, -1), + (-1, 4, 0), + (-1, 4, 0), + (0, 4, 1), + (0, 4, 1), + (1, 4, 0), + (1, 4, 0), + (0, 4, 0), + (0, 4, 0), + (0, 4, 0), + (0, 4, 0), + (-2, -2, 4), + (2, -2, 4), + (2, 2, 4), + (-2, 2, 4), + (-1, -2, 4), + (0, -2, 4), + (0, -2, 4), + (1, -2, 4), + (2, -1, 4), + (2, 0, 4), + (2, 0, 4), + (2, 1, 4), + (1, 2, 4), + (0, 2, 4), + (0, 2, 4), + (-1, 2, 4), + (-2, 1, 4), + (-2, 0, 4), + (-2, 0, 4), + (-2, -1, 4), + (-1, -1, 4), + (1, -1, 4), + (1, 1, 4), + (-1, 1, 4), + (0, -1, 4), + (0, -1, 4), + (1, 0, 4), + (1, 0, 4), + (0, 1, 4), + (0, 1, 4), + (-1, 0, 4), + (-1, 0, 4), + (0, 0, 4), + (0, 0, 4), + (0, 0, 4), + (0, 0, 4), + (-2, -2, -2), + (2, -2, -2), + (2, 2, -2), + (-2, 2, -2), + (-2, -2, 2), + (2, -2, 2), + (2, 2, 2), + (-2, 2, 2), + (-1, -2, -2), + (0, -2, -2), + (0, -2, -2), + (1, -2, -2), + (-2, -1, -2), + (-2, 0, -2), + (-2, 0, -2), + (-2, 1, -2), + (-2, -2, -1), + (-2, -2, 0), + (-2, -2, 0), + (-2, -2, 1), + (2, -1, -2), + (2, 0, -2), + (2, 0, -2), + (2, 1, -2), + (2, -2, -1), + (2, -2, 0), + (2, -2, 0), + (2, -2, 1), + (1, 2, -2), + (0, 2, -2), + (0, 2, -2), + (-1, 2, -2), + (2, 2, -1), + (2, 2, 0), + (2, 2, 0), + (2, 2, 1), + (-2, 2, -1), + (-2, 2, 0), + (-2, 2, 0), + (-2, 2, 1), + (-1, -2, 2), + (0, -2, 2), + (0, -2, 2), + (1, -2, 2), + (-2, -1, 2), + (-2, 0, 2), + (-2, 0, 2), + (-2, 1, 2), + (2, -1, 2), + (2, 0, 2), + (2, 0, 2), + (2, 1, 2), + (1, 2, 2), + (0, 2, 2), + (0, 2, 2), + (-1, 2, 2), + (-1, -1, -2), + (-1, 1, -2), + (1, 1, -2), + (1, -1, -2), + (-1, 0, -2), + (-1, 0, -2), + (0, 1, -2), + (0, 1, -2), + (1, 0, -2), + (1, 0, -2), + (0, -1, -2), + (0, -1, -2), + (0, 0, -2), + (0, 0, -2), + (0, 0, -2), + (0, 0, -2), + (-1, -2, -1), + (1, -2, -1), + (1, -2, 1), + (-1, -2, 1), + (0, -2, -1), + (0, -2, -1), + (1, -2, 0), + (1, -2, 0), + (0, -2, 1), + (0, -2, 1), + (-1, -2, 0), + (-1, -2, 0), + (0, -2, 0), + (0, -2, 0), + (0, -2, 0), + (0, -2, 0), + (-2, -1, -1), + (-2, -1, 1), + (-2, 1, 1), + (-2, 1, -1), + (-2, -1, 0), + (-2, -1, 0), + (-2, 0, 1), + (-2, 0, 1), + (-2, 1, 0), + (-2, 1, 0), + (-2, 0, -1), + (-2, 0, -1), + (-2, 0, 0), + (-2, 0, 0), + (-2, 0, 0), + (-2, 0, 0), + (2, -1, -1), + (2, 1, -1), + (2, 1, 1), + (2, -1, 1), + (2, 0, -1), + (2, 0, -1), + (2, 1, 0), + (2, 1, 0), + (2, 0, 1), + (2, 0, 1), + (2, -1, 0), + (2, -1, 0), + (2, 0, 0), + (2, 0, 0), + (2, 0, 0), + (2, 0, 0), + (1, 2, -1), + (-1, 2, -1), + (-1, 2, 1), + (1, 2, 1), + (0, 2, -1), + (0, 2, -1), + (-1, 2, 0), + (-1, 2, 0), + (0, 2, 1), + (0, 2, 1), + (1, 2, 0), + (1, 2, 0), + (0, 2, 0), + (0, 2, 0), + (0, 2, 0), + (0, 2, 0), + (-1, -1, 2), + (1, -1, 2), + (1, 1, 2), + (-1, 1, 2), + (0, -1, 2), + (0, -1, 2), + (1, 0, 2), + (1, 0, 2), + (0, 1, 2), + (0, 1, 2), + (-1, 0, 2), + (-1, 0, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 2), + (-1, -1, -1), + (1, -1, -1), + (1, 1, -1), + (-1, 1, -1), + (-1, -1, 1), + (1, -1, 1), + (1, 1, 1), + (-1, 1, 1), + (0, -1, -1), + (0, -1, -1), + (-1, 0, -1), + (-1, 0, -1), + (-1, -1, 0), + (-1, -1, 0), + (1, 0, -1), + (1, 0, -1), + (1, -1, 0), + (1, -1, 0), + (0, 1, -1), + (0, 1, -1), + (1, 1, 0), + (1, 1, 0), + (-1, 1, 0), + (-1, 1, 0), + (0, -1, 1), + (0, -1, 1), + (-1, 0, 1), + (-1, 0, 1), + (1, 0, 1), + (1, 0, 1), + (0, 1, 1), + (0, 1, 1), + (0, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, -1, 0), + (0, -1, 0), + (0, -1, 0), + (0, -1, 0), + (-1, 0, 0), + (-1, 0, 0), + (-1, 0, 0), + (-1, 0, 0), + (1, 0, 0), + (1, 0, 0), + (1, 0, 0), + (1, 0, 0), + (0, 1, 0), + (0, 1, 0), + (0, 1, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 1), + (0, 0, 1), + (0, 0, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + ], + }, + 8: { + "element_name": "MSH_HEX_729", + "element_type": 97, + "node_tuples": [ + (-3, -3, -3), + (4, -3, -3), + (4, 4, -3), + (-3, 4, -3), + (-3, -3, 4), + (4, -3, 4), + (4, 4, 4), + (-3, 4, 4), + (-2, -3, -3), + (-1, -3, -3), + (0, -3, -3), + (0, -3, -3), + (1, -3, -3), + (2, -3, -3), + (3, -3, -3), + (-3, -2, -3), + (-3, -1, -3), + (-3, 0, -3), + (-3, 0, -3), + (-3, 1, -3), + (-3, 2, -3), + (-3, 3, -3), + (-3, -3, -2), + (-3, -3, -1), + (-3, -3, 0), + (-3, -3, 0), + (-3, -3, 1), + (-3, -3, 2), + (-3, -3, 3), + (4, -2, -3), + (4, -1, -3), + (4, 0, -3), + (4, 0, -3), + (4, 1, -3), + (4, 2, -3), + (4, 3, -3), + (4, -3, -2), + (4, -3, -1), + (4, -3, 0), + (4, -3, 0), + (4, -3, 1), + (4, -3, 2), + (4, -3, 3), + (3, 4, -3), + (2, 4, -3), + (1, 4, -3), + (0, 4, -3), + (0, 4, -3), + (-1, 4, -3), + (-2, 4, -3), + (4, 4, -2), + (4, 4, -1), + (4, 4, 0), + (4, 4, 0), + (4, 4, 1), + (4, 4, 2), + (4, 4, 3), + (-3, 4, -2), + (-3, 4, -1), + (-3, 4, 0), + (-3, 4, 0), + (-3, 4, 1), + (-3, 4, 2), + (-3, 4, 3), + (-2, -3, 4), + (-1, -3, 4), + (0, -3, 4), + (0, -3, 4), + (1, -3, 4), + (2, -3, 4), + (3, -3, 4), + (-3, -2, 4), + (-3, -1, 4), + (-3, 0, 4), + (-3, 0, 4), + (-3, 1, 4), + (-3, 2, 4), + (-3, 3, 4), + (4, -2, 4), + (4, -1, 4), + (4, 0, 4), + (4, 0, 4), + (4, 1, 4), + (4, 2, 4), + (4, 3, 4), + (3, 4, 4), + (2, 4, 4), + (1, 4, 4), + (0, 4, 4), + (0, 4, 4), + (-1, 4, 4), + (-2, 4, 4), + (-2, -2, -3), + (-2, 3, -3), + (3, 3, -3), + (3, -2, -3), + (-2, -1, -3), + (-2, 0, -3), + (-2, 0, -3), + (-2, 1, -3), + (-2, 2, -3), + (-1, 3, -3), + (0, 3, -3), + (0, 3, -3), + (1, 3, -3), + (2, 3, -3), + (3, 2, -3), + (3, 1, -3), + (3, 0, -3), + (3, 0, -3), + (3, -1, -3), + (2, -2, -3), + (1, -2, -3), + (0, -2, -3), + (0, -2, -3), + (-1, -2, -3), + (-1, -1, -3), + (-1, 2, -3), + (2, 2, -3), + (2, -1, -3), + (-1, 0, -3), + (-1, 0, -3), + (-1, 1, -3), + (0, 2, -3), + (0, 2, -3), + (1, 2, -3), + (2, 1, -3), + (2, 0, -3), + (2, 0, -3), + (1, -1, -3), + (0, -1, -3), + (0, -1, -3), + (0, 0, -3), + (0, 1, -3), + (1, 1, -3), + (1, 0, -3), + (0, 0, -3), + (0, 1, -3), + (1, 0, -3), + (0, 0, -3), + (0, 0, -3), + (-2, -3, -2), + (3, -3, -2), + (3, -3, 3), + (-2, -3, 3), + (-1, -3, -2), + (0, -3, -2), + (0, -3, -2), + (1, -3, -2), + (2, -3, -2), + (3, -3, -1), + (3, -3, 0), + (3, -3, 0), + (3, -3, 1), + (3, -3, 2), + (2, -3, 3), + (1, -3, 3), + (0, -3, 3), + (0, -3, 3), + (-1, -3, 3), + (-2, -3, 2), + (-2, -3, 1), + (-2, -3, 0), + (-2, -3, 0), + (-2, -3, -1), + (-1, -3, -1), + (2, -3, -1), + (2, -3, 2), + (-1, -3, 2), + (0, -3, -1), + (0, -3, -1), + (1, -3, -1), + (2, -3, 0), + (2, -3, 0), + (2, -3, 1), + (1, -3, 2), + (0, -3, 2), + (0, -3, 2), + (-1, -3, 1), + (-1, -3, 0), + (-1, -3, 0), + (0, -3, 0), + (1, -3, 0), + (1, -3, 1), + (0, -3, 1), + (0, -3, 0), + (1, -3, 0), + (0, -3, 1), + (0, -3, 0), + (0, -3, 0), + (-3, -2, -2), + (-3, -2, 3), + (-3, 3, 3), + (-3, 3, -2), + (-3, -2, -1), + (-3, -2, 0), + (-3, -2, 0), + (-3, -2, 1), + (-3, -2, 2), + (-3, -1, 3), + (-3, 0, 3), + (-3, 0, 3), + (-3, 1, 3), + (-3, 2, 3), + (-3, 3, 2), + (-3, 3, 1), + (-3, 3, 0), + (-3, 3, 0), + (-3, 3, -1), + (-3, 2, -2), + (-3, 1, -2), + (-3, 0, -2), + (-3, 0, -2), + (-3, -1, -2), + (-3, -1, -1), + (-3, -1, 2), + (-3, 2, 2), + (-3, 2, -1), + (-3, -1, 0), + (-3, -1, 0), + (-3, -1, 1), + (-3, 0, 2), + (-3, 0, 2), + (-3, 1, 2), + (-3, 2, 1), + (-3, 2, 0), + (-3, 2, 0), + (-3, 1, -1), + (-3, 0, -1), + (-3, 0, -1), + (-3, 0, 0), + (-3, 0, 1), + (-3, 1, 1), + (-3, 1, 0), + (-3, 0, 0), + (-3, 0, 1), + (-3, 1, 0), + (-3, 0, 0), + (-3, 0, 0), + (4, -2, -2), + (4, 3, -2), + (4, 3, 3), + (4, -2, 3), + (4, -1, -2), + (4, 0, -2), + (4, 0, -2), + (4, 1, -2), + (4, 2, -2), + (4, 3, -1), + (4, 3, 0), + (4, 3, 0), + (4, 3, 1), + (4, 3, 2), + (4, 2, 3), + (4, 1, 3), + (4, 0, 3), + (4, 0, 3), + (4, -1, 3), + (4, -2, 2), + (4, -2, 1), + (4, -2, 0), + (4, -2, 0), + (4, -2, -1), + (4, -1, -1), + (4, 2, -1), + (4, 2, 2), + (4, -1, 2), + (4, 0, -1), + (4, 0, -1), + (4, 1, -1), + (4, 2, 0), + (4, 2, 0), + (4, 2, 1), + (4, 1, 2), + (4, 0, 2), + (4, 0, 2), + (4, -1, 1), + (4, -1, 0), + (4, -1, 0), + (4, 0, 0), + (4, 1, 0), + (4, 1, 1), + (4, 0, 1), + (4, 0, 0), + (4, 1, 0), + (4, 0, 1), + (4, 0, 0), + (4, 0, 0), + (3, 4, -2), + (-2, 4, -2), + (-2, 4, 3), + (3, 4, 3), + (2, 4, -2), + (1, 4, -2), + (0, 4, -2), + (0, 4, -2), + (-1, 4, -2), + (-2, 4, -1), + (-2, 4, 0), + (-2, 4, 0), + (-2, 4, 1), + (-2, 4, 2), + (-1, 4, 3), + (0, 4, 3), + (0, 4, 3), + (1, 4, 3), + (2, 4, 3), + (3, 4, 2), + (3, 4, 1), + (3, 4, 0), + (3, 4, 0), + (3, 4, -1), + (2, 4, -1), + (-1, 4, -1), + (-1, 4, 2), + (2, 4, 2), + (1, 4, -1), + (0, 4, -1), + (0, 4, -1), + (-1, 4, 0), + (-1, 4, 0), + (-1, 4, 1), + (0, 4, 2), + (0, 4, 2), + (1, 4, 2), + (2, 4, 1), + (2, 4, 0), + (2, 4, 0), + (1, 4, 0), + (0, 4, 0), + (0, 4, 1), + (1, 4, 1), + (0, 4, 0), + (0, 4, 0), + (0, 4, 1), + (1, 4, 0), + (0, 4, 0), + (-2, -2, 4), + (3, -2, 4), + (3, 3, 4), + (-2, 3, 4), + (-1, -2, 4), + (0, -2, 4), + (0, -2, 4), + (1, -2, 4), + (2, -2, 4), + (3, -1, 4), + (3, 0, 4), + (3, 0, 4), + (3, 1, 4), + (3, 2, 4), + (2, 3, 4), + (1, 3, 4), + (0, 3, 4), + (0, 3, 4), + (-1, 3, 4), + (-2, 2, 4), + (-2, 1, 4), + (-2, 0, 4), + (-2, 0, 4), + (-2, -1, 4), + (-1, -1, 4), + (2, -1, 4), + (2, 2, 4), + (-1, 2, 4), + (0, -1, 4), + (0, -1, 4), + (1, -1, 4), + (2, 0, 4), + (2, 0, 4), + (2, 1, 4), + (1, 2, 4), + (0, 2, 4), + (0, 2, 4), + (-1, 1, 4), + (-1, 0, 4), + (-1, 0, 4), + (0, 0, 4), + (1, 0, 4), + (1, 1, 4), + (0, 1, 4), + (0, 0, 4), + (1, 0, 4), + (0, 1, 4), + (0, 0, 4), + (0, 0, 4), + (-2, -2, -2), + (3, -2, -2), + (3, 3, -2), + (-2, 3, -2), + (-2, -2, 3), + (3, -2, 3), + (3, 3, 3), + (-2, 3, 3), + (-1, -2, -2), + (0, -2, -2), + (0, -2, -2), + (1, -2, -2), + (2, -2, -2), + (-2, -1, -2), + (-2, 0, -2), + (-2, 0, -2), + (-2, 1, -2), + (-2, 2, -2), + (-2, -2, -1), + (-2, -2, 0), + (-2, -2, 0), + (-2, -2, 1), + (-2, -2, 2), + (3, -1, -2), + (3, 0, -2), + (3, 0, -2), + (3, 1, -2), + (3, 2, -2), + (3, -2, -1), + (3, -2, 0), + (3, -2, 0), + (3, -2, 1), + (3, -2, 2), + (2, 3, -2), + (1, 3, -2), + (0, 3, -2), + (0, 3, -2), + (-1, 3, -2), + (3, 3, -1), + (3, 3, 0), + (3, 3, 0), + (3, 3, 1), + (3, 3, 2), + (-2, 3, -1), + (-2, 3, 0), + (-2, 3, 0), + (-2, 3, 1), + (-2, 3, 2), + (-1, -2, 3), + (0, -2, 3), + (0, -2, 3), + (1, -2, 3), + (2, -2, 3), + (-2, -1, 3), + (-2, 0, 3), + (-2, 0, 3), + (-2, 1, 3), + (-2, 2, 3), + (3, -1, 3), + (3, 0, 3), + (3, 0, 3), + (3, 1, 3), + (3, 2, 3), + (2, 3, 3), + (1, 3, 3), + (0, 3, 3), + (0, 3, 3), + (-1, 3, 3), + (-1, -1, -2), + (-1, 2, -2), + (2, 2, -2), + (2, -1, -2), + (-1, 0, -2), + (-1, 0, -2), + (-1, 1, -2), + (0, 2, -2), + (0, 2, -2), + (1, 2, -2), + (2, 1, -2), + (2, 0, -2), + (2, 0, -2), + (1, -1, -2), + (0, -1, -2), + (0, -1, -2), + (0, 0, -2), + (0, 1, -2), + (1, 1, -2), + (1, 0, -2), + (0, 0, -2), + (0, 1, -2), + (1, 0, -2), + (0, 0, -2), + (0, 0, -2), + (-1, -2, -1), + (2, -2, -1), + (2, -2, 2), + (-1, -2, 2), + (0, -2, -1), + (0, -2, -1), + (1, -2, -1), + (2, -2, 0), + (2, -2, 0), + (2, -2, 1), + (1, -2, 2), + (0, -2, 2), + (0, -2, 2), + (-1, -2, 1), + (-1, -2, 0), + (-1, -2, 0), + (0, -2, 0), + (1, -2, 0), + (1, -2, 1), + (0, -2, 1), + (0, -2, 0), + (1, -2, 0), + (0, -2, 1), + (0, -2, 0), + (0, -2, 0), + (-2, -1, -1), + (-2, -1, 2), + (-2, 2, 2), + (-2, 2, -1), + (-2, -1, 0), + (-2, -1, 0), + (-2, -1, 1), + (-2, 0, 2), + (-2, 0, 2), + (-2, 1, 2), + (-2, 2, 1), + (-2, 2, 0), + (-2, 2, 0), + (-2, 1, -1), + (-2, 0, -1), + (-2, 0, -1), + (-2, 0, 0), + (-2, 0, 1), + (-2, 1, 1), + (-2, 1, 0), + (-2, 0, 0), + (-2, 0, 1), + (-2, 1, 0), + (-2, 0, 0), + (-2, 0, 0), + (3, -1, -1), + (3, 2, -1), + (3, 2, 2), + (3, -1, 2), + (3, 0, -1), + (3, 0, -1), + (3, 1, -1), + (3, 2, 0), + (3, 2, 0), + (3, 2, 1), + (3, 1, 2), + (3, 0, 2), + (3, 0, 2), + (3, -1, 1), + (3, -1, 0), + (3, -1, 0), + (3, 0, 0), + (3, 1, 0), + (3, 1, 1), + (3, 0, 1), + (3, 0, 0), + (3, 1, 0), + (3, 0, 1), + (3, 0, 0), + (3, 0, 0), + (2, 3, -1), + (-1, 3, -1), + (-1, 3, 2), + (2, 3, 2), + (1, 3, -1), + (0, 3, -1), + (0, 3, -1), + (-1, 3, 0), + (-1, 3, 0), + (-1, 3, 1), + (0, 3, 2), + (0, 3, 2), + (1, 3, 2), + (2, 3, 1), + (2, 3, 0), + (2, 3, 0), + (1, 3, 0), + (0, 3, 0), + (0, 3, 1), + (1, 3, 1), + (0, 3, 0), + (0, 3, 0), + (0, 3, 1), + (1, 3, 0), + (0, 3, 0), + (-1, -1, 3), + (2, -1, 3), + (2, 2, 3), + (-1, 2, 3), + (0, -1, 3), + (0, -1, 3), + (1, -1, 3), + (2, 0, 3), + (2, 0, 3), + (2, 1, 3), + (1, 2, 3), + (0, 2, 3), + (0, 2, 3), + (-1, 1, 3), + (-1, 0, 3), + (-1, 0, 3), + (0, 0, 3), + (1, 0, 3), + (1, 1, 3), + (0, 1, 3), + (0, 0, 3), + (1, 0, 3), + (0, 1, 3), + (0, 0, 3), + (0, 0, 3), + (-1, -1, -1), + (2, -1, -1), + (2, 2, -1), + (-1, 2, -1), + (-1, -1, 2), + (2, -1, 2), + (2, 2, 2), + (-1, 2, 2), + (0, -1, -1), + (0, -1, -1), + (1, -1, -1), + (-1, 0, -1), + (-1, 0, -1), + (-1, 1, -1), + (-1, -1, 0), + (-1, -1, 0), + (-1, -1, 1), + (2, 0, -1), + (2, 0, -1), + (2, 1, -1), + (2, -1, 0), + (2, -1, 0), + (2, -1, 1), + (1, 2, -1), + (0, 2, -1), + (0, 2, -1), + (2, 2, 0), + (2, 2, 0), + (2, 2, 1), + (-1, 2, 0), + (-1, 2, 0), + (-1, 2, 1), + (0, -1, 2), + (0, -1, 2), + (1, -1, 2), + (-1, 0, 2), + (-1, 0, 2), + (-1, 1, 2), + (2, 0, 2), + (2, 0, 2), + (2, 1, 2), + (1, 2, 2), + (0, 2, 2), + (0, 2, 2), + (0, 0, -1), + (0, 1, -1), + (1, 1, -1), + (1, 0, -1), + (0, 0, -1), + (0, 1, -1), + (1, 0, -1), + (0, 0, -1), + (0, 0, -1), + (0, -1, 0), + (1, -1, 0), + (1, -1, 1), + (0, -1, 1), + (0, -1, 0), + (1, -1, 0), + (0, -1, 1), + (0, -1, 0), + (0, -1, 0), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 1), + (-1, 1, 0), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 0), + (-1, 0, 0), + (-1, 0, 0), + (2, 0, 0), + (2, 1, 0), + (2, 1, 1), + (2, 0, 1), + (2, 0, 0), + (2, 1, 0), + (2, 0, 1), + (2, 0, 0), + (2, 0, 0), + (1, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 1), + (0, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 0), + (0, 2, 0), + (0, 0, 2), + (1, 0, 2), + (1, 1, 2), + (0, 1, 2), + (0, 0, 2), + (1, 0, 2), + (0, 1, 2), + (0, 0, 2), + (0, 0, 2), + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (1, 0, 0), + (0, 1, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 1), + (1, 0, 1), + (0, 1, 1), + (0, 0, 0), + (0, 0, 0), + (0, 0, 0), + (1, 0, 0), + (0, 1, 0), + (0, 0, 1), + (0, 0, 0), + ], + }, + 9: { + "element_name": "MSH_HEX_1000", + "element_type": 98, + "node_tuples": [ + (-4, -4, -4), + (5, -4, -4), + (5, 5, -4), + (-4, 5, -4), + (-4, -4, 5), + (5, -4, 5), + (5, 5, 5), + (-4, 5, 5), + (-3, -4, -4), + (-2, -4, -4), + (-1, -4, -4), + (0, -4, -4), + (1, -4, -4), + (1, -4, -4), + (2, -4, -4), + (3, -4, -4), + (-4, -3, -4), + (-4, -2, -4), + (-4, -1, -4), + (-4, 0, -4), + (-4, 1, -4), + (-4, 1, -4), + (-4, 2, -4), + (-4, 3, -4), + (-4, -4, -3), + (-4, -4, -2), + (-4, -4, -1), + (-4, -4, 0), + (-4, -4, 1), + (-4, -4, 1), + (-4, -4, 2), + (-4, -4, 3), + (5, -3, -4), + (5, -2, -4), + (5, -1, -4), + (5, 0, -4), + (5, 1, -4), + (5, 1, -4), + (5, 2, -4), + (5, 3, -4), + (5, -4, -3), + (5, -4, -2), + (5, -4, -1), + (5, -4, 0), + (5, -4, 1), + (5, -4, 1), + (5, -4, 2), + (5, -4, 3), + (3, 5, -4), + (2, 5, -4), + (1, 5, -4), + (1, 5, -4), + (0, 5, -4), + (-1, 5, -4), + (-2, 5, -4), + (-3, 5, -4), + (5, 5, -3), + (5, 5, -2), + (5, 5, -1), + (5, 5, 0), + (5, 5, 1), + (5, 5, 1), + (5, 5, 2), + (5, 5, 3), + (-4, 5, -3), + (-4, 5, -2), + (-4, 5, -1), + (-4, 5, 0), + (-4, 5, 1), + (-4, 5, 1), + (-4, 5, 2), + (-4, 5, 3), + (-3, -4, 5), + (-2, -4, 5), + (-1, -4, 5), + (0, -4, 5), + (1, -4, 5), + (1, -4, 5), + (2, -4, 5), + (3, -4, 5), + (-4, -3, 5), + (-4, -2, 5), + (-4, -1, 5), + (-4, 0, 5), + (-4, 1, 5), + (-4, 1, 5), + (-4, 2, 5), + (-4, 3, 5), + (5, -3, 5), + (5, -2, 5), + (5, -1, 5), + (5, 0, 5), + (5, 1, 5), + (5, 1, 5), + (5, 2, 5), + (5, 3, 5), + (3, 5, 5), + (2, 5, 5), + (1, 5, 5), + (1, 5, 5), + (0, 5, 5), + (-1, 5, 5), + (-2, 5, 5), + (-3, 5, 5), + (-3, -3, -4), + (-3, 3, -4), + (3, 3, -4), + (3, -3, -4), + (-3, -2, -4), + (-3, -1, -4), + (-3, 0, -4), + (-3, 1, -4), + (-3, 1, -4), + (-3, 2, -4), + (-2, 3, -4), + (-1, 3, -4), + (0, 3, -4), + (1, 3, -4), + (1, 3, -4), + (2, 3, -4), + (3, 2, -4), + (3, 1, -4), + (3, 1, -4), + (3, 0, -4), + (3, -1, -4), + (3, -2, -4), + (2, -3, -4), + (1, -3, -4), + (1, -3, -4), + (0, -3, -4), + (-1, -3, -4), + (-2, -3, -4), + (-2, -2, -4), + (-2, 2, -4), + (2, 2, -4), + (2, -2, -4), + (-2, -1, -4), + (-2, 0, -4), + (-2, 1, -4), + (-2, 1, -4), + (-1, 2, -4), + (0, 2, -4), + (1, 2, -4), + (1, 2, -4), + (2, 1, -4), + (2, 1, -4), + (2, 0, -4), + (2, -1, -4), + (1, -2, -4), + (1, -2, -4), + (0, -2, -4), + (-1, -2, -4), + (-1, -1, -4), + (-1, 1, -4), + (1, 1, -4), + (1, -1, -4), + (-1, 0, -4), + (-1, 1, -4), + (0, 1, -4), + (1, 1, -4), + (1, 1, -4), + (1, 0, -4), + (1, -1, -4), + (0, -1, -4), + (0, 0, -4), + (0, 1, -4), + (1, 1, -4), + (1, 0, -4), + (-3, -4, -3), + (3, -4, -3), + (3, -4, 3), + (-3, -4, 3), + (-2, -4, -3), + (-1, -4, -3), + (0, -4, -3), + (1, -4, -3), + (1, -4, -3), + (2, -4, -3), + (3, -4, -2), + (3, -4, -1), + (3, -4, 0), + (3, -4, 1), + (3, -4, 1), + (3, -4, 2), + (2, -4, 3), + (1, -4, 3), + (1, -4, 3), + (0, -4, 3), + (-1, -4, 3), + (-2, -4, 3), + (-3, -4, 2), + (-3, -4, 1), + (-3, -4, 1), + (-3, -4, 0), + (-3, -4, -1), + (-3, -4, -2), + (-2, -4, -2), + (2, -4, -2), + (2, -4, 2), + (-2, -4, 2), + (-1, -4, -2), + (0, -4, -2), + (1, -4, -2), + (1, -4, -2), + (2, -4, -1), + (2, -4, 0), + (2, -4, 1), + (2, -4, 1), + (1, -4, 2), + (1, -4, 2), + (0, -4, 2), + (-1, -4, 2), + (-2, -4, 1), + (-2, -4, 1), + (-2, -4, 0), + (-2, -4, -1), + (-1, -4, -1), + (1, -4, -1), + (1, -4, 1), + (-1, -4, 1), + (0, -4, -1), + (1, -4, -1), + (1, -4, 0), + (1, -4, 1), + (1, -4, 1), + (0, -4, 1), + (-1, -4, 1), + (-1, -4, 0), + (0, -4, 0), + (1, -4, 0), + (1, -4, 1), + (0, -4, 1), + (-4, -3, -3), + (-4, -3, 3), + (-4, 3, 3), + (-4, 3, -3), + (-4, -3, -2), + (-4, -3, -1), + (-4, -3, 0), + (-4, -3, 1), + (-4, -3, 1), + (-4, -3, 2), + (-4, -2, 3), + (-4, -1, 3), + (-4, 0, 3), + (-4, 1, 3), + (-4, 1, 3), + (-4, 2, 3), + (-4, 3, 2), + (-4, 3, 1), + (-4, 3, 1), + (-4, 3, 0), + (-4, 3, -1), + (-4, 3, -2), + (-4, 2, -3), + (-4, 1, -3), + (-4, 1, -3), + (-4, 0, -3), + (-4, -1, -3), + (-4, -2, -3), + (-4, -2, -2), + (-4, -2, 2), + (-4, 2, 2), + (-4, 2, -2), + (-4, -2, -1), + (-4, -2, 0), + (-4, -2, 1), + (-4, -2, 1), + (-4, -1, 2), + (-4, 0, 2), + (-4, 1, 2), + (-4, 1, 2), + (-4, 2, 1), + (-4, 2, 1), + (-4, 2, 0), + (-4, 2, -1), + (-4, 1, -2), + (-4, 1, -2), + (-4, 0, -2), + (-4, -1, -2), + (-4, -1, -1), + (-4, -1, 1), + (-4, 1, 1), + (-4, 1, -1), + (-4, -1, 0), + (-4, -1, 1), + (-4, 0, 1), + (-4, 1, 1), + (-4, 1, 1), + (-4, 1, 0), + (-4, 1, -1), + (-4, 0, -1), + (-4, 0, 0), + (-4, 0, 1), + (-4, 1, 1), + (-4, 1, 0), + (5, -3, -3), + (5, 3, -3), + (5, 3, 3), + (5, -3, 3), + (5, -2, -3), + (5, -1, -3), + (5, 0, -3), + (5, 1, -3), + (5, 1, -3), + (5, 2, -3), + (5, 3, -2), + (5, 3, -1), + (5, 3, 0), + (5, 3, 1), + (5, 3, 1), + (5, 3, 2), + (5, 2, 3), + (5, 1, 3), + (5, 1, 3), + (5, 0, 3), + (5, -1, 3), + (5, -2, 3), + (5, -3, 2), + (5, -3, 1), + (5, -3, 1), + (5, -3, 0), + (5, -3, -1), + (5, -3, -2), + (5, -2, -2), + (5, 2, -2), + (5, 2, 2), + (5, -2, 2), + (5, -1, -2), + (5, 0, -2), + (5, 1, -2), + (5, 1, -2), + (5, 2, -1), + (5, 2, 0), + (5, 2, 1), + (5, 2, 1), + (5, 1, 2), + (5, 1, 2), + (5, 0, 2), + (5, -1, 2), + (5, -2, 1), + (5, -2, 1), + (5, -2, 0), + (5, -2, -1), + (5, -1, -1), + (5, 1, -1), + (5, 1, 1), + (5, -1, 1), + (5, 0, -1), + (5, 1, -1), + (5, 1, 0), + (5, 1, 1), + (5, 1, 1), + (5, 0, 1), + (5, -1, 1), + (5, -1, 0), + (5, 0, 0), + (5, 1, 0), + (5, 1, 1), + (5, 0, 1), + (3, 5, -3), + (-3, 5, -3), + (-3, 5, 3), + (3, 5, 3), + (2, 5, -3), + (1, 5, -3), + (1, 5, -3), + (0, 5, -3), + (-1, 5, -3), + (-2, 5, -3), + (-3, 5, -2), + (-3, 5, -1), + (-3, 5, 0), + (-3, 5, 1), + (-3, 5, 1), + (-3, 5, 2), + (-2, 5, 3), + (-1, 5, 3), + (0, 5, 3), + (1, 5, 3), + (1, 5, 3), + (2, 5, 3), + (3, 5, 2), + (3, 5, 1), + (3, 5, 1), + (3, 5, 0), + (3, 5, -1), + (3, 5, -2), + (2, 5, -2), + (-2, 5, -2), + (-2, 5, 2), + (2, 5, 2), + (1, 5, -2), + (1, 5, -2), + (0, 5, -2), + (-1, 5, -2), + (-2, 5, -1), + (-2, 5, 0), + (-2, 5, 1), + (-2, 5, 1), + (-1, 5, 2), + (0, 5, 2), + (1, 5, 2), + (1, 5, 2), + (2, 5, 1), + (2, 5, 1), + (2, 5, 0), + (2, 5, -1), + (1, 5, -1), + (-1, 5, -1), + (-1, 5, 1), + (1, 5, 1), + (1, 5, -1), + (0, 5, -1), + (-1, 5, 0), + (-1, 5, 1), + (0, 5, 1), + (1, 5, 1), + (1, 5, 1), + (1, 5, 0), + (1, 5, 0), + (0, 5, 0), + (0, 5, 1), + (1, 5, 1), + (-3, -3, 5), + (3, -3, 5), + (3, 3, 5), + (-3, 3, 5), + (-2, -3, 5), + (-1, -3, 5), + (0, -3, 5), + (1, -3, 5), + (1, -3, 5), + (2, -3, 5), + (3, -2, 5), + (3, -1, 5), + (3, 0, 5), + (3, 1, 5), + (3, 1, 5), + (3, 2, 5), + (2, 3, 5), + (1, 3, 5), + (1, 3, 5), + (0, 3, 5), + (-1, 3, 5), + (-2, 3, 5), + (-3, 2, 5), + (-3, 1, 5), + (-3, 1, 5), + (-3, 0, 5), + (-3, -1, 5), + (-3, -2, 5), + (-2, -2, 5), + (2, -2, 5), + (2, 2, 5), + (-2, 2, 5), + (-1, -2, 5), + (0, -2, 5), + (1, -2, 5), + (1, -2, 5), + (2, -1, 5), + (2, 0, 5), + (2, 1, 5), + (2, 1, 5), + (1, 2, 5), + (1, 2, 5), + (0, 2, 5), + (-1, 2, 5), + (-2, 1, 5), + (-2, 1, 5), + (-2, 0, 5), + (-2, -1, 5), + (-1, -1, 5), + (1, -1, 5), + (1, 1, 5), + (-1, 1, 5), + (0, -1, 5), + (1, -1, 5), + (1, 0, 5), + (1, 1, 5), + (1, 1, 5), + (0, 1, 5), + (-1, 1, 5), + (-1, 0, 5), + (0, 0, 5), + (1, 0, 5), + (1, 1, 5), + (0, 1, 5), + (-3, -3, -3), + (3, -3, -3), + (3, 3, -3), + (-3, 3, -3), + (-3, -3, 3), + (3, -3, 3), + (3, 3, 3), + (-3, 3, 3), + (-2, -3, -3), + (-1, -3, -3), + (0, -3, -3), + (1, -3, -3), + (1, -3, -3), + (2, -3, -3), + (-3, -2, -3), + (-3, -1, -3), + (-3, 0, -3), + (-3, 1, -3), + (-3, 1, -3), + (-3, 2, -3), + (-3, -3, -2), + (-3, -3, -1), + (-3, -3, 0), + (-3, -3, 1), + (-3, -3, 1), + (-3, -3, 2), + (3, -2, -3), + (3, -1, -3), + (3, 0, -3), + (3, 1, -3), + (3, 1, -3), + (3, 2, -3), + (3, -3, -2), + (3, -3, -1), + (3, -3, 0), + (3, -3, 1), + (3, -3, 1), + (3, -3, 2), + (2, 3, -3), + (1, 3, -3), + (1, 3, -3), + (0, 3, -3), + (-1, 3, -3), + (-2, 3, -3), + (3, 3, -2), + (3, 3, -1), + (3, 3, 0), + (3, 3, 1), + (3, 3, 1), + (3, 3, 2), + (-3, 3, -2), + (-3, 3, -1), + (-3, 3, 0), + (-3, 3, 1), + (-3, 3, 1), + (-3, 3, 2), + (-2, -3, 3), + (-1, -3, 3), + (0, -3, 3), + (1, -3, 3), + (1, -3, 3), + (2, -3, 3), + (-3, -2, 3), + (-3, -1, 3), + (-3, 0, 3), + (-3, 1, 3), + (-3, 1, 3), + (-3, 2, 3), + (3, -2, 3), + (3, -1, 3), + (3, 0, 3), + (3, 1, 3), + (3, 1, 3), + (3, 2, 3), + (2, 3, 3), + (1, 3, 3), + (1, 3, 3), + (0, 3, 3), + (-1, 3, 3), + (-2, 3, 3), + (-2, -2, -3), + (-2, 2, -3), + (2, 2, -3), + (2, -2, -3), + (-2, -1, -3), + (-2, 0, -3), + (-2, 1, -3), + (-2, 1, -3), + (-1, 2, -3), + (0, 2, -3), + (1, 2, -3), + (1, 2, -3), + (2, 1, -3), + (2, 1, -3), + (2, 0, -3), + (2, -1, -3), + (1, -2, -3), + (1, -2, -3), + (0, -2, -3), + (-1, -2, -3), + (-1, -1, -3), + (-1, 1, -3), + (1, 1, -3), + (1, -1, -3), + (-1, 0, -3), + (-1, 1, -3), + (0, 1, -3), + (1, 1, -3), + (1, 1, -3), + (1, 0, -3), + (1, -1, -3), + (0, -1, -3), + (0, 0, -3), + (0, 1, -3), + (1, 1, -3), + (1, 0, -3), + (-2, -3, -2), + (2, -3, -2), + (2, -3, 2), + (-2, -3, 2), + (-1, -3, -2), + (0, -3, -2), + (1, -3, -2), + (1, -3, -2), + (2, -3, -1), + (2, -3, 0), + (2, -3, 1), + (2, -3, 1), + (1, -3, 2), + (1, -3, 2), + (0, -3, 2), + (-1, -3, 2), + (-2, -3, 1), + (-2, -3, 1), + (-2, -3, 0), + (-2, -3, -1), + (-1, -3, -1), + (1, -3, -1), + (1, -3, 1), + (-1, -3, 1), + (0, -3, -1), + (1, -3, -1), + (1, -3, 0), + (1, -3, 1), + (1, -3, 1), + (0, -3, 1), + (-1, -3, 1), + (-1, -3, 0), + (0, -3, 0), + (1, -3, 0), + (1, -3, 1), + (0, -3, 1), + (-3, -2, -2), + (-3, -2, 2), + (-3, 2, 2), + (-3, 2, -2), + (-3, -2, -1), + (-3, -2, 0), + (-3, -2, 1), + (-3, -2, 1), + (-3, -1, 2), + (-3, 0, 2), + (-3, 1, 2), + (-3, 1, 2), + (-3, 2, 1), + (-3, 2, 1), + (-3, 2, 0), + (-3, 2, -1), + (-3, 1, -2), + (-3, 1, -2), + (-3, 0, -2), + (-3, -1, -2), + (-3, -1, -1), + (-3, -1, 1), + (-3, 1, 1), + (-3, 1, -1), + (-3, -1, 0), + (-3, -1, 1), + (-3, 0, 1), + (-3, 1, 1), + (-3, 1, 1), + (-3, 1, 0), + (-3, 1, -1), + (-3, 0, -1), + (-3, 0, 0), + (-3, 0, 1), + (-3, 1, 1), + (-3, 1, 0), + (3, -2, -2), + (3, 2, -2), + (3, 2, 2), + (3, -2, 2), + (3, -1, -2), + (3, 0, -2), + (3, 1, -2), + (3, 1, -2), + (3, 2, -1), + (3, 2, 0), + (3, 2, 1), + (3, 2, 1), + (3, 1, 2), + (3, 1, 2), + (3, 0, 2), + (3, -1, 2), + (3, -2, 1), + (3, -2, 1), + (3, -2, 0), + (3, -2, -1), + (3, -1, -1), + (3, 1, -1), + (3, 1, 1), + (3, -1, 1), + (3, 0, -1), + (3, 1, -1), + (3, 1, 0), + (3, 1, 1), + (3, 1, 1), + (3, 0, 1), + (3, -1, 1), + (3, -1, 0), + (3, 0, 0), + (3, 1, 0), + (3, 1, 1), + (3, 0, 1), + (2, 3, -2), + (-2, 3, -2), + (-2, 3, 2), + (2, 3, 2), + (1, 3, -2), + (1, 3, -2), + (0, 3, -2), + (-1, 3, -2), + (-2, 3, -1), + (-2, 3, 0), + (-2, 3, 1), + (-2, 3, 1), + (-1, 3, 2), + (0, 3, 2), + (1, 3, 2), + (1, 3, 2), + (2, 3, 1), + (2, 3, 1), + (2, 3, 0), + (2, 3, -1), + (1, 3, -1), + (-1, 3, -1), + (-1, 3, 1), + (1, 3, 1), + (1, 3, -1), + (0, 3, -1), + (-1, 3, 0), + (-1, 3, 1), + (0, 3, 1), + (1, 3, 1), + (1, 3, 1), + (1, 3, 0), + (1, 3, 0), + (0, 3, 0), + (0, 3, 1), + (1, 3, 1), + (-2, -2, 3), + (2, -2, 3), + (2, 2, 3), + (-2, 2, 3), + (-1, -2, 3), + (0, -2, 3), + (1, -2, 3), + (1, -2, 3), + (2, -1, 3), + (2, 0, 3), + (2, 1, 3), + (2, 1, 3), + (1, 2, 3), + (1, 2, 3), + (0, 2, 3), + (-1, 2, 3), + (-2, 1, 3), + (-2, 1, 3), + (-2, 0, 3), + (-2, -1, 3), + (-1, -1, 3), + (1, -1, 3), + (1, 1, 3), + (-1, 1, 3), + (0, -1, 3), + (1, -1, 3), + (1, 0, 3), + (1, 1, 3), + (1, 1, 3), + (0, 1, 3), + (-1, 1, 3), + (-1, 0, 3), + (0, 0, 3), + (1, 0, 3), + (1, 1, 3), + (0, 1, 3), + (-2, -2, -2), + (2, -2, -2), + (2, 2, -2), + (-2, 2, -2), + (-2, -2, 2), + (2, -2, 2), + (2, 2, 2), + (-2, 2, 2), + (-1, -2, -2), + (0, -2, -2), + (1, -2, -2), + (1, -2, -2), + (-2, -1, -2), + (-2, 0, -2), + (-2, 1, -2), + (-2, 1, -2), + (-2, -2, -1), + (-2, -2, 0), + (-2, -2, 1), + (-2, -2, 1), + (2, -1, -2), + (2, 0, -2), + (2, 1, -2), + (2, 1, -2), + (2, -2, -1), + (2, -2, 0), + (2, -2, 1), + (2, -2, 1), + (1, 2, -2), + (1, 2, -2), + (0, 2, -2), + (-1, 2, -2), + (2, 2, -1), + (2, 2, 0), + (2, 2, 1), + (2, 2, 1), + (-2, 2, -1), + (-2, 2, 0), + (-2, 2, 1), + (-2, 2, 1), + (-1, -2, 2), + (0, -2, 2), + (1, -2, 2), + (1, -2, 2), + (-2, -1, 2), + (-2, 0, 2), + (-2, 1, 2), + (-2, 1, 2), + (2, -1, 2), + (2, 0, 2), + (2, 1, 2), + (2, 1, 2), + (1, 2, 2), + (1, 2, 2), + (0, 2, 2), + (-1, 2, 2), + (-1, -1, -2), + (-1, 1, -2), + (1, 1, -2), + (1, -1, -2), + (-1, 0, -2), + (-1, 1, -2), + (0, 1, -2), + (1, 1, -2), + (1, 1, -2), + (1, 0, -2), + (1, -1, -2), + (0, -1, -2), + (0, 0, -2), + (0, 1, -2), + (1, 1, -2), + (1, 0, -2), + (-1, -2, -1), + (1, -2, -1), + (1, -2, 1), + (-1, -2, 1), + (0, -2, -1), + (1, -2, -1), + (1, -2, 0), + (1, -2, 1), + (1, -2, 1), + (0, -2, 1), + (-1, -2, 1), + (-1, -2, 0), + (0, -2, 0), + (1, -2, 0), + (1, -2, 1), + (0, -2, 1), + (-2, -1, -1), + (-2, -1, 1), + (-2, 1, 1), + (-2, 1, -1), + (-2, -1, 0), + (-2, -1, 1), + (-2, 0, 1), + (-2, 1, 1), + (-2, 1, 1), + (-2, 1, 0), + (-2, 1, -1), + (-2, 0, -1), + (-2, 0, 0), + (-2, 0, 1), + (-2, 1, 1), + (-2, 1, 0), + (2, -1, -1), + (2, 1, -1), + (2, 1, 1), + (2, -1, 1), + (2, 0, -1), + (2, 1, -1), + (2, 1, 0), + (2, 1, 1), + (2, 1, 1), + (2, 0, 1), + (2, -1, 1), + (2, -1, 0), + (2, 0, 0), + (2, 1, 0), + (2, 1, 1), + (2, 0, 1), + (1, 2, -1), + (-1, 2, -1), + (-1, 2, 1), + (1, 2, 1), + (1, 2, -1), + (0, 2, -1), + (-1, 2, 0), + (-1, 2, 1), + (0, 2, 1), + (1, 2, 1), + (1, 2, 1), + (1, 2, 0), + (1, 2, 0), + (0, 2, 0), + (0, 2, 1), + (1, 2, 1), + (-1, -1, 2), + (1, -1, 2), + (1, 1, 2), + (-1, 1, 2), + (0, -1, 2), + (1, -1, 2), + (1, 0, 2), + (1, 1, 2), + (1, 1, 2), + (0, 1, 2), + (-1, 1, 2), + (-1, 0, 2), + (0, 0, 2), + (1, 0, 2), + (1, 1, 2), + (0, 1, 2), + (-1, -1, -1), + (1, -1, -1), + (1, 1, -1), + (-1, 1, -1), + (-1, -1, 1), + (1, -1, 1), + (1, 1, 1), + (-1, 1, 1), + (0, -1, -1), + (1, -1, -1), + (-1, 0, -1), + (-1, 1, -1), + (-1, -1, 0), + (-1, -1, 1), + (1, 0, -1), + (1, 1, -1), + (1, -1, 0), + (1, -1, 1), + (1, 1, -1), + (0, 1, -1), + (1, 1, 0), + (1, 1, 1), + (-1, 1, 0), + (-1, 1, 1), + (0, -1, 1), + (1, -1, 1), + (-1, 0, 1), + (-1, 1, 1), + (1, 0, 1), + (1, 1, 1), + (1, 1, 1), + (0, 1, 1), + (0, 0, -1), + (0, 1, -1), + (1, 1, -1), + (1, 0, -1), + (0, -1, 0), + (1, -1, 0), + (1, -1, 1), + (0, -1, 1), + (-1, 0, 0), + (-1, 0, 1), + (-1, 1, 1), + (-1, 1, 0), + (1, 0, 0), + (1, 1, 0), + (1, 1, 1), + (1, 0, 1), + (1, 1, 0), + (0, 1, 0), + (0, 1, 1), + (1, 1, 1), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + (0, 0, 0), + (1, 0, 0), + (1, 1, 0), + (0, 1, 0), + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + ], + }, +} diff --git a/gmsh_interop/reader.py b/gmsh_interop/reader.py index 620f07a..4bc8e20 100644 --- a/gmsh_interop/reader.py +++ b/gmsh_interop/reader.py @@ -250,27 +250,8 @@ class GmshTriangularElement(GmshSimplexElementBase): @memoize_method def gmsh_node_tuples(self): - return { - 1: [ - (0, 0), (1, 0), (0, 1), - ], - 2: [ - (0, 0), (2, 0), (0, 2), (1, 0), (1, 1), (0, 1), - ], - 3: [ - (0, 0), (3, 0), (0, 3), (1, 0), (2, 0), (2, 1), (1, 2), (0, 2), - (0, 1), (1, 1), - ], - 4: [ - (0, 0), (4, 0), (0, 4), (1, 0), (2, 0), (3, 0), (3, 1), (2, 2), - (1, 3), (0, 3), (0, 2), (0, 1), (1, 1), (2, 1), (1, 2), - ], - 5: [ - (0, 0), (5, 0), (0, 5), (1, 0), (2, 0), (3, 0), (4, 0), (4, 1), - (3, 2), (2, 3), (1, 4), (0, 4), (0, 3), (0, 2), (0, 1), (1, 1), - (3, 1), (1, 3), (2, 1), (2, 2), (1, 2), - ], - }[self.order] + from gmsh_interop.node_tuples import triangle_data + return triangle_data[self.order]["node_tuples"] class GmshTetrahedralElement(GmshSimplexElementBase): @@ -278,36 +259,8 @@ class GmshTetrahedralElement(GmshSimplexElementBase): @memoize_method def gmsh_node_tuples(self): - # gmsh's node ordering is on crack - return { - 1: [(0, 0, 0), (1, 0, 0), (0, 1, 0), (0, 0, 1)], - 2: [ - (0, 0, 0), (2, 0, 0), (0, 2, 0), (0, 0, 2), (1, 0, 0), (1, 1, 0), - (0, 1, 0), (0, 0, 1), (0, 1, 1), (1, 0, 1)], - 3: [ - (0, 0, 0), (3, 0, 0), (0, 3, 0), (0, 0, 3), (1, 0, 0), (2, 0, 0), - (2, 1, 0), (1, 2, 0), (0, 2, 0), (0, 1, 0), (0, 0, 2), (0, 0, 1), - (0, 1, 2), (0, 2, 1), (1, 0, 2), (2, 0, 1), (1, 1, 0), (1, 0, 1), - (0, 1, 1), (1, 1, 1)], - 4: [ - (0, 0, 0), (4, 0, 0), (0, 4, 0), (0, 0, 4), (1, 0, 0), (2, 0, 0), - (3, 0, 0), (3, 1, 0), (2, 2, 0), (1, 3, 0), (0, 3, 0), (0, 2, 0), - (0, 1, 0), (0, 0, 3), (0, 0, 2), (0, 0, 1), (0, 1, 3), (0, 2, 2), - (0, 3, 1), (1, 0, 3), (2, 0, 2), (3, 0, 1), (1, 1, 0), (1, 2, 0), - (2, 1, 0), (1, 0, 1), (2, 0, 1), (1, 0, 2), (0, 1, 1), (0, 1, 2), - (0, 2, 1), (1, 1, 2), (2, 1, 1), (1, 2, 1), (1, 1, 1)], - 5: [ - (0, 0, 0), (5, 0, 0), (0, 5, 0), (0, 0, 5), (1, 0, 0), (2, 0, 0), - (3, 0, 0), (4, 0, 0), (4, 1, 0), (3, 2, 0), (2, 3, 0), (1, 4, 0), - (0, 4, 0), (0, 3, 0), (0, 2, 0), (0, 1, 0), (0, 0, 4), (0, 0, 3), - (0, 0, 2), (0, 0, 1), (0, 1, 4), (0, 2, 3), (0, 3, 2), (0, 4, 1), - (1, 0, 4), (2, 0, 3), (3, 0, 2), (4, 0, 1), (1, 1, 0), (1, 3, 0), - (3, 1, 0), (1, 2, 0), (2, 2, 0), (2, 1, 0), (1, 0, 1), (3, 0, 1), - (1, 0, 3), (2, 0, 1), (2, 0, 2), (1, 0, 2), (0, 1, 1), (0, 1, 3), - (0, 3, 1), (0, 1, 2), (0, 2, 2), (0, 2, 1), (1, 1, 3), (3, 1, 1), - (1, 3, 1), (2, 1, 2), (2, 2, 1), (1, 2, 2), (1, 1, 1), (2, 1, 1), - (1, 2, 1), (1, 1, 2)], - }[self.order] + from gmsh_interop.node_tuples import tetrahedron_data + return tetrahedron_data[self.order]["node_tuples"] # }}} @@ -354,29 +307,8 @@ class GmshQuadrilateralElement(GmshTensorProductElementBase): @memoize_method def gmsh_node_tuples(self): - # gmsh's node ordering is still on crack - return { - 1: [(0, 0), (0, 1), (1, 1), (1, 0), ], - 2: [ - # start index 0: vertices - (0, 0), (0, 2), (2, 2), (2, 0), - # start index 4: edges - (1, 0), (2, 1), (1, 2), (0, 1), - # start index 8: volume - (1, 1)], - 3: [ - # vertices - (0, 0), (0, 3), (3, 3), (3, 0), - # edges - (1, 0), (2, 0), - (3, 1), (3, 2), - (1, 3), (2, 3), - (0, 1), (0, 2), - # volume - (1, 1), (2, 1), - (1, 2), (2, 2), - ], - }[self.order] + from gmsh_interop.node_tuples import quadrangle_data + return quadrangle_data[self.order]["node_tuples"] class GmshHexahedralElement(GmshTensorProductElementBase): @@ -384,82 +316,8 @@ class GmshHexahedralElement(GmshTensorProductElementBase): @memoize_method def gmsh_node_tuples(self): - # gmsh's node ordering is always on crack - - # obtained by using the files in - # contrib/extract-gmsh-node-order - # with gmsh 2.7.1 - - return { - 1: [ - (0, 0, 0), (0, 1, 0), (1, 1, 0), (1, 0, 0), - (0, 0, 1), (0, 1, 1), (1, 1, 1), (1, 0, 1), - ], - - 2: [ - (0, 0, 0), (0, 0, 2), (2, 0, 2), (2, 0, 0), - (0, 2, 0), (0, 2, 2), (2, 2, 2), (2, 2, 0), - (0, 0, 1), (1, 0, 0), (0, 1, 0), (1, 0, 2), - (0, 1, 2), (2, 0, 1), (2, 1, 2), (2, 1, 0), - (0, 2, 1), (1, 2, 0), (1, 2, 2), (2, 2, 1), - (1, 0, 1), (0, 1, 1), (1, 1, 0), (1, 1, 2), - (2, 1, 1), (1, 2, 1), (1, 1, 1), - ], - - 3: [ - (0, 3, 3), (3, 3, 3), (3, 0, 3), (0, 0, 3), - (0, 3, 0), (3, 3, 0), (3, 0, 0), (0, 0, 0), - (1, 3, 3), (2, 3, 3), (0, 2, 3), (0, 1, 3), - (0, 3, 2), (0, 3, 1), (3, 2, 3), (3, 1, 3), - (3, 3, 2), (3, 3, 1), (2, 0, 3), (1, 0, 3), - (3, 0, 2), (3, 0, 1), (0, 0, 2), (0, 0, 1), - (1, 3, 0), (2, 3, 0), (0, 2, 0), (0, 1, 0), - (3, 2, 0), (3, 1, 0), (2, 0, 0), (1, 0, 0), - (1, 2, 3), (1, 1, 3), (2, 1, 3), (2, 2, 3), - (1, 3, 2), (2, 3, 2), (2, 3, 1), (1, 3, 1), - (0, 2, 2), (0, 2, 1), (0, 1, 1), (0, 1, 2), - (3, 2, 2), (3, 1, 2), (3, 1, 1), (3, 2, 1), - (2, 0, 2), (1, 0, 2), (1, 0, 1), (2, 0, 1), - (1, 2, 0), (2, 2, 0), (2, 1, 0), (1, 1, 0), - (1, 2, 2), (2, 2, 2), (2, 1, 2), (1, 1, 2), - (1, 2, 1), (2, 2, 1), (2, 1, 1), (1, 1, 1), - ], - 4: [ - (4, 0, 0), (4, 4, 0), (0, 4, 0), (0, 0, 0), - (4, 0, 4), (4, 4, 4), (0, 4, 4), (0, 0, 4), - (4, 1, 0), (4, 2, 0), (4, 3, 0), (3, 0, 0), - (2, 0, 0), (1, 0, 0), (4, 0, 1), (4, 0, 2), - (4, 0, 3), (3, 4, 0), (2, 4, 0), (1, 4, 0), - (4, 4, 1), (4, 4, 2), (4, 4, 3), (0, 3, 0), - (0, 2, 0), (0, 1, 0), (0, 4, 1), (0, 4, 2), - (0, 4, 3), (0, 0, 1), (0, 0, 2), (0, 0, 3), - (4, 1, 4), (4, 2, 4), (4, 3, 4), (3, 0, 4), - (2, 0, 4), (1, 0, 4), (3, 4, 4), (2, 4, 4), - (1, 4, 4), (0, 3, 4), (0, 2, 4), (0, 1, 4), - (3, 1, 0), (1, 1, 0), (1, 3, 0), (3, 3, 0), - (2, 1, 0), (1, 2, 0), (2, 3, 0), (3, 2, 0), - (2, 2, 0), (4, 1, 1), (4, 3, 1), (4, 3, 3), - (4, 1, 3), (4, 2, 1), (4, 3, 2), (4, 2, 3), - (4, 1, 2), (4, 2, 2), (3, 0, 1), (3, 0, 3), - (1, 0, 3), (1, 0, 1), (3, 0, 2), (2, 0, 3), - (1, 0, 2), (2, 0, 1), (2, 0, 2), (3, 4, 1), - (1, 4, 1), (1, 4, 3), (3, 4, 3), (2, 4, 1), - (1, 4, 2), (2, 4, 3), (3, 4, 2), (2, 4, 2), - (0, 3, 1), (0, 1, 1), (0, 1, 3), (0, 3, 3), - (0, 2, 1), (0, 1, 2), (0, 2, 3), (0, 3, 2), - (0, 2, 2), (3, 1, 4), (3, 3, 4), (1, 3, 4), - (1, 1, 4), (3, 2, 4), (2, 3, 4), (1, 2, 4), - (2, 1, 4), (2, 2, 4), (3, 1, 1), (3, 3, 1), - (1, 3, 1), (1, 1, 1), (3, 1, 3), (3, 3, 3), - (1, 3, 3), (1, 1, 3), (3, 2, 1), (2, 1, 1), - (3, 1, 2), (2, 3, 1), (3, 3, 2), (1, 2, 1), - (1, 3, 2), (1, 1, 2), (3, 2, 3), (2, 1, 3), - (2, 3, 3), (1, 2, 3), (2, 2, 1), (3, 2, 2), - (2, 1, 2), (2, 3, 2), (1, 2, 2), (2, 2, 3), - (2, 2, 2), - ] - - }[self.order] + from gmsh_interop.node_tuples import hexahedron_data + return hexahedron_data[self.order]["node_tuples"] # }}} From 8d552b30946d35ecdae8015c62802212f40ee560 Mon Sep 17 00:00:00 2001 From: Alexandru Fikl Date: Mon, 9 Nov 2020 09:27:50 -0600 Subject: [PATCH 3/6] fix quad node tuples --- contrib/gmsh-node-tuples.py | 3 +- gmsh_interop/node_tuples.py | 6880 +++++++++++++++++------------------ 2 files changed, 3442 insertions(+), 3441 deletions(-) diff --git a/contrib/gmsh-node-tuples.py b/contrib/gmsh-node-tuples.py index 80dd296..78d6c75 100644 --- a/contrib/gmsh-node-tuples.py +++ b/contrib/gmsh-node-tuples.py @@ -78,7 +78,6 @@ def generate_node_tuples_from_gmsh(eltype, eldim, elvertices, domain="unit"): assert dim == eldim assert nvertices == elvertices - nodes = nodes.reshape(nnodes, dim) * order if domain == "unit": pass elif domain == "biunit": @@ -86,6 +85,8 @@ def generate_node_tuples_from_gmsh(eltype, eldim, elvertices, domain="unit"): else: raise ValueError(f"unknown domain: '{domain}'") + nodes = nodes.reshape(nnodes, dim) * order + # }}} return [tuple(node) for node in nodes.astype(int)] diff --git a/gmsh_interop/node_tuples.py b/gmsh_interop/node_tuples.py index 0c0a83a..20b6f49 100644 --- a/gmsh_interop/node_tuples.py +++ b/gmsh_interop/node_tuples.py @@ -1408,576 +1408,562 @@ "element_type": 10, "node_tuples": [ (0, 0), + (2, 0), + (2, 2), + (0, 2), (1, 0), - (1, 1), - (0, 1), - (0, 0), - (1, 0), + (2, 1), + (1, 2), (0, 1), - (0, 0), - (0, 0), + (1, 1), ], }, 3: { "element_name": "MSH_QUA_16", "element_type": 36, "node_tuples": [ - (-1, -1), - (2, -1), - (2, 2), - (-1, 2), - (0, -1), - (0, -1), - (2, 0), - (2, 0), - (0, 2), - (0, 2), - (-1, 0), - (-1, 0), - (0, 0), - (0, 0), - (0, 0), - (0, 0), - ], - }, - 4: { - "element_name": "MSH_QUA_25", - "element_type": 37, - "node_tuples": [ - (-1, -1), - (2, -1), - (2, 2), - (-1, 2), - (0, -1), - (0, -1), - (1, -1), - (2, 0), - (2, 0), - (2, 1), - (1, 2), - (0, 2), - (0, 2), - (-1, 1), - (-1, 0), - (-1, 0), - (0, 0), - (1, 0), - (1, 1), - (0, 1), - (0, 0), - (1, 0), - (0, 1), - (0, 0), (0, 0), - ], - }, - 5: { - "element_name": "MSH_QUA_36", - "element_type": 38, - "node_tuples": [ - (-2, -2), - (3, -2), - (3, 3), - (-2, 3), - (-1, -2), - (0, -2), - (1, -2), - (2, -2), - (3, -1), (3, 0), - (3, 1), - (3, 2), - (2, 3), - (1, 3), + (3, 3), (0, 3), - (-1, 3), - (-2, 2), - (-2, 1), - (-2, 0), - (-2, -1), - (-1, -1), - (2, -1), - (2, 2), - (-1, 2), - (0, -1), - (1, -1), - (2, 0), - (2, 1), - (1, 2), - (0, 2), - (-1, 1), - (-1, 0), - (0, 0), (1, 0), - (1, 1), - (0, 1), - ], - }, - 6: { - "element_name": "MSH_QUA_49", - "element_type": 47, - "node_tuples": [ - (-2, -2), - (3, -2), - (3, 3), - (-2, 3), - (-1, -2), - (0, -2), - (0, -2), - (1, -2), - (2, -2), - (3, -1), - (3, 0), - (3, 0), + (2, 0), (3, 1), (3, 2), (2, 3), (1, 3), - (0, 3), - (0, 3), - (-1, 3), - (-2, 2), - (-2, 1), - (-2, 0), - (-2, 0), - (-2, -1), - (-1, -1), - (2, -1), - (2, 2), - (-1, 2), - (0, -1), - (0, -1), - (1, -1), - (2, 0), - (2, 0), - (2, 1), - (1, 2), - (0, 2), (0, 2), - (-1, 1), - (-1, 0), - (-1, 0), - (0, 0), - (1, 0), - (1, 1), - (0, 1), - (0, 0), - (1, 0), (0, 1), - (0, 0), - (0, 0), - ], - }, - 7: { - "element_name": "MSH_QUA_64", - "element_type": 48, - "node_tuples": [ - (-3, -3), - (4, -3), - (4, 4), - (-3, 4), - (-2, -3), - (-1, -3), - (0, -3), - (0, -3), - (1, -3), - (2, -3), - (4, -2), - (4, -1), - (4, 0), - (4, 0), - (4, 1), - (4, 2), - (2, 4), - (1, 4), - (0, 4), - (0, 4), - (-1, 4), - (-2, 4), - (-3, 2), - (-3, 1), - (-3, 0), - (-3, 0), - (-3, -1), - (-3, -2), - (-2, -2), - (2, -2), - (2, 2), - (-2, 2), - (-1, -2), - (0, -2), - (0, -2), - (1, -2), - (2, -1), - (2, 0), - (2, 0), + (1, 1), (2, 1), + (2, 2), (1, 2), - (0, 2), - (0, 2), - (-1, 2), - (-2, 1), - (-2, 0), - (-2, 0), - (-2, -1), - (-1, -1), - (1, -1), - (1, 1), - (-1, 1), - (0, -1), - (0, -1), - (1, 0), - (1, 0), - (0, 1), - (0, 1), - (-1, 0), - (-1, 0), - (0, 0), - (0, 0), - (0, 0), - (0, 0), ], }, - 8: { - "element_name": "MSH_QUA_81", - "element_type": 49, + 4: { + "element_name": "MSH_QUA_25", + "element_type": 37, "node_tuples": [ - (-3, -3), - (4, -3), - (4, 4), - (-3, 4), - (-2, -3), - (-1, -3), - (0, -3), - (0, -3), - (1, -3), - (2, -3), - (3, -3), - (4, -2), - (4, -1), - (4, 0), + (0, 0), (4, 0), + (4, 4), + (0, 4), + (1, 0), + (2, 0), + (3, 0), (4, 1), (4, 2), (4, 3), (3, 4), (2, 4), (1, 4), - (0, 4), - (0, 4), - (-1, 4), - (-2, 4), - (-3, 3), - (-3, 2), - (-3, 1), - (-3, 0), - (-3, 0), - (-3, -1), - (-3, -2), - (-2, -2), - (3, -2), - (3, 3), - (-2, 3), - (-1, -2), - (0, -2), - (0, -2), - (1, -2), - (2, -2), - (3, -1), - (3, 0), - (3, 0), + (0, 3), + (0, 2), + (0, 1), + (1, 1), (3, 1), - (3, 2), - (2, 3), + (3, 3), (1, 3), - (0, 3), - (0, 3), - (-1, 3), - (-2, 2), - (-2, 1), - (-2, 0), - (-2, 0), - (-2, -1), - (-1, -1), - (2, -1), - (2, 2), - (-1, 2), - (0, -1), - (0, -1), - (1, -1), - (2, 0), - (2, 0), (2, 1), + (3, 2), + (2, 3), (1, 2), - (0, 2), - (0, 2), - (-1, 1), - (-1, 0), - (-1, 0), - (0, 0), - (1, 0), - (1, 1), - (0, 1), - (0, 0), - (1, 0), - (0, 1), - (0, 0), - (0, 0), + (2, 2), ], }, - 9: { - "element_name": "MSH_QUA_100", - "element_type": 50, + 5: { + "element_name": "MSH_QUA_36", + "element_type": 38, "node_tuples": [ - (-4, -4), - (5, -4), - (5, 5), - (-4, 5), - (-3, -4), - (-2, -4), - (-1, -4), - (0, -4), - (1, -4), - (1, -4), - (2, -4), - (3, -4), - (5, -3), - (5, -2), - (5, -1), + (0, 0), (5, 0), - (5, 1), + (5, 5), + (0, 5), + (1, 0), + (2, 0), + (3, 0), + (4, 0), (5, 1), (5, 2), (5, 3), + (5, 4), + (4, 5), (3, 5), (2, 5), (1, 5), - (1, 5), - (0, 5), - (-1, 5), - (-2, 5), - (-3, 5), - (-4, 3), - (-4, 2), - (-4, 1), - (-4, 1), - (-4, 0), - (-4, -1), - (-4, -2), - (-4, -3), - (-3, -3), - (3, -3), - (3, 3), - (-3, 3), - (-2, -3), - (-1, -3), - (0, -3), - (1, -3), - (1, -3), - (2, -3), - (3, -2), - (3, -1), - (3, 0), - (3, 1), - (3, 1), - (3, 2), - (2, 3), - (1, 3), - (1, 3), + (0, 4), (0, 3), - (-1, 3), - (-2, 3), - (-3, 2), - (-3, 1), - (-3, 1), - (-3, 0), - (-3, -1), - (-3, -2), - (-2, -2), - (2, -2), - (2, 2), - (-2, 2), - (-1, -2), - (0, -2), - (1, -2), - (1, -2), - (2, -1), - (2, 0), - (2, 1), - (2, 1), - (1, 2), - (1, 2), (0, 2), - (-1, 2), - (-2, 1), - (-2, 1), - (-2, 0), - (-2, -1), - (-1, -1), - (1, -1), - (1, 1), - (-1, 1), - (0, -1), - (1, -1), - (1, 0), - (1, 1), - (1, 1), (0, 1), - (-1, 1), - (-1, 0), - (0, 0), - (1, 0), (1, 1), - (0, 1), + (4, 1), + (4, 4), + (1, 4), + (2, 1), + (3, 1), + (4, 2), + (4, 3), + (3, 4), + (2, 4), + (1, 3), + (1, 2), + (2, 2), + (3, 2), + (3, 3), + (2, 3), ], }, - 10: { - "element_name": "MSH_QUA_121", - "element_type": 51, + 6: { + "element_name": "MSH_QUA_49", + "element_type": 47, "node_tuples": [ - (-4, -4), - (5, -4), - (5, 5), - (-4, 5), - (-3, -4), - (-2, -4), - (-1, -4), - (0, -4), - (0, -4), - (1, -4), - (2, -4), - (3, -4), - (4, -4), - (5, -3), - (5, -2), - (5, -1), + (0, 0), + (6, 0), + (6, 6), + (0, 6), + (0, 0), + (2, 0), + (3, 0), + (4, 0), (5, 0), + (6, 0), + (6, 2), + (6, 3), + (6, 4), + (6, 5), + (5, 6), + (4, 6), + (3, 6), + (2, 6), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 0), + (0, 0), (5, 0), - (5, 1), + (5, 5), + (0, 5), + (2, 0), + (3, 0), + (4, 0), (5, 2), (5, 3), (5, 4), (4, 5), (3, 5), (2, 5), - (1, 5), - (0, 5), - (0, 5), - (-1, 5), - (-2, 5), - (-3, 5), - (-4, 4), - (-4, 3), - (-4, 2), - (-4, 1), - (-4, 0), - (-4, 0), - (-4, -1), - (-4, -2), - (-4, -3), - (-3, -3), - (4, -3), + (0, 4), + (0, 3), + (0, 2), + (2, 2), + (4, 2), (4, 4), - (-3, 4), - (-2, -3), - (-1, -3), - (0, -3), - (0, -3), - (1, -3), - (2, -3), - (3, -3), - (4, -2), - (4, -1), + (2, 4), + (3, 2), + (4, 3), + (3, 4), + (2, 3), + (3, 3), + ], + }, + 7: { + "element_name": "MSH_QUA_64", + "element_type": 48, + "node_tuples": [ + (0, 0), + (7, 0), + (7, 7), + (0, 7), + (1, 0), + (2, 0), + (3, 0), (4, 0), (4, 0), + (6, 0), + (7, 1), + (7, 2), + (7, 3), + (7, 4), + (7, 4), + (7, 6), + (6, 7), + (4, 7), + (4, 7), + (3, 7), + (2, 7), + (1, 7), + (0, 6), + (0, 4), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (6, 1), + (6, 6), + (1, 6), + (2, 1), + (3, 1), (4, 1), + (4, 1), + (6, 2), + (6, 3), + (6, 4), + (6, 4), + (4, 6), + (4, 6), + (3, 6), + (2, 6), + (1, 4), + (1, 4), + (1, 3), + (1, 2), + (2, 2), + (4, 2), + (4, 4), + (2, 4), + (3, 2), (4, 2), (4, 3), + (4, 4), + (4, 4), (3, 4), (2, 4), - (1, 4), - (0, 4), - (0, 4), - (-1, 4), - (-2, 4), - (-3, 3), - (-3, 2), - (-3, 1), - (-3, 0), - (-3, 0), - (-3, -1), - (-3, -2), - (-2, -2), - (3, -2), + (2, 3), (3, 3), - (-2, 3), - (-1, -2), - (0, -2), - (0, -2), - (1, -2), - (2, -2), - (3, -1), - (3, 0), + (4, 3), + (4, 4), + (3, 4), + ], + }, + 8: { + "element_name": "MSH_QUA_81", + "element_type": 49, + "node_tuples": [ + (0, 0), + (8, 0), + (8, 8), + (0, 8), + (1, 0), + (2, 0), (3, 0), + (4, 0), + (5, 0), + (6, 0), + (7, 0), + (8, 1), + (8, 2), + (8, 3), + (8, 4), + (8, 5), + (8, 6), + (8, 7), + (7, 8), + (6, 8), + (5, 8), + (4, 8), + (3, 8), + (2, 8), + (1, 8), + (0, 7), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (7, 1), + (7, 7), + (1, 7), + (2, 1), (3, 1), - (3, 2), - (2, 3), + (4, 1), + (5, 1), + (6, 1), + (7, 2), + (7, 3), + (7, 4), + (7, 5), + (7, 6), + (6, 7), + (5, 7), + (4, 7), + (3, 7), + (2, 7), + (1, 6), + (1, 5), + (1, 4), (1, 3), - (0, 3), - (0, 3), - (-1, 3), - (-2, 2), - (-2, 1), - (-2, 0), - (-2, 0), - (-2, -1), - (-1, -1), - (2, -1), + (1, 2), (2, 2), - (-1, 2), - (0, -1), - (0, -1), - (1, -1), - (2, 0), + (6, 2), + (6, 6), + (2, 6), + (3, 2), + (4, 2), + (5, 2), + (6, 3), + (6, 4), + (6, 5), + (5, 6), + (4, 6), + (3, 6), + (2, 5), + (2, 4), + (2, 3), + (3, 3), + (5, 3), + (5, 5), + (3, 5), + (4, 3), + (5, 4), + (4, 5), + (3, 4), + (4, 4), + ], + }, + 9: { + "element_name": "MSH_QUA_100", + "element_type": 50, + "node_tuples": [ + (0, 0), + (9, 0), + (9, 9), + (0, 9), + (1, 0), (2, 0), + (3, 0), + (4, 0), + (5, 0), + (6, 0), + (6, 0), + (8, 0), + (9, 1), + (9, 2), + (9, 3), + (9, 4), + (9, 5), + (9, 6), + (9, 6), + (9, 8), + (8, 9), + (6, 9), + (6, 9), + (5, 9), + (4, 9), + (3, 9), + (2, 9), + (1, 9), + (0, 8), + (0, 6), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (0, 1), + (1, 1), + (8, 1), + (8, 8), + (1, 8), (2, 1), + (3, 1), + (4, 1), + (5, 1), + (6, 1), + (6, 1), + (8, 2), + (8, 3), + (8, 4), + (8, 5), + (8, 6), + (8, 6), + (6, 8), + (6, 8), + (5, 8), + (4, 8), + (3, 8), + (2, 8), + (1, 6), + (1, 6), + (1, 5), + (1, 4), + (1, 3), (1, 2), - (0, 2), - (0, 2), - (-1, 1), - (-1, 0), - (-1, 0), + (2, 2), + (6, 2), + (6, 6), + (2, 6), + (3, 2), + (4, 2), + (5, 2), + (6, 2), + (6, 3), + (6, 4), + (6, 5), + (6, 6), + (6, 6), + (5, 6), + (4, 6), + (3, 6), + (2, 6), + (2, 5), + (2, 4), + (2, 3), + (3, 3), + (6, 3), + (6, 6), + (3, 6), + (4, 3), + (5, 3), + (6, 4), + (6, 5), + (5, 6), + (4, 6), + (3, 5), + (3, 4), + (4, 4), + (5, 4), + (5, 5), + (4, 5), + ], + }, + 10: { + "element_name": "MSH_QUA_121", + "element_type": 51, + "node_tuples": [ (0, 0), - (1, 0), - (1, 1), - (0, 1), + (10, 0), + (10, 10), + (0, 10), (0, 0), - (1, 0), - (0, 1), + (2, 0), + (3, 0), + (4, 0), + (5, 0), + (6, 0), + (7, 0), + (8, 0), + (9, 0), + (10, 0), + (10, 2), + (10, 3), + (10, 4), + (10, 5), + (10, 6), + (10, 7), + (10, 8), + (10, 9), + (9, 10), + (8, 10), + (7, 10), + (6, 10), + (5, 10), + (4, 10), + (3, 10), + (2, 10), + (0, 10), + (0, 9), + (0, 8), + (0, 7), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), (0, 0), (0, 0), + (9, 0), + (9, 9), + (0, 9), + (2, 0), + (3, 0), + (4, 0), + (5, 0), + (6, 0), + (7, 0), + (8, 0), + (9, 2), + (9, 3), + (9, 4), + (9, 5), + (9, 6), + (9, 7), + (9, 8), + (8, 9), + (7, 9), + (6, 9), + (5, 9), + (4, 9), + (3, 9), + (2, 9), + (0, 8), + (0, 7), + (0, 6), + (0, 5), + (0, 4), + (0, 3), + (0, 2), + (2, 2), + (8, 2), + (8, 8), + (2, 8), + (3, 2), + (4, 2), + (5, 2), + (6, 2), + (7, 2), + (8, 3), + (8, 4), + (8, 5), + (8, 6), + (8, 7), + (7, 8), + (6, 8), + (5, 8), + (4, 8), + (3, 8), + (2, 7), + (2, 6), + (2, 5), + (2, 4), + (2, 3), + (3, 3), + (7, 3), + (7, 7), + (3, 7), + (4, 3), + (5, 3), + (6, 3), + (7, 4), + (7, 5), + (7, 6), + (6, 7), + (5, 7), + (4, 7), + (3, 6), + (3, 5), + (3, 4), + (4, 4), + (6, 4), + (6, 6), + (4, 6), + (5, 4), + (6, 5), + (5, 6), + (4, 5), + (5, 5), ], }, -} - -hexahedron_data = { - 1: { - "element_name": "MSH_HEX_8", - "element_type": 5, - "node_tuples": [ - (0, 0, 0), - (1, 0, 0), - (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (1, 0, 1), - (1, 1, 1), - (0, 1, 1), - ], - }, - 2: { - "element_name": "MSH_HEX_27", - "element_type": 12, +} + +hexahedron_data = { + 1: { + "element_name": "MSH_HEX_8", + "element_type": 5, "node_tuples": [ (0, 0, 0), (1, 0, 0), @@ -1987,3056 +1973,3070 @@ (1, 0, 1), (1, 1, 1), (0, 1, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (1, 0, 0), - (1, 0, 0), - (0, 1, 0), - (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 1), - (1, 0, 1), - (0, 1, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (1, 0, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 0), ], }, - 3: { - "element_name": "MSH_HEX_64", - "element_type": 92, + 2: { + "element_name": "MSH_HEX_27", + "element_type": 12, "node_tuples": [ - (-1, -1, -1), - (2, -1, -1), - (2, 2, -1), - (-1, 2, -1), - (-1, -1, 2), - (2, -1, 2), - (2, 2, 2), - (-1, 2, 2), - (0, -1, -1), - (0, -1, -1), - (-1, 0, -1), - (-1, 0, -1), - (-1, -1, 0), - (-1, -1, 0), - (2, 0, -1), - (2, 0, -1), - (2, -1, 0), - (2, -1, 0), - (0, 2, -1), - (0, 2, -1), - (2, 2, 0), - (2, 2, 0), - (-1, 2, 0), - (-1, 2, 0), - (0, -1, 2), - (0, -1, 2), - (-1, 0, 2), - (-1, 0, 2), - (2, 0, 2), - (2, 0, 2), - (0, 2, 2), - (0, 2, 2), - (0, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, -1, 0), - (0, -1, 0), - (0, -1, 0), - (0, -1, 0), - (-1, 0, 0), - (-1, 0, 0), - (-1, 0, 0), - (-1, 0, 0), - (2, 0, 0), - (2, 0, 0), - (2, 0, 0), + (0, 0, 0), (2, 0, 0), + (2, 2, 0), (0, 2, 0), - (0, 2, 0), - (0, 2, 0), - (0, 2, 0), - (0, 0, 2), - (0, 0, 2), - (0, 0, 2), (0, 0, 2), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - ], - }, - 4: { - "element_name": "MSH_HEX_125", - "element_type": 93, - "node_tuples": [ - (-1, -1, -1), - (2, -1, -1), - (2, 2, -1), - (-1, 2, -1), - (-1, -1, 2), - (2, -1, 2), - (2, 2, 2), - (-1, 2, 2), - (0, -1, -1), - (0, -1, -1), - (1, -1, -1), - (-1, 0, -1), - (-1, 0, -1), - (-1, 1, -1), - (-1, -1, 0), - (-1, -1, 0), - (-1, -1, 1), - (2, 0, -1), - (2, 0, -1), - (2, 1, -1), - (2, -1, 0), - (2, -1, 0), - (2, -1, 1), - (1, 2, -1), - (0, 2, -1), - (0, 2, -1), - (2, 2, 0), - (2, 2, 0), - (2, 2, 1), - (-1, 2, 0), - (-1, 2, 0), - (-1, 2, 1), - (0, -1, 2), - (0, -1, 2), - (1, -1, 2), - (-1, 0, 2), - (-1, 0, 2), - (-1, 1, 2), (2, 0, 2), - (2, 0, 2), - (2, 1, 2), - (1, 2, 2), - (0, 2, 2), + (2, 2, 2), (0, 2, 2), - (0, 0, -1), - (0, 1, -1), - (1, 1, -1), - (1, 0, -1), - (0, 0, -1), - (0, 1, -1), - (1, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, -1, 0), - (1, -1, 0), - (1, -1, 1), - (0, -1, 1), - (0, -1, 0), - (1, -1, 0), - (0, -1, 1), - (0, -1, 0), - (0, -1, 0), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 1), - (-1, 1, 0), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 0), - (-1, 0, 0), - (-1, 0, 0), - (2, 0, 0), - (2, 1, 0), - (2, 1, 1), - (2, 0, 1), - (2, 0, 0), + (1, 0, 0), + (0, 1, 0), + (0, 0, 1), (2, 1, 0), (2, 0, 1), - (2, 0, 0), - (2, 0, 0), (1, 2, 0), - (0, 2, 0), - (0, 2, 1), - (1, 2, 1), - (0, 2, 0), - (0, 2, 0), + (2, 2, 1), (0, 2, 1), - (1, 2, 0), - (0, 2, 0), - (0, 0, 2), - (1, 0, 2), - (1, 1, 2), - (0, 1, 2), - (0, 0, 2), (1, 0, 2), (0, 1, 2), - (0, 0, 2), - (0, 0, 2), - (0, 0, 0), - (1, 0, 0), - (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (1, 0, 1), - (1, 1, 1), - (0, 1, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (1, 0, 0), - (1, 0, 0), - (0, 1, 0), + (2, 1, 2), + (1, 2, 2), (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 1), (1, 0, 1), (0, 1, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (1, 0, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 0), + (2, 1, 1), + (1, 2, 1), + (1, 1, 2), + (1, 1, 1), ], }, - 5: { - "element_name": "MSH_HEX_216", - "element_type": 94, + 3: { + "element_name": "MSH_HEX_64", + "element_type": 92, "node_tuples": [ - (-2, -2, -2), - (3, -2, -2), - (3, 3, -2), - (-2, 3, -2), - (-2, -2, 3), - (3, -2, 3), - (3, 3, 3), - (-2, 3, 3), - (-1, -2, -2), - (0, -2, -2), - (1, -2, -2), - (2, -2, -2), - (-2, -1, -2), - (-2, 0, -2), - (-2, 1, -2), - (-2, 2, -2), - (-2, -2, -1), - (-2, -2, 0), - (-2, -2, 1), - (-2, -2, 2), - (3, -1, -2), - (3, 0, -2), - (3, 1, -2), - (3, 2, -2), - (3, -2, -1), - (3, -2, 0), - (3, -2, 1), - (3, -2, 2), - (2, 3, -2), - (1, 3, -2), - (0, 3, -2), - (-1, 3, -2), - (3, 3, -1), + (0, 0, 0), + (3, 0, 0), (3, 3, 0), + (0, 3, 0), + (0, 0, 3), + (3, 0, 3), + (3, 3, 3), + (0, 3, 3), + (1, 0, 0), + (2, 0, 0), + (0, 1, 0), + (0, 2, 0), + (0, 0, 1), + (0, 0, 2), + (3, 1, 0), + (3, 2, 0), + (3, 0, 1), + (3, 0, 2), + (2, 3, 0), + (1, 3, 0), (3, 3, 1), (3, 3, 2), - (-2, 3, -1), - (-2, 3, 0), - (-2, 3, 1), - (-2, 3, 2), - (-1, -2, 3), - (0, -2, 3), - (1, -2, 3), - (2, -2, 3), - (-2, -1, 3), - (-2, 0, 3), - (-2, 1, 3), - (-2, 2, 3), - (3, -1, 3), - (3, 0, 3), + (0, 3, 1), + (0, 3, 2), + (1, 0, 3), + (2, 0, 3), + (0, 1, 3), + (0, 2, 3), (3, 1, 3), (3, 2, 3), (2, 3, 3), (1, 3, 3), - (0, 3, 3), - (-1, 3, 3), - (-1, -1, -2), - (-1, 2, -2), - (2, 2, -2), - (2, -1, -2), - (-1, 0, -2), - (-1, 1, -2), - (0, 2, -2), - (1, 2, -2), - (2, 1, -2), - (2, 0, -2), - (1, -1, -2), - (0, -1, -2), - (0, 0, -2), - (0, 1, -2), - (1, 1, -2), - (1, 0, -2), - (-1, -2, -1), - (2, -2, -1), - (2, -2, 2), - (-1, -2, 2), - (0, -2, -1), - (1, -2, -1), - (2, -2, 0), - (2, -2, 1), - (1, -2, 2), - (0, -2, 2), - (-1, -2, 1), - (-1, -2, 0), - (0, -2, 0), - (1, -2, 0), - (1, -2, 1), - (0, -2, 1), - (-2, -1, -1), - (-2, -1, 2), - (-2, 2, 2), - (-2, 2, -1), - (-2, -1, 0), - (-2, -1, 1), - (-2, 0, 2), - (-2, 1, 2), - (-2, 2, 1), - (-2, 2, 0), - (-2, 1, -1), - (-2, 0, -1), - (-2, 0, 0), - (-2, 0, 1), - (-2, 1, 1), - (-2, 1, 0), - (3, -1, -1), - (3, 2, -1), - (3, 2, 2), - (3, -1, 2), - (3, 0, -1), - (3, 1, -1), - (3, 2, 0), + (1, 1, 0), + (1, 2, 0), + (2, 2, 0), + (2, 1, 0), + (1, 0, 1), + (2, 0, 1), + (2, 0, 2), + (1, 0, 2), + (0, 1, 1), + (0, 1, 2), + (0, 2, 2), + (0, 2, 1), + (3, 1, 1), (3, 2, 1), + (3, 2, 2), (3, 1, 2), - (3, 0, 2), - (3, -1, 1), - (3, -1, 0), - (3, 0, 0), - (3, 1, 0), - (3, 1, 1), - (3, 0, 1), - (2, 3, -1), - (-1, 3, -1), - (-1, 3, 2), - (2, 3, 2), - (1, 3, -1), - (0, 3, -1), - (-1, 3, 0), - (-1, 3, 1), - (0, 3, 2), - (1, 3, 2), (2, 3, 1), - (2, 3, 0), - (1, 3, 0), - (0, 3, 0), - (0, 3, 1), (1, 3, 1), - (-1, -1, 3), - (2, -1, 3), - (2, 2, 3), - (-1, 2, 3), - (0, -1, 3), - (1, -1, 3), - (2, 0, 3), + (1, 3, 2), + (2, 3, 2), + (1, 1, 3), (2, 1, 3), + (2, 2, 3), (1, 2, 3), - (0, 2, 3), - (-1, 1, 3), - (-1, 0, 3), - (0, 0, 3), - (1, 0, 3), - (1, 1, 3), - (0, 1, 3), - (-1, -1, -1), - (2, -1, -1), - (2, 2, -1), - (-1, 2, -1), - (-1, -1, 2), - (2, -1, 2), - (2, 2, 2), - (-1, 2, 2), - (0, -1, -1), - (1, -1, -1), - (-1, 0, -1), - (-1, 1, -1), - (-1, -1, 0), - (-1, -1, 1), - (2, 0, -1), - (2, 1, -1), - (2, -1, 0), - (2, -1, 1), - (1, 2, -1), - (0, 2, -1), - (2, 2, 0), + (1, 1, 1), + (2, 1, 1), (2, 2, 1), - (-1, 2, 0), - (-1, 2, 1), - (0, -1, 2), - (1, -1, 2), - (-1, 0, 2), - (-1, 1, 2), - (2, 0, 2), + (1, 2, 1), + (1, 1, 2), (2, 1, 2), + (2, 2, 2), (1, 2, 2), - (0, 2, 2), - (0, 0, -1), - (0, 1, -1), - (1, 1, -1), - (1, 0, -1), - (0, -1, 0), - (1, -1, 0), - (1, -1, 1), - (0, -1, 1), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 1), - (-1, 1, 0), - (2, 0, 0), - (2, 1, 0), - (2, 1, 1), - (2, 0, 1), - (1, 2, 0), - (0, 2, 0), - (0, 2, 1), - (1, 2, 1), - (0, 0, 2), - (1, 0, 2), - (1, 1, 2), - (0, 1, 2), + ], + }, + 4: { + "element_name": "MSH_HEX_125", + "element_type": 93, + "node_tuples": [ (0, 0, 0), + (4, 0, 0), + (4, 4, 0), + (0, 4, 0), + (0, 0, 4), + (4, 0, 4), + (4, 4, 4), + (0, 4, 4), (1, 0, 0), - (1, 1, 0), + (2, 0, 0), + (3, 0, 0), (0, 1, 0), + (0, 2, 0), + (0, 3, 0), (0, 0, 1), + (0, 0, 2), + (0, 0, 3), + (4, 1, 0), + (4, 2, 0), + (4, 3, 0), + (4, 0, 1), + (4, 0, 2), + (4, 0, 3), + (3, 4, 0), + (2, 4, 0), + (1, 4, 0), + (4, 4, 1), + (4, 4, 2), + (4, 4, 3), + (0, 4, 1), + (0, 4, 2), + (0, 4, 3), + (1, 0, 4), + (2, 0, 4), + (3, 0, 4), + (0, 1, 4), + (0, 2, 4), + (0, 3, 4), + (4, 1, 4), + (4, 2, 4), + (4, 3, 4), + (3, 4, 4), + (2, 4, 4), + (1, 4, 4), + (1, 1, 0), + (1, 3, 0), + (3, 3, 0), + (3, 1, 0), + (1, 2, 0), + (2, 3, 0), + (3, 2, 0), + (2, 1, 0), + (2, 2, 0), (1, 0, 1), - (1, 1, 1), + (3, 0, 1), + (3, 0, 3), + (1, 0, 3), + (2, 0, 1), + (3, 0, 2), + (2, 0, 3), + (1, 0, 2), + (2, 0, 2), (0, 1, 1), - ], - }, - 6: { - "element_name": "MSH_HEX_343", - "element_type": 95, - "node_tuples": [ - (-2, -2, -2), - (3, -2, -2), - (3, 3, -2), - (-2, 3, -2), - (-2, -2, 3), - (3, -2, 3), - (3, 3, 3), - (-2, 3, 3), - (-1, -2, -2), - (0, -2, -2), - (0, -2, -2), - (1, -2, -2), - (2, -2, -2), - (-2, -1, -2), - (-2, 0, -2), - (-2, 0, -2), - (-2, 1, -2), - (-2, 2, -2), - (-2, -2, -1), - (-2, -2, 0), - (-2, -2, 0), - (-2, -2, 1), - (-2, -2, 2), - (3, -1, -2), - (3, 0, -2), - (3, 0, -2), - (3, 1, -2), - (3, 2, -2), - (3, -2, -1), - (3, -2, 0), - (3, -2, 0), - (3, -2, 1), - (3, -2, 2), - (2, 3, -2), - (1, 3, -2), - (0, 3, -2), - (0, 3, -2), - (-1, 3, -2), - (3, 3, -1), - (3, 3, 0), - (3, 3, 0), + (0, 1, 3), + (0, 3, 3), + (0, 3, 1), + (0, 1, 2), + (0, 2, 3), + (0, 3, 2), + (0, 2, 1), + (0, 2, 2), + (4, 1, 1), + (4, 3, 1), + (4, 3, 3), + (4, 1, 3), + (4, 2, 1), + (4, 3, 2), + (4, 2, 3), + (4, 1, 2), + (4, 2, 2), + (3, 4, 1), + (1, 4, 1), + (1, 4, 3), + (3, 4, 3), + (2, 4, 1), + (1, 4, 2), + (2, 4, 3), + (3, 4, 2), + (2, 4, 2), + (1, 1, 4), + (3, 1, 4), + (3, 3, 4), + (1, 3, 4), + (2, 1, 4), + (3, 2, 4), + (2, 3, 4), + (1, 2, 4), + (2, 2, 4), + (1, 1, 1), + (3, 1, 1), (3, 3, 1), - (3, 3, 2), - (-2, 3, -1), - (-2, 3, 0), - (-2, 3, 0), - (-2, 3, 1), - (-2, 3, 2), - (-1, -2, 3), - (0, -2, 3), - (0, -2, 3), - (1, -2, 3), - (2, -2, 3), - (-2, -1, 3), - (-2, 0, 3), - (-2, 0, 3), - (-2, 1, 3), - (-2, 2, 3), - (3, -1, 3), - (3, 0, 3), - (3, 0, 3), + (1, 3, 1), + (1, 1, 3), (3, 1, 3), - (3, 2, 3), - (2, 3, 3), + (3, 3, 3), (1, 3, 3), - (0, 3, 3), - (0, 3, 3), - (-1, 3, 3), - (-1, -1, -2), - (-1, 2, -2), - (2, 2, -2), - (2, -1, -2), - (-1, 0, -2), - (-1, 0, -2), - (-1, 1, -2), - (0, 2, -2), - (0, 2, -2), - (1, 2, -2), - (2, 1, -2), - (2, 0, -2), - (2, 0, -2), - (1, -1, -2), - (0, -1, -2), - (0, -1, -2), - (0, 0, -2), - (0, 1, -2), - (1, 1, -2), - (1, 0, -2), - (0, 0, -2), - (0, 1, -2), - (1, 0, -2), - (0, 0, -2), - (0, 0, -2), - (-1, -2, -1), - (2, -2, -1), - (2, -2, 2), - (-1, -2, 2), - (0, -2, -1), - (0, -2, -1), - (1, -2, -1), - (2, -2, 0), - (2, -2, 0), - (2, -2, 1), - (1, -2, 2), - (0, -2, 2), - (0, -2, 2), - (-1, -2, 1), - (-1, -2, 0), - (-1, -2, 0), - (0, -2, 0), - (1, -2, 0), - (1, -2, 1), - (0, -2, 1), - (0, -2, 0), - (1, -2, 0), - (0, -2, 1), - (0, -2, 0), - (0, -2, 0), - (-2, -1, -1), - (-2, -1, 2), - (-2, 2, 2), - (-2, 2, -1), - (-2, -1, 0), - (-2, -1, 0), - (-2, -1, 1), - (-2, 0, 2), - (-2, 0, 2), - (-2, 1, 2), - (-2, 2, 1), - (-2, 2, 0), - (-2, 2, 0), - (-2, 1, -1), - (-2, 0, -1), - (-2, 0, -1), - (-2, 0, 0), - (-2, 0, 1), - (-2, 1, 1), - (-2, 1, 0), - (-2, 0, 0), - (-2, 0, 1), - (-2, 1, 0), - (-2, 0, 0), - (-2, 0, 0), - (3, -1, -1), - (3, 2, -1), - (3, 2, 2), - (3, -1, 2), - (3, 0, -1), - (3, 0, -1), - (3, 1, -1), - (3, 2, 0), - (3, 2, 0), + (2, 1, 1), + (1, 2, 1), + (1, 1, 2), (3, 2, 1), (3, 1, 2), - (3, 0, 2), - (3, 0, 2), - (3, -1, 1), - (3, -1, 0), - (3, -1, 0), - (3, 0, 0), - (3, 1, 0), - (3, 1, 1), - (3, 0, 1), - (3, 0, 0), - (3, 1, 0), - (3, 0, 1), - (3, 0, 0), - (3, 0, 0), - (2, 3, -1), - (-1, 3, -1), - (-1, 3, 2), - (2, 3, 2), - (1, 3, -1), - (0, 3, -1), - (0, 3, -1), - (-1, 3, 0), - (-1, 3, 0), - (-1, 3, 1), - (0, 3, 2), - (0, 3, 2), - (1, 3, 2), (2, 3, 1), - (2, 3, 0), - (2, 3, 0), - (1, 3, 0), - (0, 3, 0), - (0, 3, 1), - (1, 3, 1), - (0, 3, 0), - (0, 3, 0), - (0, 3, 1), - (1, 3, 0), - (0, 3, 0), - (-1, -1, 3), - (2, -1, 3), - (2, 2, 3), - (-1, 2, 3), - (0, -1, 3), - (0, -1, 3), - (1, -1, 3), - (2, 0, 3), - (2, 0, 3), + (3, 3, 2), + (1, 3, 2), (2, 1, 3), (1, 2, 3), - (0, 2, 3), - (0, 2, 3), - (-1, 1, 3), - (-1, 0, 3), - (-1, 0, 3), - (0, 0, 3), - (1, 0, 3), - (1, 1, 3), - (0, 1, 3), - (0, 0, 3), - (1, 0, 3), - (0, 1, 3), - (0, 0, 3), - (0, 0, 3), - (-1, -1, -1), - (2, -1, -1), - (2, 2, -1), - (-1, 2, -1), - (-1, -1, 2), - (2, -1, 2), - (2, 2, 2), - (-1, 2, 2), - (0, -1, -1), - (0, -1, -1), - (1, -1, -1), - (-1, 0, -1), - (-1, 0, -1), - (-1, 1, -1), - (-1, -1, 0), - (-1, -1, 0), - (-1, -1, 1), - (2, 0, -1), - (2, 0, -1), - (2, 1, -1), - (2, -1, 0), - (2, -1, 0), - (2, -1, 1), - (1, 2, -1), - (0, 2, -1), - (0, 2, -1), - (2, 2, 0), - (2, 2, 0), + (3, 2, 3), + (2, 3, 3), (2, 2, 1), - (-1, 2, 0), - (-1, 2, 0), - (-1, 2, 1), - (0, -1, 2), - (0, -1, 2), - (1, -1, 2), - (-1, 0, 2), - (-1, 0, 2), - (-1, 1, 2), - (2, 0, 2), - (2, 0, 2), (2, 1, 2), (1, 2, 2), - (0, 2, 2), - (0, 2, 2), - (0, 0, -1), - (0, 1, -1), - (1, 1, -1), - (1, 0, -1), - (0, 0, -1), - (0, 1, -1), - (1, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, -1, 0), - (1, -1, 0), - (1, -1, 1), - (0, -1, 1), - (0, -1, 0), - (1, -1, 0), - (0, -1, 1), - (0, -1, 0), - (0, -1, 0), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 1), - (-1, 1, 0), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 0), - (-1, 0, 0), - (-1, 0, 0), - (2, 0, 0), - (2, 1, 0), - (2, 1, 1), - (2, 0, 1), - (2, 0, 0), - (2, 1, 0), - (2, 0, 1), - (2, 0, 0), - (2, 0, 0), - (1, 2, 0), - (0, 2, 0), - (0, 2, 1), - (1, 2, 1), - (0, 2, 0), - (0, 2, 0), - (0, 2, 1), - (1, 2, 0), - (0, 2, 0), - (0, 0, 2), - (1, 0, 2), - (1, 1, 2), - (0, 1, 2), - (0, 0, 2), - (1, 0, 2), - (0, 1, 2), - (0, 0, 2), - (0, 0, 2), - (0, 0, 0), - (1, 0, 0), - (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (1, 0, 1), - (1, 1, 1), - (0, 1, 1), - (0, 0, 0), - (0, 0, 0), + (3, 2, 2), + (2, 3, 2), + (2, 2, 3), + (2, 2, 2), + ], + }, + 5: { + "element_name": "MSH_HEX_216", + "element_type": 94, + "node_tuples": [ (0, 0, 0), + (5, 0, 0), + (5, 5, 0), + (0, 5, 0), + (0, 0, 5), + (5, 0, 5), + (5, 5, 5), + (0, 5, 5), (1, 0, 0), - (1, 0, 0), - (0, 1, 0), - (1, 1, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), (0, 1, 0), + (0, 2, 0), + (0, 3, 0), + (0, 4, 0), (0, 0, 1), - (0, 0, 1), - (1, 0, 1), - (0, 1, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (1, 0, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 0), - ], - }, - 7: { - "element_name": "MSH_HEX_512", - "element_type": 96, - "node_tuples": [ - (-3, -3, -3), - (4, -3, -3), - (4, 4, -3), - (-3, 4, -3), - (-3, -3, 4), - (4, -3, 4), - (4, 4, 4), - (-3, 4, 4), - (-2, -3, -3), - (-1, -3, -3), - (0, -3, -3), - (0, -3, -3), - (1, -3, -3), - (2, -3, -3), - (-3, -2, -3), - (-3, -1, -3), - (-3, 0, -3), - (-3, 0, -3), - (-3, 1, -3), - (-3, 2, -3), - (-3, -3, -2), - (-3, -3, -1), - (-3, -3, 0), - (-3, -3, 0), - (-3, -3, 1), - (-3, -3, 2), - (4, -2, -3), - (4, -1, -3), - (4, 0, -3), - (4, 0, -3), - (4, 1, -3), - (4, 2, -3), - (4, -3, -2), - (4, -3, -1), - (4, -3, 0), - (4, -3, 0), - (4, -3, 1), - (4, -3, 2), - (2, 4, -3), - (1, 4, -3), - (0, 4, -3), - (0, 4, -3), - (-1, 4, -3), - (-2, 4, -3), - (4, 4, -2), - (4, 4, -1), - (4, 4, 0), + (0, 0, 2), + (0, 0, 3), + (0, 0, 4), + (5, 1, 0), + (5, 2, 0), + (5, 3, 0), + (5, 4, 0), + (5, 0, 1), + (5, 0, 2), + (5, 0, 3), + (5, 0, 4), + (4, 5, 0), + (3, 5, 0), + (2, 5, 0), + (1, 5, 0), + (5, 5, 1), + (5, 5, 2), + (5, 5, 3), + (5, 5, 4), + (0, 5, 1), + (0, 5, 2), + (0, 5, 3), + (0, 5, 4), + (1, 0, 5), + (2, 0, 5), + (3, 0, 5), + (4, 0, 5), + (0, 1, 5), + (0, 2, 5), + (0, 3, 5), + (0, 4, 5), + (5, 1, 5), + (5, 2, 5), + (5, 3, 5), + (5, 4, 5), + (4, 5, 5), + (3, 5, 5), + (2, 5, 5), + (1, 5, 5), + (1, 1, 0), + (1, 4, 0), (4, 4, 0), - (4, 4, 1), - (4, 4, 2), - (-3, 4, -2), - (-3, 4, -1), - (-3, 4, 0), - (-3, 4, 0), - (-3, 4, 1), - (-3, 4, 2), - (-2, -3, 4), - (-1, -3, 4), - (0, -3, 4), - (0, -3, 4), - (1, -3, 4), - (2, -3, 4), - (-3, -2, 4), - (-3, -1, 4), - (-3, 0, 4), - (-3, 0, 4), - (-3, 1, 4), - (-3, 2, 4), - (4, -2, 4), - (4, -1, 4), - (4, 0, 4), + (4, 1, 0), + (1, 2, 0), + (1, 3, 0), + (2, 4, 0), + (3, 4, 0), + (4, 3, 0), + (4, 2, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 3, 0), + (3, 3, 0), + (3, 2, 0), + (1, 0, 1), + (4, 0, 1), (4, 0, 4), + (1, 0, 4), + (2, 0, 1), + (3, 0, 1), + (4, 0, 2), + (4, 0, 3), + (3, 0, 4), + (2, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (3, 0, 2), + (3, 0, 3), + (2, 0, 3), + (0, 1, 1), + (0, 1, 4), + (0, 4, 4), + (0, 4, 1), + (0, 1, 2), + (0, 1, 3), + (0, 2, 4), + (0, 3, 4), + (0, 4, 3), + (0, 4, 2), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 3), + (0, 3, 3), + (0, 3, 2), + (5, 1, 1), + (5, 4, 1), + (5, 4, 4), + (5, 1, 4), + (5, 2, 1), + (5, 3, 1), + (5, 4, 2), + (5, 4, 3), + (5, 3, 4), + (5, 2, 4), + (5, 1, 3), + (5, 1, 2), + (5, 2, 2), + (5, 3, 2), + (5, 3, 3), + (5, 2, 3), + (4, 5, 1), + (1, 5, 1), + (1, 5, 4), + (4, 5, 4), + (3, 5, 1), + (2, 5, 1), + (1, 5, 2), + (1, 5, 3), + (2, 5, 4), + (3, 5, 4), + (4, 5, 3), + (4, 5, 2), + (3, 5, 2), + (2, 5, 2), + (2, 5, 3), + (3, 5, 3), + (1, 1, 5), + (4, 1, 5), + (4, 4, 5), + (1, 4, 5), + (2, 1, 5), + (3, 1, 5), + (4, 2, 5), + (4, 3, 5), + (3, 4, 5), + (2, 4, 5), + (1, 3, 5), + (1, 2, 5), + (2, 2, 5), + (3, 2, 5), + (3, 3, 5), + (2, 3, 5), + (1, 1, 1), + (4, 1, 1), + (4, 4, 1), + (1, 4, 1), + (1, 1, 4), (4, 1, 4), - (4, 2, 4), - (2, 4, 4), + (4, 4, 4), (1, 4, 4), - (0, 4, 4), - (0, 4, 4), - (-1, 4, 4), - (-2, 4, 4), - (-2, -2, -3), - (-2, 2, -3), - (2, 2, -3), - (2, -2, -3), - (-2, -1, -3), - (-2, 0, -3), - (-2, 0, -3), - (-2, 1, -3), - (-1, 2, -3), - (0, 2, -3), - (0, 2, -3), - (1, 2, -3), - (2, 1, -3), - (2, 0, -3), - (2, 0, -3), - (2, -1, -3), - (1, -2, -3), - (0, -2, -3), - (0, -2, -3), - (-1, -2, -3), - (-1, -1, -3), - (-1, 1, -3), - (1, 1, -3), - (1, -1, -3), - (-1, 0, -3), - (-1, 0, -3), - (0, 1, -3), - (0, 1, -3), - (1, 0, -3), - (1, 0, -3), - (0, -1, -3), - (0, -1, -3), - (0, 0, -3), - (0, 0, -3), - (0, 0, -3), - (0, 0, -3), - (-2, -3, -2), - (2, -3, -2), - (2, -3, 2), - (-2, -3, 2), - (-1, -3, -2), - (0, -3, -2), - (0, -3, -2), - (1, -3, -2), - (2, -3, -1), - (2, -3, 0), - (2, -3, 0), - (2, -3, 1), - (1, -3, 2), - (0, -3, 2), - (0, -3, 2), - (-1, -3, 2), - (-2, -3, 1), - (-2, -3, 0), - (-2, -3, 0), - (-2, -3, -1), - (-1, -3, -1), - (1, -3, -1), - (1, -3, 1), - (-1, -3, 1), - (0, -3, -1), - (0, -3, -1), - (1, -3, 0), - (1, -3, 0), - (0, -3, 1), - (0, -3, 1), - (-1, -3, 0), - (-1, -3, 0), - (0, -3, 0), - (0, -3, 0), - (0, -3, 0), - (0, -3, 0), - (-3, -2, -2), - (-3, -2, 2), - (-3, 2, 2), - (-3, 2, -2), - (-3, -2, -1), - (-3, -2, 0), - (-3, -2, 0), - (-3, -2, 1), - (-3, -1, 2), - (-3, 0, 2), - (-3, 0, 2), - (-3, 1, 2), - (-3, 2, 1), - (-3, 2, 0), - (-3, 2, 0), - (-3, 2, -1), - (-3, 1, -2), - (-3, 0, -2), - (-3, 0, -2), - (-3, -1, -2), - (-3, -1, -1), - (-3, -1, 1), - (-3, 1, 1), - (-3, 1, -1), - (-3, -1, 0), - (-3, -1, 0), - (-3, 0, 1), - (-3, 0, 1), - (-3, 1, 0), - (-3, 1, 0), - (-3, 0, -1), - (-3, 0, -1), - (-3, 0, 0), - (-3, 0, 0), - (-3, 0, 0), - (-3, 0, 0), - (4, -2, -2), - (4, 2, -2), - (4, 2, 2), - (4, -2, 2), - (4, -1, -2), - (4, 0, -2), - (4, 0, -2), - (4, 1, -2), - (4, 2, -1), - (4, 2, 0), - (4, 2, 0), + (2, 1, 1), + (3, 1, 1), + (1, 2, 1), + (1, 3, 1), + (1, 1, 2), + (1, 1, 3), (4, 2, 1), + (4, 3, 1), (4, 1, 2), - (4, 0, 2), - (4, 0, 2), - (4, -1, 2), - (4, -2, 1), - (4, -2, 0), - (4, -2, 0), - (4, -2, -1), - (4, -1, -1), - (4, 1, -1), - (4, 1, 1), - (4, -1, 1), - (4, 0, -1), - (4, 0, -1), - (4, 1, 0), - (4, 1, 0), - (4, 0, 1), - (4, 0, 1), - (4, -1, 0), - (4, -1, 0), - (4, 0, 0), - (4, 0, 0), - (4, 0, 0), - (4, 0, 0), - (2, 4, -2), - (-2, 4, -2), - (-2, 4, 2), - (2, 4, 2), - (1, 4, -2), - (0, 4, -2), - (0, 4, -2), - (-1, 4, -2), - (-2, 4, -1), - (-2, 4, 0), - (-2, 4, 0), - (-2, 4, 1), - (-1, 4, 2), - (0, 4, 2), - (0, 4, 2), - (1, 4, 2), + (4, 1, 3), + (3, 4, 1), (2, 4, 1), - (2, 4, 0), - (2, 4, 0), - (2, 4, -1), - (1, 4, -1), - (-1, 4, -1), - (-1, 4, 1), - (1, 4, 1), - (0, 4, -1), - (0, 4, -1), - (-1, 4, 0), - (-1, 4, 0), - (0, 4, 1), - (0, 4, 1), - (1, 4, 0), - (1, 4, 0), - (0, 4, 0), - (0, 4, 0), - (0, 4, 0), - (0, 4, 0), - (-2, -2, 4), - (2, -2, 4), - (2, 2, 4), - (-2, 2, 4), - (-1, -2, 4), - (0, -2, 4), - (0, -2, 4), - (1, -2, 4), - (2, -1, 4), - (2, 0, 4), - (2, 0, 4), + (4, 4, 2), + (4, 4, 3), + (1, 4, 2), + (1, 4, 3), (2, 1, 4), + (3, 1, 4), (1, 2, 4), - (0, 2, 4), - (0, 2, 4), - (-1, 2, 4), - (-2, 1, 4), - (-2, 0, 4), - (-2, 0, 4), - (-2, -1, 4), - (-1, -1, 4), - (1, -1, 4), - (1, 1, 4), - (-1, 1, 4), - (0, -1, 4), - (0, -1, 4), - (1, 0, 4), - (1, 0, 4), - (0, 1, 4), - (0, 1, 4), - (-1, 0, 4), - (-1, 0, 4), - (0, 0, 4), - (0, 0, 4), - (0, 0, 4), - (0, 0, 4), - (-2, -2, -2), - (2, -2, -2), - (2, 2, -2), - (-2, 2, -2), - (-2, -2, 2), - (2, -2, 2), - (2, 2, 2), - (-2, 2, 2), - (-1, -2, -2), - (0, -2, -2), - (0, -2, -2), - (1, -2, -2), - (-2, -1, -2), - (-2, 0, -2), - (-2, 0, -2), - (-2, 1, -2), - (-2, -2, -1), - (-2, -2, 0), - (-2, -2, 0), - (-2, -2, 1), - (2, -1, -2), - (2, 0, -2), - (2, 0, -2), - (2, 1, -2), - (2, -2, -1), - (2, -2, 0), - (2, -2, 0), - (2, -2, 1), - (1, 2, -2), - (0, 2, -2), - (0, 2, -2), - (-1, 2, -2), - (2, 2, -1), - (2, 2, 0), - (2, 2, 0), + (1, 3, 4), + (4, 2, 4), + (4, 3, 4), + (3, 4, 4), + (2, 4, 4), (2, 2, 1), - (-2, 2, -1), - (-2, 2, 0), - (-2, 2, 0), - (-2, 2, 1), - (-1, -2, 2), - (0, -2, 2), - (0, -2, 2), - (1, -2, 2), - (-2, -1, 2), - (-2, 0, 2), - (-2, 0, 2), - (-2, 1, 2), - (2, -1, 2), - (2, 0, 2), - (2, 0, 2), + (2, 3, 1), + (3, 3, 1), + (3, 2, 1), (2, 1, 2), + (3, 1, 2), + (3, 1, 3), + (2, 1, 3), (1, 2, 2), - (0, 2, 2), - (0, 2, 2), - (-1, 2, 2), - (-1, -1, -2), - (-1, 1, -2), - (1, 1, -2), - (1, -1, -2), - (-1, 0, -2), - (-1, 0, -2), - (0, 1, -2), - (0, 1, -2), - (1, 0, -2), - (1, 0, -2), - (0, -1, -2), - (0, -1, -2), - (0, 0, -2), - (0, 0, -2), - (0, 0, -2), - (0, 0, -2), - (-1, -2, -1), - (1, -2, -1), - (1, -2, 1), - (-1, -2, 1), - (0, -2, -1), - (0, -2, -1), - (1, -2, 0), - (1, -2, 0), - (0, -2, 1), - (0, -2, 1), - (-1, -2, 0), - (-1, -2, 0), - (0, -2, 0), - (0, -2, 0), - (0, -2, 0), - (0, -2, 0), - (-2, -1, -1), - (-2, -1, 1), - (-2, 1, 1), - (-2, 1, -1), - (-2, -1, 0), - (-2, -1, 0), - (-2, 0, 1), - (-2, 0, 1), - (-2, 1, 0), - (-2, 1, 0), - (-2, 0, -1), - (-2, 0, -1), - (-2, 0, 0), - (-2, 0, 0), - (-2, 0, 0), - (-2, 0, 0), - (2, -1, -1), - (2, 1, -1), - (2, 1, 1), - (2, -1, 1), - (2, 0, -1), - (2, 0, -1), - (2, 1, 0), - (2, 1, 0), - (2, 0, 1), - (2, 0, 1), - (2, -1, 0), - (2, -1, 0), - (2, 0, 0), - (2, 0, 0), - (2, 0, 0), - (2, 0, 0), - (1, 2, -1), - (-1, 2, -1), - (-1, 2, 1), - (1, 2, 1), - (0, 2, -1), - (0, 2, -1), - (-1, 2, 0), - (-1, 2, 0), - (0, 2, 1), - (0, 2, 1), - (1, 2, 0), - (1, 2, 0), - (0, 2, 0), - (0, 2, 0), - (0, 2, 0), - (0, 2, 0), - (-1, -1, 2), - (1, -1, 2), - (1, 1, 2), - (-1, 1, 2), - (0, -1, 2), - (0, -1, 2), - (1, 0, 2), - (1, 0, 2), - (0, 1, 2), - (0, 1, 2), - (-1, 0, 2), - (-1, 0, 2), - (0, 0, 2), - (0, 0, 2), - (0, 0, 2), - (0, 0, 2), - (-1, -1, -1), - (1, -1, -1), - (1, 1, -1), - (-1, 1, -1), - (-1, -1, 1), - (1, -1, 1), - (1, 1, 1), - (-1, 1, 1), - (0, -1, -1), - (0, -1, -1), - (-1, 0, -1), - (-1, 0, -1), - (-1, -1, 0), - (-1, -1, 0), - (1, 0, -1), - (1, 0, -1), - (1, -1, 0), - (1, -1, 0), - (0, 1, -1), - (0, 1, -1), - (1, 1, 0), - (1, 1, 0), - (-1, 1, 0), - (-1, 1, 0), - (0, -1, 1), - (0, -1, 1), - (-1, 0, 1), - (-1, 0, 1), - (1, 0, 1), - (1, 0, 1), - (0, 1, 1), - (0, 1, 1), - (0, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, -1, 0), - (0, -1, 0), - (0, -1, 0), - (0, -1, 0), - (-1, 0, 0), - (-1, 0, 0), - (-1, 0, 0), - (-1, 0, 0), - (1, 0, 0), - (1, 0, 0), - (1, 0, 0), - (1, 0, 0), - (0, 1, 0), - (0, 1, 0), - (0, 1, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 1), - (0, 0, 1), - (0, 0, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - ], - }, - 8: { - "element_name": "MSH_HEX_729", - "element_type": 97, - "node_tuples": [ - (-3, -3, -3), - (4, -3, -3), - (4, 4, -3), - (-3, 4, -3), - (-3, -3, 4), - (4, -3, 4), - (4, 4, 4), - (-3, 4, 4), - (-2, -3, -3), - (-1, -3, -3), - (0, -3, -3), - (0, -3, -3), - (1, -3, -3), - (2, -3, -3), - (3, -3, -3), - (-3, -2, -3), - (-3, -1, -3), - (-3, 0, -3), - (-3, 0, -3), - (-3, 1, -3), - (-3, 2, -3), - (-3, 3, -3), - (-3, -3, -2), - (-3, -3, -1), - (-3, -3, 0), - (-3, -3, 0), - (-3, -3, 1), - (-3, -3, 2), - (-3, -3, 3), - (4, -2, -3), - (4, -1, -3), - (4, 0, -3), - (4, 0, -3), - (4, 1, -3), - (4, 2, -3), - (4, 3, -3), - (4, -3, -2), - (4, -3, -1), - (4, -3, 0), - (4, -3, 0), - (4, -3, 1), - (4, -3, 2), - (4, -3, 3), - (3, 4, -3), - (2, 4, -3), - (1, 4, -3), - (0, 4, -3), - (0, 4, -3), - (-1, 4, -3), - (-2, 4, -3), - (4, 4, -2), - (4, 4, -1), - (4, 4, 0), - (4, 4, 0), - (4, 4, 1), - (4, 4, 2), - (4, 4, 3), - (-3, 4, -2), - (-3, 4, -1), - (-3, 4, 0), - (-3, 4, 0), - (-3, 4, 1), - (-3, 4, 2), - (-3, 4, 3), - (-2, -3, 4), - (-1, -3, 4), - (0, -3, 4), - (0, -3, 4), - (1, -3, 4), - (2, -3, 4), - (3, -3, 4), - (-3, -2, 4), - (-3, -1, 4), - (-3, 0, 4), - (-3, 0, 4), - (-3, 1, 4), - (-3, 2, 4), - (-3, 3, 4), - (4, -2, 4), - (4, -1, 4), - (4, 0, 4), - (4, 0, 4), - (4, 1, 4), - (4, 2, 4), - (4, 3, 4), - (3, 4, 4), - (2, 4, 4), - (1, 4, 4), - (0, 4, 4), - (0, 4, 4), - (-1, 4, 4), - (-2, 4, 4), - (-2, -2, -3), - (-2, 3, -3), - (3, 3, -3), - (3, -2, -3), - (-2, -1, -3), - (-2, 0, -3), - (-2, 0, -3), - (-2, 1, -3), - (-2, 2, -3), - (-1, 3, -3), - (0, 3, -3), - (0, 3, -3), - (1, 3, -3), - (2, 3, -3), - (3, 2, -3), - (3, 1, -3), - (3, 0, -3), - (3, 0, -3), - (3, -1, -3), - (2, -2, -3), - (1, -2, -3), - (0, -2, -3), - (0, -2, -3), - (-1, -2, -3), - (-1, -1, -3), - (-1, 2, -3), - (2, 2, -3), - (2, -1, -3), - (-1, 0, -3), - (-1, 0, -3), - (-1, 1, -3), - (0, 2, -3), - (0, 2, -3), - (1, 2, -3), - (2, 1, -3), - (2, 0, -3), - (2, 0, -3), - (1, -1, -3), - (0, -1, -3), - (0, -1, -3), - (0, 0, -3), - (0, 1, -3), - (1, 1, -3), - (1, 0, -3), - (0, 0, -3), - (0, 1, -3), - (1, 0, -3), - (0, 0, -3), - (0, 0, -3), - (-2, -3, -2), - (3, -3, -2), - (3, -3, 3), - (-2, -3, 3), - (-1, -3, -2), - (0, -3, -2), - (0, -3, -2), - (1, -3, -2), - (2, -3, -2), - (3, -3, -1), - (3, -3, 0), - (3, -3, 0), - (3, -3, 1), - (3, -3, 2), - (2, -3, 3), - (1, -3, 3), - (0, -3, 3), - (0, -3, 3), - (-1, -3, 3), - (-2, -3, 2), - (-2, -3, 1), - (-2, -3, 0), - (-2, -3, 0), - (-2, -3, -1), - (-1, -3, -1), - (2, -3, -1), - (2, -3, 2), - (-1, -3, 2), - (0, -3, -1), - (0, -3, -1), - (1, -3, -1), - (2, -3, 0), - (2, -3, 0), - (2, -3, 1), - (1, -3, 2), - (0, -3, 2), - (0, -3, 2), - (-1, -3, 1), - (-1, -3, 0), - (-1, -3, 0), - (0, -3, 0), - (1, -3, 0), - (1, -3, 1), - (0, -3, 1), - (0, -3, 0), - (1, -3, 0), - (0, -3, 1), - (0, -3, 0), - (0, -3, 0), - (-3, -2, -2), - (-3, -2, 3), - (-3, 3, 3), - (-3, 3, -2), - (-3, -2, -1), - (-3, -2, 0), - (-3, -2, 0), - (-3, -2, 1), - (-3, -2, 2), - (-3, -1, 3), - (-3, 0, 3), - (-3, 0, 3), - (-3, 1, 3), - (-3, 2, 3), - (-3, 3, 2), - (-3, 3, 1), - (-3, 3, 0), - (-3, 3, 0), - (-3, 3, -1), - (-3, 2, -2), - (-3, 1, -2), - (-3, 0, -2), - (-3, 0, -2), - (-3, -1, -2), - (-3, -1, -1), - (-3, -1, 2), - (-3, 2, 2), - (-3, 2, -1), - (-3, -1, 0), - (-3, -1, 0), - (-3, -1, 1), - (-3, 0, 2), - (-3, 0, 2), - (-3, 1, 2), - (-3, 2, 1), - (-3, 2, 0), - (-3, 2, 0), - (-3, 1, -1), - (-3, 0, -1), - (-3, 0, -1), - (-3, 0, 0), - (-3, 0, 1), - (-3, 1, 1), - (-3, 1, 0), - (-3, 0, 0), - (-3, 0, 1), - (-3, 1, 0), - (-3, 0, 0), - (-3, 0, 0), - (4, -2, -2), - (4, 3, -2), - (4, 3, 3), - (4, -2, 3), - (4, -1, -2), - (4, 0, -2), - (4, 0, -2), - (4, 1, -2), - (4, 2, -2), - (4, 3, -1), - (4, 3, 0), - (4, 3, 0), - (4, 3, 1), + (1, 2, 3), + (1, 3, 3), + (1, 3, 2), + (4, 2, 2), (4, 3, 2), + (4, 3, 3), (4, 2, 3), - (4, 1, 3), - (4, 0, 3), - (4, 0, 3), - (4, -1, 3), - (4, -2, 2), - (4, -2, 1), - (4, -2, 0), - (4, -2, 0), - (4, -2, -1), - (4, -1, -1), - (4, 2, -1), - (4, 2, 2), - (4, -1, 2), - (4, 0, -1), - (4, 0, -1), - (4, 1, -1), - (4, 2, 0), - (4, 2, 0), - (4, 2, 1), - (4, 1, 2), - (4, 0, 2), - (4, 0, 2), - (4, -1, 1), - (4, -1, 0), - (4, -1, 0), - (4, 0, 0), - (4, 1, 0), - (4, 1, 1), - (4, 0, 1), - (4, 0, 0), - (4, 1, 0), - (4, 0, 1), - (4, 0, 0), - (4, 0, 0), - (3, 4, -2), - (-2, 4, -2), - (-2, 4, 3), - (3, 4, 3), - (2, 4, -2), - (1, 4, -2), - (0, 4, -2), - (0, 4, -2), - (-1, 4, -2), - (-2, 4, -1), - (-2, 4, 0), - (-2, 4, 0), - (-2, 4, 1), - (-2, 4, 2), - (-1, 4, 3), - (0, 4, 3), - (0, 4, 3), - (1, 4, 3), - (2, 4, 3), (3, 4, 2), - (3, 4, 1), - (3, 4, 0), - (3, 4, 0), - (3, 4, -1), - (2, 4, -1), - (-1, 4, -1), - (-1, 4, 2), (2, 4, 2), - (1, 4, -1), - (0, 4, -1), - (0, 4, -1), - (-1, 4, 0), - (-1, 4, 0), - (-1, 4, 1), - (0, 4, 2), - (0, 4, 2), - (1, 4, 2), - (2, 4, 1), - (2, 4, 0), - (2, 4, 0), - (1, 4, 0), - (0, 4, 0), - (0, 4, 1), - (1, 4, 1), - (0, 4, 0), - (0, 4, 0), - (0, 4, 1), - (1, 4, 0), - (0, 4, 0), - (-2, -2, 4), - (3, -2, 4), - (3, 3, 4), - (-2, 3, 4), - (-1, -2, 4), - (0, -2, 4), - (0, -2, 4), - (1, -2, 4), - (2, -2, 4), - (3, -1, 4), - (3, 0, 4), - (3, 0, 4), - (3, 1, 4), + (2, 4, 3), + (3, 4, 3), + (2, 2, 4), (3, 2, 4), + (3, 3, 4), (2, 3, 4), - (1, 3, 4), - (0, 3, 4), - (0, 3, 4), - (-1, 3, 4), - (-2, 2, 4), - (-2, 1, 4), - (-2, 0, 4), - (-2, 0, 4), - (-2, -1, 4), - (-1, -1, 4), - (2, -1, 4), - (2, 2, 4), - (-1, 2, 4), - (0, -1, 4), - (0, -1, 4), - (1, -1, 4), - (2, 0, 4), - (2, 0, 4), - (2, 1, 4), - (1, 2, 4), - (0, 2, 4), - (0, 2, 4), - (-1, 1, 4), - (-1, 0, 4), - (-1, 0, 4), - (0, 0, 4), - (1, 0, 4), - (1, 1, 4), - (0, 1, 4), - (0, 0, 4), - (1, 0, 4), - (0, 1, 4), - (0, 0, 4), - (0, 0, 4), - (-2, -2, -2), - (3, -2, -2), - (3, 3, -2), - (-2, 3, -2), - (-2, -2, 3), - (3, -2, 3), - (3, 3, 3), - (-2, 3, 3), - (-1, -2, -2), - (0, -2, -2), - (0, -2, -2), - (1, -2, -2), - (2, -2, -2), - (-2, -1, -2), - (-2, 0, -2), - (-2, 0, -2), - (-2, 1, -2), - (-2, 2, -2), - (-2, -2, -1), - (-2, -2, 0), - (-2, -2, 0), - (-2, -2, 1), - (-2, -2, 2), - (3, -1, -2), - (3, 0, -2), - (3, 0, -2), - (3, 1, -2), - (3, 2, -2), - (3, -2, -1), - (3, -2, 0), - (3, -2, 0), - (3, -2, 1), - (3, -2, 2), - (2, 3, -2), - (1, 3, -2), - (0, 3, -2), - (0, 3, -2), - (-1, 3, -2), - (3, 3, -1), - (3, 3, 0), - (3, 3, 0), - (3, 3, 1), - (3, 3, 2), - (-2, 3, -1), - (-2, 3, 0), - (-2, 3, 0), - (-2, 3, 1), - (-2, 3, 2), - (-1, -2, 3), - (0, -2, 3), - (0, -2, 3), - (1, -2, 3), - (2, -2, 3), - (-2, -1, 3), - (-2, 0, 3), - (-2, 0, 3), - (-2, 1, 3), - (-2, 2, 3), - (3, -1, 3), - (3, 0, 3), - (3, 0, 3), - (3, 1, 3), - (3, 2, 3), - (2, 3, 3), - (1, 3, 3), - (0, 3, 3), - (0, 3, 3), - (-1, 3, 3), - (-1, -1, -2), - (-1, 2, -2), - (2, 2, -2), - (2, -1, -2), - (-1, 0, -2), - (-1, 0, -2), - (-1, 1, -2), - (0, 2, -2), - (0, 2, -2), - (1, 2, -2), - (2, 1, -2), - (2, 0, -2), - (2, 0, -2), - (1, -1, -2), - (0, -1, -2), - (0, -1, -2), - (0, 0, -2), - (0, 1, -2), - (1, 1, -2), - (1, 0, -2), - (0, 0, -2), - (0, 1, -2), - (1, 0, -2), - (0, 0, -2), - (0, 0, -2), - (-1, -2, -1), - (2, -2, -1), - (2, -2, 2), - (-1, -2, 2), - (0, -2, -1), - (0, -2, -1), - (1, -2, -1), - (2, -2, 0), - (2, -2, 0), - (2, -2, 1), - (1, -2, 2), - (0, -2, 2), - (0, -2, 2), - (-1, -2, 1), - (-1, -2, 0), - (-1, -2, 0), - (0, -2, 0), - (1, -2, 0), - (1, -2, 1), - (0, -2, 1), - (0, -2, 0), - (1, -2, 0), - (0, -2, 1), - (0, -2, 0), - (0, -2, 0), - (-2, -1, -1), - (-2, -1, 2), - (-2, 2, 2), - (-2, 2, -1), - (-2, -1, 0), - (-2, -1, 0), - (-2, -1, 1), - (-2, 0, 2), - (-2, 0, 2), - (-2, 1, 2), - (-2, 2, 1), - (-2, 2, 0), - (-2, 2, 0), - (-2, 1, -1), - (-2, 0, -1), - (-2, 0, -1), - (-2, 0, 0), - (-2, 0, 1), - (-2, 1, 1), - (-2, 1, 0), - (-2, 0, 0), - (-2, 0, 1), - (-2, 1, 0), - (-2, 0, 0), - (-2, 0, 0), - (3, -1, -1), - (3, 2, -1), + (2, 2, 2), (3, 2, 2), - (3, -1, 2), - (3, 0, -1), - (3, 0, -1), - (3, 1, -1), - (3, 2, 0), - (3, 2, 0), - (3, 2, 1), - (3, 1, 2), - (3, 0, 2), - (3, 0, 2), - (3, -1, 1), - (3, -1, 0), - (3, -1, 0), - (3, 0, 0), - (3, 1, 0), - (3, 1, 1), - (3, 0, 1), - (3, 0, 0), - (3, 1, 0), - (3, 0, 1), - (3, 0, 0), - (3, 0, 0), - (2, 3, -1), - (-1, 3, -1), - (-1, 3, 2), + (3, 3, 2), (2, 3, 2), - (1, 3, -1), - (0, 3, -1), - (0, 3, -1), - (-1, 3, 0), - (-1, 3, 0), - (-1, 3, 1), - (0, 3, 2), - (0, 3, 2), - (1, 3, 2), - (2, 3, 1), - (2, 3, 0), - (2, 3, 0), - (1, 3, 0), - (0, 3, 0), - (0, 3, 1), - (1, 3, 1), - (0, 3, 0), - (0, 3, 0), - (0, 3, 1), - (1, 3, 0), - (0, 3, 0), - (-1, -1, 3), - (2, -1, 3), (2, 2, 3), - (-1, 2, 3), - (0, -1, 3), - (0, -1, 3), - (1, -1, 3), - (2, 0, 3), - (2, 0, 3), - (2, 1, 3), - (1, 2, 3), - (0, 2, 3), - (0, 2, 3), - (-1, 1, 3), - (-1, 0, 3), - (-1, 0, 3), - (0, 0, 3), - (1, 0, 3), - (1, 1, 3), - (0, 1, 3), - (0, 0, 3), - (1, 0, 3), - (0, 1, 3), - (0, 0, 3), - (0, 0, 3), - (-1, -1, -1), - (2, -1, -1), - (2, 2, -1), - (-1, 2, -1), - (-1, -1, 2), - (2, -1, 2), - (2, 2, 2), - (-1, 2, 2), - (0, -1, -1), - (0, -1, -1), - (1, -1, -1), - (-1, 0, -1), - (-1, 0, -1), - (-1, 1, -1), - (-1, -1, 0), - (-1, -1, 0), - (-1, -1, 1), - (2, 0, -1), - (2, 0, -1), - (2, 1, -1), - (2, -1, 0), - (2, -1, 0), - (2, -1, 1), - (1, 2, -1), - (0, 2, -1), - (0, 2, -1), - (2, 2, 0), - (2, 2, 0), - (2, 2, 1), - (-1, 2, 0), - (-1, 2, 0), - (-1, 2, 1), - (0, -1, 2), - (0, -1, 2), - (1, -1, 2), - (-1, 0, 2), - (-1, 0, 2), - (-1, 1, 2), - (2, 0, 2), - (2, 0, 2), - (2, 1, 2), - (1, 2, 2), - (0, 2, 2), - (0, 2, 2), - (0, 0, -1), - (0, 1, -1), - (1, 1, -1), - (1, 0, -1), - (0, 0, -1), - (0, 1, -1), - (1, 0, -1), - (0, 0, -1), - (0, 0, -1), - (0, -1, 0), - (1, -1, 0), - (1, -1, 1), - (0, -1, 1), - (0, -1, 0), - (1, -1, 0), - (0, -1, 1), - (0, -1, 0), - (0, -1, 0), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 1), - (-1, 1, 0), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 0), - (-1, 0, 0), - (-1, 0, 0), - (2, 0, 0), - (2, 1, 0), - (2, 1, 1), - (2, 0, 1), - (2, 0, 0), - (2, 1, 0), - (2, 0, 1), - (2, 0, 0), - (2, 0, 0), - (1, 2, 0), - (0, 2, 0), - (0, 2, 1), - (1, 2, 1), - (0, 2, 0), - (0, 2, 0), - (0, 2, 1), - (1, 2, 0), - (0, 2, 0), - (0, 0, 2), - (1, 0, 2), - (1, 1, 2), - (0, 1, 2), - (0, 0, 2), - (1, 0, 2), - (0, 1, 2), - (0, 0, 2), - (0, 0, 2), - (0, 0, 0), - (1, 0, 0), - (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (1, 0, 1), - (1, 1, 1), - (0, 1, 1), - (0, 0, 0), - (0, 0, 0), - (0, 0, 0), - (1, 0, 0), - (1, 0, 0), - (0, 1, 0), - (1, 1, 0), - (0, 1, 0), - (0, 0, 1), - (0, 0, 1), - (1, 0, 1), - (0, 1, 1), + (3, 2, 3), + (3, 3, 3), + (2, 3, 3), + ], + }, + 6: { + "element_name": "MSH_HEX_343", + "element_type": 95, + "node_tuples": [ (0, 0, 0), + (6, 0, 0), + (6, 6, 0), + (0, 6, 0), + (0, 0, 6), + (6, 0, 6), + (6, 6, 6), + (0, 6, 6), (0, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), (0, 0, 0), - (1, 0, 0), - (0, 1, 0), - (0, 0, 1), + (0, 2, 0), + (0, 3, 0), + (0, 4, 0), + (0, 5, 0), (0, 0, 0), - ], - }, - 9: { - "element_name": "MSH_HEX_1000", - "element_type": 98, - "node_tuples": [ - (-4, -4, -4), - (5, -4, -4), - (5, 5, -4), - (-4, 5, -4), - (-4, -4, 5), - (5, -4, 5), - (5, 5, 5), - (-4, 5, 5), - (-3, -4, -4), - (-2, -4, -4), - (-1, -4, -4), - (0, -4, -4), - (1, -4, -4), - (1, -4, -4), - (2, -4, -4), - (3, -4, -4), - (-4, -3, -4), - (-4, -2, -4), - (-4, -1, -4), - (-4, 0, -4), - (-4, 1, -4), - (-4, 1, -4), - (-4, 2, -4), - (-4, 3, -4), - (-4, -4, -3), - (-4, -4, -2), - (-4, -4, -1), - (-4, -4, 0), - (-4, -4, 1), - (-4, -4, 1), - (-4, -4, 2), - (-4, -4, 3), - (5, -3, -4), - (5, -2, -4), - (5, -1, -4), - (5, 0, -4), - (5, 1, -4), - (5, 1, -4), - (5, 2, -4), - (5, 3, -4), - (5, -4, -3), - (5, -4, -2), - (5, -4, -1), - (5, -4, 0), - (5, -4, 1), - (5, -4, 1), - (5, -4, 2), - (5, -4, 3), - (3, 5, -4), - (2, 5, -4), - (1, 5, -4), - (1, 5, -4), - (0, 5, -4), - (-1, 5, -4), - (-2, 5, -4), - (-3, 5, -4), - (5, 5, -3), - (5, 5, -2), - (5, 5, -1), + (0, 0, 2), + (0, 0, 3), + (0, 0, 4), + (0, 0, 5), + (6, 0, 0), + (6, 2, 0), + (6, 3, 0), + (6, 4, 0), + (6, 5, 0), + (6, 0, 0), + (6, 0, 2), + (6, 0, 3), + (6, 0, 4), + (6, 0, 5), + (5, 6, 0), + (4, 6, 0), + (3, 6, 0), + (2, 6, 0), + (0, 6, 0), + (6, 6, 0), + (6, 6, 2), + (6, 6, 3), + (6, 6, 4), + (6, 6, 5), + (0, 6, 0), + (0, 6, 2), + (0, 6, 3), + (0, 6, 4), + (0, 6, 5), + (0, 0, 6), + (2, 0, 6), + (3, 0, 6), + (4, 0, 6), + (5, 0, 6), + (0, 0, 6), + (0, 2, 6), + (0, 3, 6), + (0, 4, 6), + (0, 5, 6), + (6, 0, 6), + (6, 2, 6), + (6, 3, 6), + (6, 4, 6), + (6, 5, 6), + (5, 6, 6), + (4, 6, 6), + (3, 6, 6), + (2, 6, 6), + (0, 6, 6), + (0, 0, 0), + (0, 5, 0), (5, 5, 0), - (5, 5, 1), - (5, 5, 1), - (5, 5, 2), - (5, 5, 3), - (-4, 5, -3), - (-4, 5, -2), - (-4, 5, -1), - (-4, 5, 0), - (-4, 5, 1), - (-4, 5, 1), - (-4, 5, 2), - (-4, 5, 3), - (-3, -4, 5), - (-2, -4, 5), - (-1, -4, 5), - (0, -4, 5), - (1, -4, 5), - (1, -4, 5), - (2, -4, 5), - (3, -4, 5), - (-4, -3, 5), - (-4, -2, 5), - (-4, -1, 5), - (-4, 0, 5), - (-4, 1, 5), - (-4, 1, 5), - (-4, 2, 5), - (-4, 3, 5), - (5, -3, 5), - (5, -2, 5), - (5, -1, 5), - (5, 0, 5), - (5, 1, 5), - (5, 1, 5), - (5, 2, 5), - (5, 3, 5), - (3, 5, 5), - (2, 5, 5), - (1, 5, 5), - (1, 5, 5), - (0, 5, 5), - (-1, 5, 5), - (-2, 5, 5), - (-3, 5, 5), - (-3, -3, -4), - (-3, 3, -4), - (3, 3, -4), - (3, -3, -4), - (-3, -2, -4), - (-3, -1, -4), - (-3, 0, -4), - (-3, 1, -4), - (-3, 1, -4), - (-3, 2, -4), - (-2, 3, -4), - (-1, 3, -4), - (0, 3, -4), - (1, 3, -4), - (1, 3, -4), - (2, 3, -4), - (3, 2, -4), - (3, 1, -4), - (3, 1, -4), - (3, 0, -4), - (3, -1, -4), - (3, -2, -4), - (2, -3, -4), - (1, -3, -4), - (1, -3, -4), - (0, -3, -4), - (-1, -3, -4), - (-2, -3, -4), - (-2, -2, -4), - (-2, 2, -4), - (2, 2, -4), - (2, -2, -4), - (-2, -1, -4), - (-2, 0, -4), - (-2, 1, -4), - (-2, 1, -4), - (-1, 2, -4), - (0, 2, -4), - (1, 2, -4), - (1, 2, -4), - (2, 1, -4), - (2, 1, -4), - (2, 0, -4), - (2, -1, -4), - (1, -2, -4), - (1, -2, -4), - (0, -2, -4), - (-1, -2, -4), - (-1, -1, -4), - (-1, 1, -4), - (1, 1, -4), - (1, -1, -4), - (-1, 0, -4), - (-1, 1, -4), - (0, 1, -4), - (1, 1, -4), - (1, 1, -4), - (1, 0, -4), - (1, -1, -4), - (0, -1, -4), - (0, 0, -4), - (0, 1, -4), - (1, 1, -4), - (1, 0, -4), - (-3, -4, -3), - (3, -4, -3), - (3, -4, 3), - (-3, -4, 3), - (-2, -4, -3), - (-1, -4, -3), - (0, -4, -3), - (1, -4, -3), - (1, -4, -3), - (2, -4, -3), - (3, -4, -2), - (3, -4, -1), - (3, -4, 0), - (3, -4, 1), - (3, -4, 1), - (3, -4, 2), - (2, -4, 3), - (1, -4, 3), - (1, -4, 3), - (0, -4, 3), - (-1, -4, 3), - (-2, -4, 3), - (-3, -4, 2), - (-3, -4, 1), - (-3, -4, 1), - (-3, -4, 0), - (-3, -4, -1), - (-3, -4, -2), - (-2, -4, -2), - (2, -4, -2), - (2, -4, 2), - (-2, -4, 2), - (-1, -4, -2), - (0, -4, -2), - (1, -4, -2), - (1, -4, -2), - (2, -4, -1), - (2, -4, 0), - (2, -4, 1), - (2, -4, 1), - (1, -4, 2), - (1, -4, 2), - (0, -4, 2), - (-1, -4, 2), - (-2, -4, 1), - (-2, -4, 1), - (-2, -4, 0), - (-2, -4, -1), - (-1, -4, -1), - (1, -4, -1), - (1, -4, 1), - (-1, -4, 1), - (0, -4, -1), - (1, -4, -1), - (1, -4, 0), - (1, -4, 1), - (1, -4, 1), - (0, -4, 1), - (-1, -4, 1), - (-1, -4, 0), - (0, -4, 0), - (1, -4, 0), - (1, -4, 1), - (0, -4, 1), - (-4, -3, -3), - (-4, -3, 3), - (-4, 3, 3), - (-4, 3, -3), - (-4, -3, -2), - (-4, -3, -1), - (-4, -3, 0), - (-4, -3, 1), - (-4, -3, 1), - (-4, -3, 2), - (-4, -2, 3), - (-4, -1, 3), - (-4, 0, 3), - (-4, 1, 3), - (-4, 1, 3), - (-4, 2, 3), - (-4, 3, 2), - (-4, 3, 1), - (-4, 3, 1), - (-4, 3, 0), - (-4, 3, -1), - (-4, 3, -2), - (-4, 2, -3), - (-4, 1, -3), - (-4, 1, -3), - (-4, 0, -3), - (-4, -1, -3), - (-4, -2, -3), - (-4, -2, -2), - (-4, -2, 2), - (-4, 2, 2), - (-4, 2, -2), - (-4, -2, -1), - (-4, -2, 0), - (-4, -2, 1), - (-4, -2, 1), - (-4, -1, 2), - (-4, 0, 2), - (-4, 1, 2), - (-4, 1, 2), - (-4, 2, 1), - (-4, 2, 1), - (-4, 2, 0), - (-4, 2, -1), - (-4, 1, -2), - (-4, 1, -2), - (-4, 0, -2), - (-4, -1, -2), - (-4, -1, -1), - (-4, -1, 1), - (-4, 1, 1), - (-4, 1, -1), - (-4, -1, 0), - (-4, -1, 1), - (-4, 0, 1), - (-4, 1, 1), - (-4, 1, 1), - (-4, 1, 0), - (-4, 1, -1), - (-4, 0, -1), - (-4, 0, 0), - (-4, 0, 1), - (-4, 1, 1), - (-4, 1, 0), - (5, -3, -3), - (5, 3, -3), - (5, 3, 3), - (5, -3, 3), - (5, -2, -3), - (5, -1, -3), - (5, 0, -3), - (5, 1, -3), - (5, 1, -3), - (5, 2, -3), - (5, 3, -2), - (5, 3, -1), + (5, 0, 0), + (0, 2, 0), + (0, 3, 0), + (0, 4, 0), + (2, 5, 0), + (3, 5, 0), + (4, 5, 0), + (5, 4, 0), (5, 3, 0), - (5, 3, 1), - (5, 3, 1), - (5, 3, 2), - (5, 2, 3), - (5, 1, 3), - (5, 1, 3), - (5, 0, 3), - (5, -1, 3), - (5, -2, 3), - (5, -3, 2), - (5, -3, 1), - (5, -3, 1), - (5, -3, 0), - (5, -3, -1), - (5, -3, -2), - (5, -2, -2), - (5, 2, -2), - (5, 2, 2), - (5, -2, 2), - (5, -1, -2), - (5, 0, -2), - (5, 1, -2), - (5, 1, -2), - (5, 2, -1), (5, 2, 0), - (5, 2, 1), - (5, 2, 1), - (5, 1, 2), - (5, 1, 2), - (5, 0, 2), - (5, -1, 2), - (5, -2, 1), - (5, -2, 1), - (5, -2, 0), - (5, -2, -1), - (5, -1, -1), - (5, 1, -1), - (5, 1, 1), - (5, -1, 1), - (5, 0, -1), - (5, 1, -1), - (5, 1, 0), - (5, 1, 1), - (5, 1, 1), - (5, 0, 1), - (5, -1, 1), - (5, -1, 0), + (4, 0, 0), + (3, 0, 0), + (2, 0, 0), + (2, 2, 0), + (2, 4, 0), + (4, 4, 0), + (4, 2, 0), + (2, 3, 0), + (3, 4, 0), + (4, 3, 0), + (3, 2, 0), + (3, 3, 0), + (0, 0, 0), (5, 0, 0), - (5, 1, 0), - (5, 1, 1), - (5, 0, 1), - (3, 5, -3), - (-3, 5, -3), - (-3, 5, 3), - (3, 5, 3), - (2, 5, -3), - (1, 5, -3), - (1, 5, -3), - (0, 5, -3), - (-1, 5, -3), - (-2, 5, -3), - (-3, 5, -2), - (-3, 5, -1), - (-3, 5, 0), - (-3, 5, 1), - (-3, 5, 1), - (-3, 5, 2), - (-2, 5, 3), - (-1, 5, 3), - (0, 5, 3), - (1, 5, 3), - (1, 5, 3), - (2, 5, 3), - (3, 5, 2), - (3, 5, 1), - (3, 5, 1), - (3, 5, 0), - (3, 5, -1), - (3, 5, -2), - (2, 5, -2), - (-2, 5, -2), - (-2, 5, 2), - (2, 5, 2), - (1, 5, -2), - (1, 5, -2), - (0, 5, -2), - (-1, 5, -2), - (-2, 5, -1), - (-2, 5, 0), - (-2, 5, 1), - (-2, 5, 1), - (-1, 5, 2), - (0, 5, 2), - (1, 5, 2), - (1, 5, 2), - (2, 5, 1), - (2, 5, 1), - (2, 5, 0), - (2, 5, -1), - (1, 5, -1), - (-1, 5, -1), - (-1, 5, 1), - (1, 5, 1), - (1, 5, -1), - (0, 5, -1), - (-1, 5, 0), - (-1, 5, 1), - (0, 5, 1), - (1, 5, 1), - (1, 5, 1), - (1, 5, 0), - (1, 5, 0), - (0, 5, 0), - (0, 5, 1), - (1, 5, 1), - (-3, -3, 5), - (3, -3, 5), - (3, 3, 5), - (-3, 3, 5), - (-2, -3, 5), - (-1, -3, 5), - (0, -3, 5), - (1, -3, 5), - (1, -3, 5), - (2, -3, 5), - (3, -2, 5), - (3, -1, 5), + (5, 0, 5), + (0, 0, 5), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 2), + (5, 0, 3), + (5, 0, 4), + (4, 0, 5), (3, 0, 5), - (3, 1, 5), - (3, 1, 5), - (3, 2, 5), - (2, 3, 5), - (1, 3, 5), - (1, 3, 5), - (0, 3, 5), - (-1, 3, 5), - (-2, 3, 5), - (-3, 2, 5), - (-3, 1, 5), - (-3, 1, 5), - (-3, 0, 5), - (-3, -1, 5), - (-3, -2, 5), - (-2, -2, 5), - (2, -2, 5), - (2, 2, 5), - (-2, 2, 5), - (-1, -2, 5), - (0, -2, 5), - (1, -2, 5), - (1, -2, 5), - (2, -1, 5), (2, 0, 5), - (2, 1, 5), - (2, 1, 5), - (1, 2, 5), - (1, 2, 5), - (0, 2, 5), - (-1, 2, 5), - (-2, 1, 5), - (-2, 1, 5), - (-2, 0, 5), - (-2, -1, 5), - (-1, -1, 5), - (1, -1, 5), - (1, 1, 5), - (-1, 1, 5), - (0, -1, 5), - (1, -1, 5), - (1, 0, 5), - (1, 1, 5), - (1, 1, 5), - (0, 1, 5), - (-1, 1, 5), - (-1, 0, 5), - (0, 0, 5), - (1, 0, 5), - (1, 1, 5), - (0, 1, 5), - (-3, -3, -3), - (3, -3, -3), - (3, 3, -3), - (-3, 3, -3), - (-3, -3, 3), - (3, -3, 3), - (3, 3, 3), - (-3, 3, 3), - (-2, -3, -3), - (-1, -3, -3), - (0, -3, -3), - (1, -3, -3), - (1, -3, -3), - (2, -3, -3), - (-3, -2, -3), - (-3, -1, -3), - (-3, 0, -3), - (-3, 1, -3), - (-3, 1, -3), - (-3, 2, -3), - (-3, -3, -2), - (-3, -3, -1), - (-3, -3, 0), - (-3, -3, 1), - (-3, -3, 1), - (-3, -3, 2), - (3, -2, -3), - (3, -1, -3), - (3, 0, -3), - (3, 1, -3), - (3, 1, -3), - (3, 2, -3), - (3, -3, -2), - (3, -3, -1), - (3, -3, 0), - (3, -3, 1), - (3, -3, 1), - (3, -3, 2), - (2, 3, -3), - (1, 3, -3), - (1, 3, -3), - (0, 3, -3), - (-1, 3, -3), - (-2, 3, -3), - (3, 3, -2), - (3, 3, -1), - (3, 3, 0), - (3, 3, 1), - (3, 3, 1), - (3, 3, 2), - (-3, 3, -2), - (-3, 3, -1), - (-3, 3, 0), - (-3, 3, 1), - (-3, 3, 1), - (-3, 3, 2), - (-2, -3, 3), - (-1, -3, 3), - (0, -3, 3), - (1, -3, 3), - (1, -3, 3), - (2, -3, 3), - (-3, -2, 3), - (-3, -1, 3), - (-3, 0, 3), - (-3, 1, 3), - (-3, 1, 3), - (-3, 2, 3), - (3, -2, 3), - (3, -1, 3), - (3, 0, 3), - (3, 1, 3), - (3, 1, 3), - (3, 2, 3), - (2, 3, 3), - (1, 3, 3), - (1, 3, 3), - (0, 3, 3), - (-1, 3, 3), - (-2, 3, 3), - (-2, -2, -3), - (-2, 2, -3), - (2, 2, -3), - (2, -2, -3), - (-2, -1, -3), - (-2, 0, -3), - (-2, 1, -3), - (-2, 1, -3), - (-1, 2, -3), - (0, 2, -3), - (1, 2, -3), - (1, 2, -3), - (2, 1, -3), - (2, 1, -3), - (2, 0, -3), - (2, -1, -3), - (1, -2, -3), - (1, -2, -3), - (0, -2, -3), - (-1, -2, -3), - (-1, -1, -3), - (-1, 1, -3), - (1, 1, -3), - (1, -1, -3), - (-1, 0, -3), - (-1, 1, -3), - (0, 1, -3), - (1, 1, -3), - (1, 1, -3), - (1, 0, -3), - (1, -1, -3), - (0, -1, -3), - (0, 0, -3), - (0, 1, -3), - (1, 1, -3), - (1, 0, -3), - (-2, -3, -2), - (2, -3, -2), - (2, -3, 2), - (-2, -3, 2), - (-1, -3, -2), - (0, -3, -2), - (1, -3, -2), - (1, -3, -2), - (2, -3, -1), - (2, -3, 0), - (2, -3, 1), - (2, -3, 1), - (1, -3, 2), - (1, -3, 2), - (0, -3, 2), - (-1, -3, 2), - (-2, -3, 1), - (-2, -3, 1), - (-2, -3, 0), - (-2, -3, -1), - (-1, -3, -1), - (1, -3, -1), - (1, -3, 1), - (-1, -3, 1), - (0, -3, -1), - (1, -3, -1), - (1, -3, 0), - (1, -3, 1), - (1, -3, 1), - (0, -3, 1), - (-1, -3, 1), - (-1, -3, 0), - (0, -3, 0), - (1, -3, 0), - (1, -3, 1), - (0, -3, 1), - (-3, -2, -2), - (-3, -2, 2), - (-3, 2, 2), - (-3, 2, -2), - (-3, -2, -1), - (-3, -2, 0), - (-3, -2, 1), - (-3, -2, 1), - (-3, -1, 2), - (-3, 0, 2), - (-3, 1, 2), - (-3, 1, 2), - (-3, 2, 1), - (-3, 2, 1), - (-3, 2, 0), - (-3, 2, -1), - (-3, 1, -2), - (-3, 1, -2), - (-3, 0, -2), - (-3, -1, -2), - (-3, -1, -1), - (-3, -1, 1), - (-3, 1, 1), - (-3, 1, -1), - (-3, -1, 0), - (-3, -1, 1), - (-3, 0, 1), - (-3, 1, 1), - (-3, 1, 1), - (-3, 1, 0), - (-3, 1, -1), - (-3, 0, -1), - (-3, 0, 0), - (-3, 0, 1), - (-3, 1, 1), - (-3, 1, 0), - (3, -2, -2), - (3, 2, -2), - (3, 2, 2), - (3, -2, 2), - (3, -1, -2), - (3, 0, -2), - (3, 1, -2), - (3, 1, -2), - (3, 2, -1), - (3, 2, 0), - (3, 2, 1), - (3, 2, 1), - (3, 1, 2), - (3, 1, 2), + (0, 0, 4), + (0, 0, 3), + (0, 0, 2), + (2, 0, 2), + (4, 0, 2), + (4, 0, 4), + (2, 0, 4), (3, 0, 2), - (3, -1, 2), - (3, -2, 1), - (3, -2, 1), - (3, -2, 0), - (3, -2, -1), - (3, -1, -1), - (3, 1, -1), - (3, 1, 1), - (3, -1, 1), - (3, 0, -1), - (3, 1, -1), - (3, 1, 0), - (3, 1, 1), - (3, 1, 1), - (3, 0, 1), - (3, -1, 1), - (3, -1, 0), - (3, 0, 0), - (3, 1, 0), - (3, 1, 1), - (3, 0, 1), - (2, 3, -2), - (-2, 3, -2), - (-2, 3, 2), - (2, 3, 2), - (1, 3, -2), - (1, 3, -2), - (0, 3, -2), - (-1, 3, -2), - (-2, 3, -1), - (-2, 3, 0), - (-2, 3, 1), - (-2, 3, 1), - (-1, 3, 2), - (0, 3, 2), - (1, 3, 2), - (1, 3, 2), - (2, 3, 1), - (2, 3, 1), - (2, 3, 0), - (2, 3, -1), - (1, 3, -1), - (-1, 3, -1), - (-1, 3, 1), - (1, 3, 1), - (1, 3, -1), - (0, 3, -1), - (-1, 3, 0), - (-1, 3, 1), - (0, 3, 1), - (1, 3, 1), - (1, 3, 1), - (1, 3, 0), - (1, 3, 0), - (0, 3, 0), - (0, 3, 1), - (1, 3, 1), - (-2, -2, 3), - (2, -2, 3), - (2, 2, 3), - (-2, 2, 3), - (-1, -2, 3), - (0, -2, 3), - (1, -2, 3), - (1, -2, 3), - (2, -1, 3), + (4, 0, 3), + (3, 0, 4), (2, 0, 3), - (2, 1, 3), - (2, 1, 3), - (1, 2, 3), - (1, 2, 3), - (0, 2, 3), - (-1, 2, 3), - (-2, 1, 3), - (-2, 1, 3), - (-2, 0, 3), - (-2, -1, 3), - (-1, -1, 3), - (1, -1, 3), - (1, 1, 3), - (-1, 1, 3), - (0, -1, 3), - (1, -1, 3), - (1, 0, 3), - (1, 1, 3), - (1, 1, 3), - (0, 1, 3), - (-1, 1, 3), - (-1, 0, 3), + (3, 0, 3), + (0, 0, 0), + (0, 0, 5), + (0, 5, 5), + (0, 5, 0), + (0, 0, 2), (0, 0, 3), - (1, 0, 3), - (1, 1, 3), - (0, 1, 3), - (-2, -2, -2), - (2, -2, -2), - (2, 2, -2), - (-2, 2, -2), - (-2, -2, 2), - (2, -2, 2), - (2, 2, 2), - (-2, 2, 2), - (-1, -2, -2), - (0, -2, -2), - (1, -2, -2), - (1, -2, -2), - (-2, -1, -2), - (-2, 0, -2), - (-2, 1, -2), - (-2, 1, -2), - (-2, -2, -1), - (-2, -2, 0), - (-2, -2, 1), - (-2, -2, 1), - (2, -1, -2), - (2, 0, -2), - (2, 1, -2), - (2, 1, -2), - (2, -2, -1), - (2, -2, 0), - (2, -2, 1), - (2, -2, 1), - (1, 2, -2), - (1, 2, -2), - (0, 2, -2), - (-1, 2, -2), - (2, 2, -1), - (2, 2, 0), - (2, 2, 1), - (2, 2, 1), - (-2, 2, -1), - (-2, 2, 0), - (-2, 2, 1), - (-2, 2, 1), - (-1, -2, 2), - (0, -2, 2), - (1, -2, 2), - (1, -2, 2), - (-2, -1, 2), - (-2, 0, 2), - (-2, 1, 2), - (-2, 1, 2), - (2, -1, 2), - (2, 0, 2), - (2, 1, 2), - (2, 1, 2), - (1, 2, 2), - (1, 2, 2), + (0, 0, 4), + (0, 2, 5), + (0, 3, 5), + (0, 4, 5), + (0, 5, 4), + (0, 5, 3), + (0, 5, 2), + (0, 4, 0), + (0, 3, 0), + (0, 2, 0), (0, 2, 2), - (-1, 2, 2), - (-1, -1, -2), - (-1, 1, -2), - (1, 1, -2), - (1, -1, -2), - (-1, 0, -2), - (-1, 1, -2), - (0, 1, -2), - (1, 1, -2), - (1, 1, -2), - (1, 0, -2), - (1, -1, -2), - (0, -1, -2), - (0, 0, -2), - (0, 1, -2), - (1, 1, -2), - (1, 0, -2), - (-1, -2, -1), - (1, -2, -1), - (1, -2, 1), - (-1, -2, 1), - (0, -2, -1), - (1, -2, -1), - (1, -2, 0), - (1, -2, 1), - (1, -2, 1), - (0, -2, 1), - (-1, -2, 1), - (-1, -2, 0), - (0, -2, 0), - (1, -2, 0), - (1, -2, 1), - (0, -2, 1), - (-2, -1, -1), - (-2, -1, 1), - (-2, 1, 1), - (-2, 1, -1), - (-2, -1, 0), - (-2, -1, 1), - (-2, 0, 1), - (-2, 1, 1), - (-2, 1, 1), - (-2, 1, 0), - (-2, 1, -1), - (-2, 0, -1), - (-2, 0, 0), - (-2, 0, 1), - (-2, 1, 1), - (-2, 1, 0), - (2, -1, -1), - (2, 1, -1), - (2, 1, 1), - (2, -1, 1), - (2, 0, -1), - (2, 1, -1), - (2, 1, 0), - (2, 1, 1), - (2, 1, 1), - (2, 0, 1), - (2, -1, 1), - (2, -1, 0), - (2, 0, 0), - (2, 1, 0), - (2, 1, 1), - (2, 0, 1), - (1, 2, -1), - (-1, 2, -1), - (-1, 2, 1), - (1, 2, 1), - (1, 2, -1), - (0, 2, -1), - (-1, 2, 0), - (-1, 2, 1), - (0, 2, 1), - (1, 2, 1), - (1, 2, 1), - (1, 2, 0), - (1, 2, 0), + (0, 2, 4), + (0, 4, 4), + (0, 4, 2), + (0, 2, 3), + (0, 3, 4), + (0, 4, 3), + (0, 3, 2), + (0, 3, 3), + (6, 0, 0), + (6, 5, 0), + (6, 5, 5), + (6, 0, 5), + (6, 2, 0), + (6, 3, 0), + (6, 4, 0), + (6, 5, 2), + (6, 5, 3), + (6, 5, 4), + (6, 4, 5), + (6, 3, 5), + (6, 2, 5), + (6, 0, 4), + (6, 0, 3), + (6, 0, 2), + (6, 2, 2), + (6, 4, 2), + (6, 4, 4), + (6, 2, 4), + (6, 3, 2), + (6, 4, 3), + (6, 3, 4), + (6, 2, 3), + (6, 3, 3), + (5, 6, 0), + (0, 6, 0), + (0, 6, 5), + (5, 6, 5), + (4, 6, 0), + (3, 6, 0), + (2, 6, 0), + (0, 6, 2), + (0, 6, 3), + (0, 6, 4), + (2, 6, 5), + (3, 6, 5), + (4, 6, 5), + (5, 6, 4), + (5, 6, 3), + (5, 6, 2), + (4, 6, 2), + (2, 6, 2), + (2, 6, 4), + (4, 6, 4), + (3, 6, 2), + (2, 6, 3), + (3, 6, 4), + (4, 6, 3), + (3, 6, 3), + (0, 0, 6), + (5, 0, 6), + (5, 5, 6), + (0, 5, 6), + (2, 0, 6), + (3, 0, 6), + (4, 0, 6), + (5, 2, 6), + (5, 3, 6), + (5, 4, 6), + (4, 5, 6), + (3, 5, 6), + (2, 5, 6), + (0, 4, 6), + (0, 3, 6), + (0, 2, 6), + (2, 2, 6), + (4, 2, 6), + (4, 4, 6), + (2, 4, 6), + (3, 2, 6), + (4, 3, 6), + (3, 4, 6), + (2, 3, 6), + (3, 3, 6), + (0, 0, 0), + (5, 0, 0), + (5, 5, 0), + (0, 5, 0), + (0, 0, 5), + (5, 0, 5), + (5, 5, 5), + (0, 5, 5), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), (0, 2, 0), - (0, 2, 1), - (1, 2, 1), - (-1, -1, 2), - (1, -1, 2), - (1, 1, 2), - (-1, 1, 2), - (0, -1, 2), - (1, -1, 2), - (1, 0, 2), - (1, 1, 2), - (1, 1, 2), - (0, 1, 2), - (-1, 1, 2), - (-1, 0, 2), + (0, 3, 0), + (0, 4, 0), (0, 0, 2), - (1, 0, 2), - (1, 1, 2), - (0, 1, 2), - (-1, -1, -1), - (1, -1, -1), - (1, 1, -1), - (-1, 1, -1), - (-1, -1, 1), - (1, -1, 1), - (1, 1, 1), - (-1, 1, 1), - (0, -1, -1), - (1, -1, -1), - (-1, 0, -1), - (-1, 1, -1), - (-1, -1, 0), - (-1, -1, 1), - (1, 0, -1), - (1, 1, -1), - (1, -1, 0), - (1, -1, 1), - (1, 1, -1), - (0, 1, -1), - (1, 1, 0), - (1, 1, 1), - (-1, 1, 0), - (-1, 1, 1), - (0, -1, 1), - (1, -1, 1), - (-1, 0, 1), - (-1, 1, 1), - (1, 0, 1), - (1, 1, 1), - (1, 1, 1), - (0, 1, 1), - (0, 0, -1), - (0, 1, -1), - (1, 1, -1), - (1, 0, -1), - (0, -1, 0), - (1, -1, 0), - (1, -1, 1), - (0, -1, 1), - (-1, 0, 0), - (-1, 0, 1), - (-1, 1, 1), - (-1, 1, 0), - (1, 0, 0), - (1, 1, 0), - (1, 1, 1), - (1, 0, 1), - (1, 1, 0), - (0, 1, 0), - (0, 1, 1), - (1, 1, 1), - (0, 0, 1), - (1, 0, 1), - (1, 1, 1), - (0, 1, 1), + (0, 0, 3), + (0, 0, 4), + (5, 2, 0), + (5, 3, 0), + (5, 4, 0), + (5, 0, 2), + (5, 0, 3), + (5, 0, 4), + (4, 5, 0), + (3, 5, 0), + (2, 5, 0), + (5, 5, 2), + (5, 5, 3), + (5, 5, 4), + (0, 5, 2), + (0, 5, 3), + (0, 5, 4), + (2, 0, 5), + (3, 0, 5), + (4, 0, 5), + (0, 2, 5), + (0, 3, 5), + (0, 4, 5), + (5, 2, 5), + (5, 3, 5), + (5, 4, 5), + (4, 5, 5), + (3, 5, 5), + (2, 5, 5), + (2, 2, 0), + (2, 4, 0), + (4, 4, 0), + (4, 2, 0), + (2, 3, 0), + (3, 4, 0), + (4, 3, 0), + (3, 2, 0), + (3, 3, 0), + (2, 0, 2), + (4, 0, 2), + (4, 0, 4), + (2, 0, 4), + (3, 0, 2), + (4, 0, 3), + (3, 0, 4), + (2, 0, 3), + (3, 0, 3), + (0, 2, 2), + (0, 2, 4), + (0, 4, 4), + (0, 4, 2), + (0, 2, 3), + (0, 3, 4), + (0, 4, 3), + (0, 3, 2), + (0, 3, 3), + (5, 2, 2), + (5, 4, 2), + (5, 4, 4), + (5, 2, 4), + (5, 3, 2), + (5, 4, 3), + (5, 3, 4), + (5, 2, 3), + (5, 3, 3), + (4, 5, 2), + (2, 5, 2), + (2, 5, 4), + (4, 5, 4), + (3, 5, 2), + (2, 5, 3), + (3, 5, 4), + (4, 5, 3), + (3, 5, 3), + (2, 2, 5), + (4, 2, 5), + (4, 4, 5), + (2, 4, 5), + (3, 2, 5), + (4, 3, 5), + (3, 4, 5), + (2, 3, 5), + (3, 3, 5), + (2, 2, 2), + (4, 2, 2), + (4, 4, 2), + (2, 4, 2), + (2, 2, 4), + (4, 2, 4), + (4, 4, 4), + (2, 4, 4), + (3, 2, 2), + (2, 3, 2), + (2, 2, 3), + (4, 3, 2), + (4, 2, 3), + (3, 4, 2), + (4, 4, 3), + (2, 4, 3), + (3, 2, 4), + (2, 3, 4), + (4, 3, 4), + (3, 4, 4), + (3, 3, 2), + (3, 2, 3), + (2, 3, 3), + (4, 3, 3), + (3, 4, 3), + (3, 3, 4), + (3, 3, 3), + ], + }, + 7: { + "element_name": "MSH_HEX_512", + "element_type": 96, + "node_tuples": [ (0, 0, 0), + (7, 0, 0), + (7, 7, 0), + (0, 7, 0), + (0, 0, 7), + (7, 0, 7), + (7, 7, 7), + (0, 7, 7), (1, 0, 0), - (1, 1, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (4, 0, 0), + (6, 0, 0), (0, 1, 0), + (0, 2, 0), + (0, 3, 0), + (0, 4, 0), + (0, 4, 0), + (0, 6, 0), (0, 0, 1), + (0, 0, 2), + (0, 0, 3), + (0, 0, 4), + (0, 0, 4), + (0, 0, 6), + (7, 1, 0), + (7, 2, 0), + (7, 3, 0), + (7, 4, 0), + (7, 4, 0), + (7, 6, 0), + (7, 0, 1), + (7, 0, 2), + (7, 0, 3), + (7, 0, 4), + (7, 0, 4), + (7, 0, 6), + (6, 7, 0), + (4, 7, 0), + (4, 7, 0), + (3, 7, 0), + (2, 7, 0), + (1, 7, 0), + (7, 7, 1), + (7, 7, 2), + (7, 7, 3), + (7, 7, 4), + (7, 7, 4), + (7, 7, 6), + (0, 7, 1), + (0, 7, 2), + (0, 7, 3), + (0, 7, 4), + (0, 7, 4), + (0, 7, 6), + (1, 0, 7), + (2, 0, 7), + (3, 0, 7), + (4, 0, 7), + (4, 0, 7), + (6, 0, 7), + (0, 1, 7), + (0, 2, 7), + (0, 3, 7), + (0, 4, 7), + (0, 4, 7), + (0, 6, 7), + (7, 1, 7), + (7, 2, 7), + (7, 3, 7), + (7, 4, 7), + (7, 4, 7), + (7, 6, 7), + (6, 7, 7), + (4, 7, 7), + (4, 7, 7), + (3, 7, 7), + (2, 7, 7), + (1, 7, 7), + (1, 1, 0), + (1, 6, 0), + (6, 6, 0), + (6, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (1, 4, 0), + (2, 6, 0), + (3, 6, 0), + (4, 6, 0), + (4, 6, 0), + (6, 4, 0), + (6, 4, 0), + (6, 3, 0), + (6, 2, 0), + (4, 1, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 4, 0), + (4, 4, 0), + (4, 2, 0), + (2, 3, 0), + (2, 4, 0), + (3, 4, 0), + (4, 4, 0), + (4, 4, 0), + (4, 3, 0), + (4, 2, 0), + (3, 2, 0), + (3, 3, 0), + (3, 4, 0), + (4, 4, 0), + (4, 3, 0), (1, 0, 1), - (1, 1, 1), - (0, 1, 1), + (6, 0, 1), + (6, 0, 6), + (1, 0, 6), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (4, 0, 1), + (6, 0, 2), + (6, 0, 3), + (6, 0, 4), + (6, 0, 4), + (4, 0, 6), + (4, 0, 6), + (3, 0, 6), + (2, 0, 6), + (1, 0, 4), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (4, 0, 2), + (4, 0, 4), + (2, 0, 4), + (3, 0, 2), + (4, 0, 2), + (4, 0, 3), + (4, 0, 4), + (4, 0, 4), + (3, 0, 4), + (2, 0, 4), + (2, 0, 3), + (3, 0, 3), + (4, 0, 3), + (4, 0, 4), + (3, 0, 4), + (0, 1, 1), + (0, 1, 6), + (0, 6, 6), + (0, 6, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 1, 4), + (0, 2, 6), + (0, 3, 6), + (0, 4, 6), + (0, 4, 6), + (0, 6, 4), + (0, 6, 4), + (0, 6, 3), + (0, 6, 2), + (0, 4, 1), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 4), + (0, 4, 4), + (0, 4, 2), + (0, 2, 3), + (0, 2, 4), + (0, 3, 4), + (0, 4, 4), + (0, 4, 4), + (0, 4, 3), + (0, 4, 2), + (0, 3, 2), + (0, 3, 3), + (0, 3, 4), + (0, 4, 4), + (0, 4, 3), + (7, 1, 1), + (7, 6, 1), + (7, 6, 6), + (7, 1, 6), + (7, 2, 1), + (7, 3, 1), + (7, 4, 1), + (7, 4, 1), + (7, 6, 2), + (7, 6, 3), + (7, 6, 4), + (7, 6, 4), + (7, 4, 6), + (7, 4, 6), + (7, 3, 6), + (7, 2, 6), + (7, 1, 4), + (7, 1, 4), + (7, 1, 3), + (7, 1, 2), + (7, 2, 2), + (7, 4, 2), + (7, 4, 4), + (7, 2, 4), + (7, 3, 2), + (7, 4, 2), + (7, 4, 3), + (7, 4, 4), + (7, 4, 4), + (7, 3, 4), + (7, 2, 4), + (7, 2, 3), + (7, 3, 3), + (7, 4, 3), + (7, 4, 4), + (7, 3, 4), + (6, 7, 1), + (1, 7, 1), + (1, 7, 6), + (6, 7, 6), + (4, 7, 1), + (4, 7, 1), + (3, 7, 1), + (2, 7, 1), + (1, 7, 2), + (1, 7, 3), + (1, 7, 4), + (1, 7, 4), + (2, 7, 6), + (3, 7, 6), + (4, 7, 6), + (4, 7, 6), + (6, 7, 4), + (6, 7, 4), + (6, 7, 3), + (6, 7, 2), + (4, 7, 2), + (2, 7, 2), + (2, 7, 4), + (4, 7, 4), + (4, 7, 2), + (3, 7, 2), + (2, 7, 3), + (2, 7, 4), + (3, 7, 4), + (4, 7, 4), + (4, 7, 4), + (4, 7, 3), + (4, 7, 3), + (3, 7, 3), + (3, 7, 4), + (4, 7, 4), + (1, 1, 7), + (6, 1, 7), + (6, 6, 7), + (1, 6, 7), + (2, 1, 7), + (3, 1, 7), + (4, 1, 7), + (4, 1, 7), + (6, 2, 7), + (6, 3, 7), + (6, 4, 7), + (6, 4, 7), + (4, 6, 7), + (4, 6, 7), + (3, 6, 7), + (2, 6, 7), + (1, 4, 7), + (1, 4, 7), + (1, 3, 7), + (1, 2, 7), + (2, 2, 7), + (4, 2, 7), + (4, 4, 7), + (2, 4, 7), + (3, 2, 7), + (4, 2, 7), + (4, 3, 7), + (4, 4, 7), + (4, 4, 7), + (3, 4, 7), + (2, 4, 7), + (2, 3, 7), + (3, 3, 7), + (4, 3, 7), + (4, 4, 7), + (3, 4, 7), + (1, 1, 1), + (6, 1, 1), + (6, 6, 1), + (1, 6, 1), + (1, 1, 6), + (6, 1, 6), + (6, 6, 6), + (1, 6, 6), + (2, 1, 1), + (3, 1, 1), + (4, 1, 1), + (4, 1, 1), + (1, 2, 1), + (1, 3, 1), + (1, 4, 1), + (1, 4, 1), + (1, 1, 2), + (1, 1, 3), + (1, 1, 4), + (1, 1, 4), + (6, 2, 1), + (6, 3, 1), + (6, 4, 1), + (6, 4, 1), + (6, 1, 2), + (6, 1, 3), + (6, 1, 4), + (6, 1, 4), + (4, 6, 1), + (4, 6, 1), + (3, 6, 1), + (2, 6, 1), + (6, 6, 2), + (6, 6, 3), + (6, 6, 4), + (6, 6, 4), + (1, 6, 2), + (1, 6, 3), + (1, 6, 4), + (1, 6, 4), + (2, 1, 6), + (3, 1, 6), + (4, 1, 6), + (4, 1, 6), + (1, 2, 6), + (1, 3, 6), + (1, 4, 6), + (1, 4, 6), + (6, 2, 6), + (6, 3, 6), + (6, 4, 6), + (6, 4, 6), + (4, 6, 6), + (4, 6, 6), + (3, 6, 6), + (2, 6, 6), + (2, 2, 1), + (2, 4, 1), + (4, 4, 1), + (4, 2, 1), + (2, 3, 1), + (2, 4, 1), + (3, 4, 1), + (4, 4, 1), + (4, 4, 1), + (4, 3, 1), + (4, 2, 1), + (3, 2, 1), + (3, 3, 1), + (3, 4, 1), + (4, 4, 1), + (4, 3, 1), + (2, 1, 2), + (4, 1, 2), + (4, 1, 4), + (2, 1, 4), + (3, 1, 2), + (4, 1, 2), + (4, 1, 3), + (4, 1, 4), + (4, 1, 4), + (3, 1, 4), + (2, 1, 4), + (2, 1, 3), + (3, 1, 3), + (4, 1, 3), + (4, 1, 4), + (3, 1, 4), + (1, 2, 2), + (1, 2, 4), + (1, 4, 4), + (1, 4, 2), + (1, 2, 3), + (1, 2, 4), + (1, 3, 4), + (1, 4, 4), + (1, 4, 4), + (1, 4, 3), + (1, 4, 2), + (1, 3, 2), + (1, 3, 3), + (1, 3, 4), + (1, 4, 4), + (1, 4, 3), + (6, 2, 2), + (6, 4, 2), + (6, 4, 4), + (6, 2, 4), + (6, 3, 2), + (6, 4, 2), + (6, 4, 3), + (6, 4, 4), + (6, 4, 4), + (6, 3, 4), + (6, 2, 4), + (6, 2, 3), + (6, 3, 3), + (6, 4, 3), + (6, 4, 4), + (6, 3, 4), + (4, 6, 2), + (2, 6, 2), + (2, 6, 4), + (4, 6, 4), + (4, 6, 2), + (3, 6, 2), + (2, 6, 3), + (2, 6, 4), + (3, 6, 4), + (4, 6, 4), + (4, 6, 4), + (4, 6, 3), + (4, 6, 3), + (3, 6, 3), + (3, 6, 4), + (4, 6, 4), + (2, 2, 6), + (4, 2, 6), + (4, 4, 6), + (2, 4, 6), + (3, 2, 6), + (4, 2, 6), + (4, 3, 6), + (4, 4, 6), + (4, 4, 6), + (3, 4, 6), + (2, 4, 6), + (2, 3, 6), + (3, 3, 6), + (4, 3, 6), + (4, 4, 6), + (3, 4, 6), + (2, 2, 2), + (4, 2, 2), + (4, 4, 2), + (2, 4, 2), + (2, 2, 4), + (4, 2, 4), + (4, 4, 4), + (2, 4, 4), + (3, 2, 2), + (4, 2, 2), + (2, 3, 2), + (2, 4, 2), + (2, 2, 3), + (2, 2, 4), + (4, 3, 2), + (4, 4, 2), + (4, 2, 3), + (4, 2, 4), + (4, 4, 2), + (3, 4, 2), + (4, 4, 3), + (4, 4, 4), + (2, 4, 3), + (2, 4, 4), + (3, 2, 4), + (4, 2, 4), + (2, 3, 4), + (2, 4, 4), + (4, 3, 4), + (4, 4, 4), + (4, 4, 4), + (3, 4, 4), + (3, 3, 2), + (3, 4, 2), + (4, 4, 2), + (4, 3, 2), + (3, 2, 3), + (4, 2, 3), + (4, 2, 4), + (3, 2, 4), + (2, 3, 3), + (2, 3, 4), + (2, 4, 4), + (2, 4, 3), + (4, 3, 3), + (4, 4, 3), + (4, 4, 4), + (4, 3, 4), + (4, 4, 3), + (3, 4, 3), + (3, 4, 4), + (4, 4, 4), + (3, 3, 4), + (4, 3, 4), + (4, 4, 4), + (3, 4, 4), + (3, 3, 3), + (4, 3, 3), + (4, 4, 3), + (3, 4, 3), + (3, 3, 4), + (4, 3, 4), + (4, 4, 4), + (3, 4, 4), + ], + }, + 8: { + "element_name": "MSH_HEX_729", + "element_type": 97, + "node_tuples": [ + (0, 0, 0), + (8, 0, 0), + (8, 8, 0), + (0, 8, 0), + (0, 0, 8), + (8, 0, 8), + (8, 8, 8), + (0, 8, 8), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), + (6, 0, 0), + (7, 0, 0), + (0, 1, 0), + (0, 2, 0), + (0, 3, 0), + (0, 4, 0), + (0, 5, 0), + (0, 6, 0), + (0, 7, 0), + (0, 0, 1), + (0, 0, 2), + (0, 0, 3), + (0, 0, 4), + (0, 0, 5), + (0, 0, 6), + (0, 0, 7), + (8, 1, 0), + (8, 2, 0), + (8, 3, 0), + (8, 4, 0), + (8, 5, 0), + (8, 6, 0), + (8, 7, 0), + (8, 0, 1), + (8, 0, 2), + (8, 0, 3), + (8, 0, 4), + (8, 0, 5), + (8, 0, 6), + (8, 0, 7), + (7, 8, 0), + (6, 8, 0), + (5, 8, 0), + (4, 8, 0), + (3, 8, 0), + (2, 8, 0), + (1, 8, 0), + (8, 8, 1), + (8, 8, 2), + (8, 8, 3), + (8, 8, 4), + (8, 8, 5), + (8, 8, 6), + (8, 8, 7), + (0, 8, 1), + (0, 8, 2), + (0, 8, 3), + (0, 8, 4), + (0, 8, 5), + (0, 8, 6), + (0, 8, 7), + (1, 0, 8), + (2, 0, 8), + (3, 0, 8), + (4, 0, 8), + (5, 0, 8), + (6, 0, 8), + (7, 0, 8), + (0, 1, 8), + (0, 2, 8), + (0, 3, 8), + (0, 4, 8), + (0, 5, 8), + (0, 6, 8), + (0, 7, 8), + (8, 1, 8), + (8, 2, 8), + (8, 3, 8), + (8, 4, 8), + (8, 5, 8), + (8, 6, 8), + (8, 7, 8), + (7, 8, 8), + (6, 8, 8), + (5, 8, 8), + (4, 8, 8), + (3, 8, 8), + (2, 8, 8), + (1, 8, 8), + (1, 1, 0), + (1, 7, 0), + (7, 7, 0), + (7, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (1, 5, 0), + (1, 6, 0), + (2, 7, 0), + (3, 7, 0), + (4, 7, 0), + (5, 7, 0), + (6, 7, 0), + (7, 6, 0), + (7, 5, 0), + (7, 4, 0), + (7, 3, 0), + (7, 2, 0), + (6, 1, 0), + (5, 1, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 6, 0), + (6, 6, 0), + (6, 2, 0), + (2, 3, 0), + (2, 4, 0), + (2, 5, 0), + (3, 6, 0), + (4, 6, 0), + (5, 6, 0), + (6, 5, 0), + (6, 4, 0), + (6, 3, 0), + (5, 2, 0), + (4, 2, 0), + (3, 2, 0), + (3, 3, 0), + (3, 5, 0), + (5, 5, 0), + (5, 3, 0), + (3, 4, 0), + (4, 5, 0), + (5, 4, 0), + (4, 3, 0), + (4, 4, 0), + (1, 0, 1), + (7, 0, 1), + (7, 0, 7), + (1, 0, 7), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (5, 0, 1), + (6, 0, 1), + (7, 0, 2), + (7, 0, 3), + (7, 0, 4), + (7, 0, 5), + (7, 0, 6), + (6, 0, 7), + (5, 0, 7), + (4, 0, 7), + (3, 0, 7), + (2, 0, 7), + (1, 0, 6), + (1, 0, 5), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (6, 0, 2), + (6, 0, 6), + (2, 0, 6), + (3, 0, 2), + (4, 0, 2), + (5, 0, 2), + (6, 0, 3), + (6, 0, 4), + (6, 0, 5), + (5, 0, 6), + (4, 0, 6), + (3, 0, 6), + (2, 0, 5), + (2, 0, 4), + (2, 0, 3), + (3, 0, 3), + (5, 0, 3), + (5, 0, 5), + (3, 0, 5), + (4, 0, 3), + (5, 0, 4), + (4, 0, 5), + (3, 0, 4), + (4, 0, 4), + (0, 1, 1), + (0, 1, 7), + (0, 7, 7), + (0, 7, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 1, 5), + (0, 1, 6), + (0, 2, 7), + (0, 3, 7), + (0, 4, 7), + (0, 5, 7), + (0, 6, 7), + (0, 7, 6), + (0, 7, 5), + (0, 7, 4), + (0, 7, 3), + (0, 7, 2), + (0, 6, 1), + (0, 5, 1), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 6), + (0, 6, 6), + (0, 6, 2), + (0, 2, 3), + (0, 2, 4), + (0, 2, 5), + (0, 3, 6), + (0, 4, 6), + (0, 5, 6), + (0, 6, 5), + (0, 6, 4), + (0, 6, 3), + (0, 5, 2), + (0, 4, 2), + (0, 3, 2), + (0, 3, 3), + (0, 3, 5), + (0, 5, 5), + (0, 5, 3), + (0, 3, 4), + (0, 4, 5), + (0, 5, 4), + (0, 4, 3), + (0, 4, 4), + (8, 1, 1), + (8, 7, 1), + (8, 7, 7), + (8, 1, 7), + (8, 2, 1), + (8, 3, 1), + (8, 4, 1), + (8, 5, 1), + (8, 6, 1), + (8, 7, 2), + (8, 7, 3), + (8, 7, 4), + (8, 7, 5), + (8, 7, 6), + (8, 6, 7), + (8, 5, 7), + (8, 4, 7), + (8, 3, 7), + (8, 2, 7), + (8, 1, 6), + (8, 1, 5), + (8, 1, 4), + (8, 1, 3), + (8, 1, 2), + (8, 2, 2), + (8, 6, 2), + (8, 6, 6), + (8, 2, 6), + (8, 3, 2), + (8, 4, 2), + (8, 5, 2), + (8, 6, 3), + (8, 6, 4), + (8, 6, 5), + (8, 5, 6), + (8, 4, 6), + (8, 3, 6), + (8, 2, 5), + (8, 2, 4), + (8, 2, 3), + (8, 3, 3), + (8, 5, 3), + (8, 5, 5), + (8, 3, 5), + (8, 4, 3), + (8, 5, 4), + (8, 4, 5), + (8, 3, 4), + (8, 4, 4), + (7, 8, 1), + (1, 8, 1), + (1, 8, 7), + (7, 8, 7), + (6, 8, 1), + (5, 8, 1), + (4, 8, 1), + (3, 8, 1), + (2, 8, 1), + (1, 8, 2), + (1, 8, 3), + (1, 8, 4), + (1, 8, 5), + (1, 8, 6), + (2, 8, 7), + (3, 8, 7), + (4, 8, 7), + (5, 8, 7), + (6, 8, 7), + (7, 8, 6), + (7, 8, 5), + (7, 8, 4), + (7, 8, 3), + (7, 8, 2), + (6, 8, 2), + (2, 8, 2), + (2, 8, 6), + (6, 8, 6), + (5, 8, 2), + (4, 8, 2), + (3, 8, 2), + (2, 8, 3), + (2, 8, 4), + (2, 8, 5), + (3, 8, 6), + (4, 8, 6), + (5, 8, 6), + (6, 8, 5), + (6, 8, 4), + (6, 8, 3), + (5, 8, 3), + (3, 8, 3), + (3, 8, 5), + (5, 8, 5), + (4, 8, 3), + (3, 8, 4), + (4, 8, 5), + (5, 8, 4), + (4, 8, 4), + (1, 1, 8), + (7, 1, 8), + (7, 7, 8), + (1, 7, 8), + (2, 1, 8), + (3, 1, 8), + (4, 1, 8), + (5, 1, 8), + (6, 1, 8), + (7, 2, 8), + (7, 3, 8), + (7, 4, 8), + (7, 5, 8), + (7, 6, 8), + (6, 7, 8), + (5, 7, 8), + (4, 7, 8), + (3, 7, 8), + (2, 7, 8), + (1, 6, 8), + (1, 5, 8), + (1, 4, 8), + (1, 3, 8), + (1, 2, 8), + (2, 2, 8), + (6, 2, 8), + (6, 6, 8), + (2, 6, 8), + (3, 2, 8), + (4, 2, 8), + (5, 2, 8), + (6, 3, 8), + (6, 4, 8), + (6, 5, 8), + (5, 6, 8), + (4, 6, 8), + (3, 6, 8), + (2, 5, 8), + (2, 4, 8), + (2, 3, 8), + (3, 3, 8), + (5, 3, 8), + (5, 5, 8), + (3, 5, 8), + (4, 3, 8), + (5, 4, 8), + (4, 5, 8), + (3, 4, 8), + (4, 4, 8), + (1, 1, 1), + (7, 1, 1), + (7, 7, 1), + (1, 7, 1), + (1, 1, 7), + (7, 1, 7), + (7, 7, 7), + (1, 7, 7), + (2, 1, 1), + (3, 1, 1), + (4, 1, 1), + (5, 1, 1), + (6, 1, 1), + (1, 2, 1), + (1, 3, 1), + (1, 4, 1), + (1, 5, 1), + (1, 6, 1), + (1, 1, 2), + (1, 1, 3), + (1, 1, 4), + (1, 1, 5), + (1, 1, 6), + (7, 2, 1), + (7, 3, 1), + (7, 4, 1), + (7, 5, 1), + (7, 6, 1), + (7, 1, 2), + (7, 1, 3), + (7, 1, 4), + (7, 1, 5), + (7, 1, 6), + (6, 7, 1), + (5, 7, 1), + (4, 7, 1), + (3, 7, 1), + (2, 7, 1), + (7, 7, 2), + (7, 7, 3), + (7, 7, 4), + (7, 7, 5), + (7, 7, 6), + (1, 7, 2), + (1, 7, 3), + (1, 7, 4), + (1, 7, 5), + (1, 7, 6), + (2, 1, 7), + (3, 1, 7), + (4, 1, 7), + (5, 1, 7), + (6, 1, 7), + (1, 2, 7), + (1, 3, 7), + (1, 4, 7), + (1, 5, 7), + (1, 6, 7), + (7, 2, 7), + (7, 3, 7), + (7, 4, 7), + (7, 5, 7), + (7, 6, 7), + (6, 7, 7), + (5, 7, 7), + (4, 7, 7), + (3, 7, 7), + (2, 7, 7), + (2, 2, 1), + (2, 6, 1), + (6, 6, 1), + (6, 2, 1), + (2, 3, 1), + (2, 4, 1), + (2, 5, 1), + (3, 6, 1), + (4, 6, 1), + (5, 6, 1), + (6, 5, 1), + (6, 4, 1), + (6, 3, 1), + (5, 2, 1), + (4, 2, 1), + (3, 2, 1), + (3, 3, 1), + (3, 5, 1), + (5, 5, 1), + (5, 3, 1), + (3, 4, 1), + (4, 5, 1), + (5, 4, 1), + (4, 3, 1), + (4, 4, 1), + (2, 1, 2), + (6, 1, 2), + (6, 1, 6), + (2, 1, 6), + (3, 1, 2), + (4, 1, 2), + (5, 1, 2), + (6, 1, 3), + (6, 1, 4), + (6, 1, 5), + (5, 1, 6), + (4, 1, 6), + (3, 1, 6), + (2, 1, 5), + (2, 1, 4), + (2, 1, 3), + (3, 1, 3), + (5, 1, 3), + (5, 1, 5), + (3, 1, 5), + (4, 1, 3), + (5, 1, 4), + (4, 1, 5), + (3, 1, 4), + (4, 1, 4), + (1, 2, 2), + (1, 2, 6), + (1, 6, 6), + (1, 6, 2), + (1, 2, 3), + (1, 2, 4), + (1, 2, 5), + (1, 3, 6), + (1, 4, 6), + (1, 5, 6), + (1, 6, 5), + (1, 6, 4), + (1, 6, 3), + (1, 5, 2), + (1, 4, 2), + (1, 3, 2), + (1, 3, 3), + (1, 3, 5), + (1, 5, 5), + (1, 5, 3), + (1, 3, 4), + (1, 4, 5), + (1, 5, 4), + (1, 4, 3), + (1, 4, 4), + (7, 2, 2), + (7, 6, 2), + (7, 6, 6), + (7, 2, 6), + (7, 3, 2), + (7, 4, 2), + (7, 5, 2), + (7, 6, 3), + (7, 6, 4), + (7, 6, 5), + (7, 5, 6), + (7, 4, 6), + (7, 3, 6), + (7, 2, 5), + (7, 2, 4), + (7, 2, 3), + (7, 3, 3), + (7, 5, 3), + (7, 5, 5), + (7, 3, 5), + (7, 4, 3), + (7, 5, 4), + (7, 4, 5), + (7, 3, 4), + (7, 4, 4), + (6, 7, 2), + (2, 7, 2), + (2, 7, 6), + (6, 7, 6), + (5, 7, 2), + (4, 7, 2), + (3, 7, 2), + (2, 7, 3), + (2, 7, 4), + (2, 7, 5), + (3, 7, 6), + (4, 7, 6), + (5, 7, 6), + (6, 7, 5), + (6, 7, 4), + (6, 7, 3), + (5, 7, 3), + (3, 7, 3), + (3, 7, 5), + (5, 7, 5), + (4, 7, 3), + (3, 7, 4), + (4, 7, 5), + (5, 7, 4), + (4, 7, 4), + (2, 2, 7), + (6, 2, 7), + (6, 6, 7), + (2, 6, 7), + (3, 2, 7), + (4, 2, 7), + (5, 2, 7), + (6, 3, 7), + (6, 4, 7), + (6, 5, 7), + (5, 6, 7), + (4, 6, 7), + (3, 6, 7), + (2, 5, 7), + (2, 4, 7), + (2, 3, 7), + (3, 3, 7), + (5, 3, 7), + (5, 5, 7), + (3, 5, 7), + (4, 3, 7), + (5, 4, 7), + (4, 5, 7), + (3, 4, 7), + (4, 4, 7), + (2, 2, 2), + (6, 2, 2), + (6, 6, 2), + (2, 6, 2), + (2, 2, 6), + (6, 2, 6), + (6, 6, 6), + (2, 6, 6), + (3, 2, 2), + (4, 2, 2), + (5, 2, 2), + (2, 3, 2), + (2, 4, 2), + (2, 5, 2), + (2, 2, 3), + (2, 2, 4), + (2, 2, 5), + (6, 3, 2), + (6, 4, 2), + (6, 5, 2), + (6, 2, 3), + (6, 2, 4), + (6, 2, 5), + (5, 6, 2), + (4, 6, 2), + (3, 6, 2), + (6, 6, 3), + (6, 6, 4), + (6, 6, 5), + (2, 6, 3), + (2, 6, 4), + (2, 6, 5), + (3, 2, 6), + (4, 2, 6), + (5, 2, 6), + (2, 3, 6), + (2, 4, 6), + (2, 5, 6), + (6, 3, 6), + (6, 4, 6), + (6, 5, 6), + (5, 6, 6), + (4, 6, 6), + (3, 6, 6), + (3, 3, 2), + (3, 5, 2), + (5, 5, 2), + (5, 3, 2), + (3, 4, 2), + (4, 5, 2), + (5, 4, 2), + (4, 3, 2), + (4, 4, 2), + (3, 2, 3), + (5, 2, 3), + (5, 2, 5), + (3, 2, 5), + (4, 2, 3), + (5, 2, 4), + (4, 2, 5), + (3, 2, 4), + (4, 2, 4), + (2, 3, 3), + (2, 3, 5), + (2, 5, 5), + (2, 5, 3), + (2, 3, 4), + (2, 4, 5), + (2, 5, 4), + (2, 4, 3), + (2, 4, 4), + (6, 3, 3), + (6, 5, 3), + (6, 5, 5), + (6, 3, 5), + (6, 4, 3), + (6, 5, 4), + (6, 4, 5), + (6, 3, 4), + (6, 4, 4), + (5, 6, 3), + (3, 6, 3), + (3, 6, 5), + (5, 6, 5), + (4, 6, 3), + (3, 6, 4), + (4, 6, 5), + (5, 6, 4), + (4, 6, 4), + (3, 3, 6), + (5, 3, 6), + (5, 5, 6), + (3, 5, 6), + (4, 3, 6), + (5, 4, 6), + (4, 5, 6), + (3, 4, 6), + (4, 4, 6), + (3, 3, 3), + (5, 3, 3), + (5, 5, 3), + (3, 5, 3), + (3, 3, 5), + (5, 3, 5), + (5, 5, 5), + (3, 5, 5), + (4, 3, 3), + (3, 4, 3), + (3, 3, 4), + (5, 4, 3), + (5, 3, 4), + (4, 5, 3), + (5, 5, 4), + (3, 5, 4), + (4, 3, 5), + (3, 4, 5), + (5, 4, 5), + (4, 5, 5), + (4, 4, 3), + (4, 3, 4), + (3, 4, 4), + (5, 4, 4), + (4, 5, 4), + (4, 4, 5), + (4, 4, 4), + ], + }, + 9: { + "element_name": "MSH_HEX_1000", + "element_type": 98, + "node_tuples": [ + (0, 0, 0), + (9, 0, 0), + (9, 9, 0), + (0, 9, 0), + (0, 0, 9), + (9, 0, 9), + (9, 9, 9), + (0, 9, 9), + (1, 0, 0), + (2, 0, 0), + (3, 0, 0), + (4, 0, 0), + (5, 0, 0), + (6, 0, 0), + (6, 0, 0), + (8, 0, 0), + (0, 1, 0), + (0, 2, 0), + (0, 3, 0), + (0, 4, 0), + (0, 5, 0), + (0, 6, 0), + (0, 6, 0), + (0, 8, 0), + (0, 0, 1), + (0, 0, 2), + (0, 0, 3), + (0, 0, 4), + (0, 0, 5), + (0, 0, 6), + (0, 0, 6), + (0, 0, 8), + (9, 1, 0), + (9, 2, 0), + (9, 3, 0), + (9, 4, 0), + (9, 5, 0), + (9, 6, 0), + (9, 6, 0), + (9, 8, 0), + (9, 0, 1), + (9, 0, 2), + (9, 0, 3), + (9, 0, 4), + (9, 0, 5), + (9, 0, 6), + (9, 0, 6), + (9, 0, 8), + (8, 9, 0), + (6, 9, 0), + (6, 9, 0), + (5, 9, 0), + (4, 9, 0), + (3, 9, 0), + (2, 9, 0), + (1, 9, 0), + (9, 9, 1), + (9, 9, 2), + (9, 9, 3), + (9, 9, 4), + (9, 9, 5), + (9, 9, 6), + (9, 9, 6), + (9, 9, 8), + (0, 9, 1), + (0, 9, 2), + (0, 9, 3), + (0, 9, 4), + (0, 9, 5), + (0, 9, 6), + (0, 9, 6), + (0, 9, 8), + (1, 0, 9), + (2, 0, 9), + (3, 0, 9), + (4, 0, 9), + (5, 0, 9), + (6, 0, 9), + (6, 0, 9), + (8, 0, 9), + (0, 1, 9), + (0, 2, 9), + (0, 3, 9), + (0, 4, 9), + (0, 5, 9), + (0, 6, 9), + (0, 6, 9), + (0, 8, 9), + (9, 1, 9), + (9, 2, 9), + (9, 3, 9), + (9, 4, 9), + (9, 5, 9), + (9, 6, 9), + (9, 6, 9), + (9, 8, 9), + (8, 9, 9), + (6, 9, 9), + (6, 9, 9), + (5, 9, 9), + (4, 9, 9), + (3, 9, 9), + (2, 9, 9), + (1, 9, 9), + (1, 1, 0), + (1, 8, 0), + (8, 8, 0), + (8, 1, 0), + (1, 2, 0), + (1, 3, 0), + (1, 4, 0), + (1, 5, 0), + (1, 6, 0), + (1, 6, 0), + (2, 8, 0), + (3, 8, 0), + (4, 8, 0), + (5, 8, 0), + (6, 8, 0), + (6, 8, 0), + (8, 6, 0), + (8, 6, 0), + (8, 5, 0), + (8, 4, 0), + (8, 3, 0), + (8, 2, 0), + (6, 1, 0), + (6, 1, 0), + (5, 1, 0), + (4, 1, 0), + (3, 1, 0), + (2, 1, 0), + (2, 2, 0), + (2, 6, 0), + (6, 6, 0), + (6, 2, 0), + (2, 3, 0), + (2, 4, 0), + (2, 5, 0), + (2, 6, 0), + (3, 6, 0), + (4, 6, 0), + (5, 6, 0), + (6, 6, 0), + (6, 6, 0), + (6, 5, 0), + (6, 4, 0), + (6, 3, 0), + (6, 2, 0), + (5, 2, 0), + (4, 2, 0), + (3, 2, 0), + (3, 3, 0), + (3, 6, 0), + (6, 6, 0), + (6, 3, 0), + (3, 4, 0), + (3, 5, 0), + (4, 6, 0), + (5, 6, 0), + (6, 5, 0), + (6, 4, 0), + (5, 3, 0), + (4, 3, 0), + (4, 4, 0), + (4, 5, 0), + (5, 5, 0), + (5, 4, 0), + (1, 0, 1), + (8, 0, 1), + (8, 0, 8), + (1, 0, 8), + (2, 0, 1), + (3, 0, 1), + (4, 0, 1), + (5, 0, 1), + (6, 0, 1), + (6, 0, 1), + (8, 0, 2), + (8, 0, 3), + (8, 0, 4), + (8, 0, 5), + (8, 0, 6), + (8, 0, 6), + (6, 0, 8), + (6, 0, 8), + (5, 0, 8), + (4, 0, 8), + (3, 0, 8), + (2, 0, 8), + (1, 0, 6), + (1, 0, 6), + (1, 0, 5), + (1, 0, 4), + (1, 0, 3), + (1, 0, 2), + (2, 0, 2), + (6, 0, 2), + (6, 0, 6), + (2, 0, 6), + (3, 0, 2), + (4, 0, 2), + (5, 0, 2), + (6, 0, 2), + (6, 0, 3), + (6, 0, 4), + (6, 0, 5), + (6, 0, 6), + (6, 0, 6), + (5, 0, 6), + (4, 0, 6), + (3, 0, 6), + (2, 0, 6), + (2, 0, 5), + (2, 0, 4), + (2, 0, 3), + (3, 0, 3), + (6, 0, 3), + (6, 0, 6), + (3, 0, 6), + (4, 0, 3), + (5, 0, 3), + (6, 0, 4), + (6, 0, 5), + (5, 0, 6), + (4, 0, 6), + (3, 0, 5), + (3, 0, 4), + (4, 0, 4), + (5, 0, 4), + (5, 0, 5), + (4, 0, 5), + (0, 1, 1), + (0, 1, 8), + (0, 8, 8), + (0, 8, 1), + (0, 1, 2), + (0, 1, 3), + (0, 1, 4), + (0, 1, 5), + (0, 1, 6), + (0, 1, 6), + (0, 2, 8), + (0, 3, 8), + (0, 4, 8), + (0, 5, 8), + (0, 6, 8), + (0, 6, 8), + (0, 8, 6), + (0, 8, 6), + (0, 8, 5), + (0, 8, 4), + (0, 8, 3), + (0, 8, 2), + (0, 6, 1), + (0, 6, 1), + (0, 5, 1), + (0, 4, 1), + (0, 3, 1), + (0, 2, 1), + (0, 2, 2), + (0, 2, 6), + (0, 6, 6), + (0, 6, 2), + (0, 2, 3), + (0, 2, 4), + (0, 2, 5), + (0, 2, 6), + (0, 3, 6), + (0, 4, 6), + (0, 5, 6), + (0, 6, 6), + (0, 6, 6), + (0, 6, 5), + (0, 6, 4), + (0, 6, 3), + (0, 6, 2), + (0, 5, 2), + (0, 4, 2), + (0, 3, 2), + (0, 3, 3), + (0, 3, 6), + (0, 6, 6), + (0, 6, 3), + (0, 3, 4), + (0, 3, 5), + (0, 4, 6), + (0, 5, 6), + (0, 6, 5), + (0, 6, 4), + (0, 5, 3), + (0, 4, 3), + (0, 4, 4), + (0, 4, 5), + (0, 5, 5), + (0, 5, 4), + (9, 1, 1), + (9, 8, 1), + (9, 8, 8), + (9, 1, 8), + (9, 2, 1), + (9, 3, 1), + (9, 4, 1), + (9, 5, 1), + (9, 6, 1), + (9, 6, 1), + (9, 8, 2), + (9, 8, 3), + (9, 8, 4), + (9, 8, 5), + (9, 8, 6), + (9, 8, 6), + (9, 6, 8), + (9, 6, 8), + (9, 5, 8), + (9, 4, 8), + (9, 3, 8), + (9, 2, 8), + (9, 1, 6), + (9, 1, 6), + (9, 1, 5), + (9, 1, 4), + (9, 1, 3), + (9, 1, 2), + (9, 2, 2), + (9, 6, 2), + (9, 6, 6), + (9, 2, 6), + (9, 3, 2), + (9, 4, 2), + (9, 5, 2), + (9, 6, 2), + (9, 6, 3), + (9, 6, 4), + (9, 6, 5), + (9, 6, 6), + (9, 6, 6), + (9, 5, 6), + (9, 4, 6), + (9, 3, 6), + (9, 2, 6), + (9, 2, 5), + (9, 2, 4), + (9, 2, 3), + (9, 3, 3), + (9, 6, 3), + (9, 6, 6), + (9, 3, 6), + (9, 4, 3), + (9, 5, 3), + (9, 6, 4), + (9, 6, 5), + (9, 5, 6), + (9, 4, 6), + (9, 3, 5), + (9, 3, 4), + (9, 4, 4), + (9, 5, 4), + (9, 5, 5), + (9, 4, 5), + (8, 9, 1), + (1, 9, 1), + (1, 9, 8), + (8, 9, 8), + (6, 9, 1), + (6, 9, 1), + (5, 9, 1), + (4, 9, 1), + (3, 9, 1), + (2, 9, 1), + (1, 9, 2), + (1, 9, 3), + (1, 9, 4), + (1, 9, 5), + (1, 9, 6), + (1, 9, 6), + (2, 9, 8), + (3, 9, 8), + (4, 9, 8), + (5, 9, 8), + (6, 9, 8), + (6, 9, 8), + (8, 9, 6), + (8, 9, 6), + (8, 9, 5), + (8, 9, 4), + (8, 9, 3), + (8, 9, 2), + (6, 9, 2), + (2, 9, 2), + (2, 9, 6), + (6, 9, 6), + (6, 9, 2), + (5, 9, 2), + (4, 9, 2), + (3, 9, 2), + (2, 9, 3), + (2, 9, 4), + (2, 9, 5), + (2, 9, 6), + (3, 9, 6), + (4, 9, 6), + (5, 9, 6), + (6, 9, 6), + (6, 9, 6), + (6, 9, 5), + (6, 9, 4), + (6, 9, 3), + (6, 9, 3), + (3, 9, 3), + (3, 9, 6), + (6, 9, 6), + (5, 9, 3), + (4, 9, 3), + (3, 9, 4), + (3, 9, 5), + (4, 9, 6), + (5, 9, 6), + (6, 9, 5), + (6, 9, 4), + (5, 9, 4), + (4, 9, 4), + (4, 9, 5), + (5, 9, 5), + (1, 1, 9), + (8, 1, 9), + (8, 8, 9), + (1, 8, 9), + (2, 1, 9), + (3, 1, 9), + (4, 1, 9), + (5, 1, 9), + (6, 1, 9), + (6, 1, 9), + (8, 2, 9), + (8, 3, 9), + (8, 4, 9), + (8, 5, 9), + (8, 6, 9), + (8, 6, 9), + (6, 8, 9), + (6, 8, 9), + (5, 8, 9), + (4, 8, 9), + (3, 8, 9), + (2, 8, 9), + (1, 6, 9), + (1, 6, 9), + (1, 5, 9), + (1, 4, 9), + (1, 3, 9), + (1, 2, 9), + (2, 2, 9), + (6, 2, 9), + (6, 6, 9), + (2, 6, 9), + (3, 2, 9), + (4, 2, 9), + (5, 2, 9), + (6, 2, 9), + (6, 3, 9), + (6, 4, 9), + (6, 5, 9), + (6, 6, 9), + (6, 6, 9), + (5, 6, 9), + (4, 6, 9), + (3, 6, 9), + (2, 6, 9), + (2, 5, 9), + (2, 4, 9), + (2, 3, 9), + (3, 3, 9), + (6, 3, 9), + (6, 6, 9), + (3, 6, 9), + (4, 3, 9), + (5, 3, 9), + (6, 4, 9), + (6, 5, 9), + (5, 6, 9), + (4, 6, 9), + (3, 5, 9), + (3, 4, 9), + (4, 4, 9), + (5, 4, 9), + (5, 5, 9), + (4, 5, 9), + (1, 1, 1), + (8, 1, 1), + (8, 8, 1), + (1, 8, 1), + (1, 1, 8), + (8, 1, 8), + (8, 8, 8), + (1, 8, 8), + (2, 1, 1), + (3, 1, 1), + (4, 1, 1), + (5, 1, 1), + (6, 1, 1), + (6, 1, 1), + (1, 2, 1), + (1, 3, 1), + (1, 4, 1), + (1, 5, 1), + (1, 6, 1), + (1, 6, 1), + (1, 1, 2), + (1, 1, 3), + (1, 1, 4), + (1, 1, 5), + (1, 1, 6), + (1, 1, 6), + (8, 2, 1), + (8, 3, 1), + (8, 4, 1), + (8, 5, 1), + (8, 6, 1), + (8, 6, 1), + (8, 1, 2), + (8, 1, 3), + (8, 1, 4), + (8, 1, 5), + (8, 1, 6), + (8, 1, 6), + (6, 8, 1), + (6, 8, 1), + (5, 8, 1), + (4, 8, 1), + (3, 8, 1), + (2, 8, 1), + (8, 8, 2), + (8, 8, 3), + (8, 8, 4), + (8, 8, 5), + (8, 8, 6), + (8, 8, 6), + (1, 8, 2), + (1, 8, 3), + (1, 8, 4), + (1, 8, 5), + (1, 8, 6), + (1, 8, 6), + (2, 1, 8), + (3, 1, 8), + (4, 1, 8), + (5, 1, 8), + (6, 1, 8), + (6, 1, 8), + (1, 2, 8), + (1, 3, 8), + (1, 4, 8), + (1, 5, 8), + (1, 6, 8), + (1, 6, 8), + (8, 2, 8), + (8, 3, 8), + (8, 4, 8), + (8, 5, 8), + (8, 6, 8), + (8, 6, 8), + (6, 8, 8), + (6, 8, 8), + (5, 8, 8), + (4, 8, 8), + (3, 8, 8), + (2, 8, 8), + (2, 2, 1), + (2, 6, 1), + (6, 6, 1), + (6, 2, 1), + (2, 3, 1), + (2, 4, 1), + (2, 5, 1), + (2, 6, 1), + (3, 6, 1), + (4, 6, 1), + (5, 6, 1), + (6, 6, 1), + (6, 6, 1), + (6, 5, 1), + (6, 4, 1), + (6, 3, 1), + (6, 2, 1), + (5, 2, 1), + (4, 2, 1), + (3, 2, 1), + (3, 3, 1), + (3, 6, 1), + (6, 6, 1), + (6, 3, 1), + (3, 4, 1), + (3, 5, 1), + (4, 6, 1), + (5, 6, 1), + (6, 5, 1), + (6, 4, 1), + (5, 3, 1), + (4, 3, 1), + (4, 4, 1), + (4, 5, 1), + (5, 5, 1), + (5, 4, 1), + (2, 1, 2), + (6, 1, 2), + (6, 1, 6), + (2, 1, 6), + (3, 1, 2), + (4, 1, 2), + (5, 1, 2), + (6, 1, 2), + (6, 1, 3), + (6, 1, 4), + (6, 1, 5), + (6, 1, 6), + (6, 1, 6), + (5, 1, 6), + (4, 1, 6), + (3, 1, 6), + (2, 1, 6), + (2, 1, 5), + (2, 1, 4), + (2, 1, 3), + (3, 1, 3), + (6, 1, 3), + (6, 1, 6), + (3, 1, 6), + (4, 1, 3), + (5, 1, 3), + (6, 1, 4), + (6, 1, 5), + (5, 1, 6), + (4, 1, 6), + (3, 1, 5), + (3, 1, 4), + (4, 1, 4), + (5, 1, 4), + (5, 1, 5), + (4, 1, 5), + (1, 2, 2), + (1, 2, 6), + (1, 6, 6), + (1, 6, 2), + (1, 2, 3), + (1, 2, 4), + (1, 2, 5), + (1, 2, 6), + (1, 3, 6), + (1, 4, 6), + (1, 5, 6), + (1, 6, 6), + (1, 6, 6), + (1, 6, 5), + (1, 6, 4), + (1, 6, 3), + (1, 6, 2), + (1, 5, 2), + (1, 4, 2), + (1, 3, 2), + (1, 3, 3), + (1, 3, 6), + (1, 6, 6), + (1, 6, 3), + (1, 3, 4), + (1, 3, 5), + (1, 4, 6), + (1, 5, 6), + (1, 6, 5), + (1, 6, 4), + (1, 5, 3), + (1, 4, 3), + (1, 4, 4), + (1, 4, 5), + (1, 5, 5), + (1, 5, 4), + (8, 2, 2), + (8, 6, 2), + (8, 6, 6), + (8, 2, 6), + (8, 3, 2), + (8, 4, 2), + (8, 5, 2), + (8, 6, 2), + (8, 6, 3), + (8, 6, 4), + (8, 6, 5), + (8, 6, 6), + (8, 6, 6), + (8, 5, 6), + (8, 4, 6), + (8, 3, 6), + (8, 2, 6), + (8, 2, 5), + (8, 2, 4), + (8, 2, 3), + (8, 3, 3), + (8, 6, 3), + (8, 6, 6), + (8, 3, 6), + (8, 4, 3), + (8, 5, 3), + (8, 6, 4), + (8, 6, 5), + (8, 5, 6), + (8, 4, 6), + (8, 3, 5), + (8, 3, 4), + (8, 4, 4), + (8, 5, 4), + (8, 5, 5), + (8, 4, 5), + (6, 8, 2), + (2, 8, 2), + (2, 8, 6), + (6, 8, 6), + (6, 8, 2), + (5, 8, 2), + (4, 8, 2), + (3, 8, 2), + (2, 8, 3), + (2, 8, 4), + (2, 8, 5), + (2, 8, 6), + (3, 8, 6), + (4, 8, 6), + (5, 8, 6), + (6, 8, 6), + (6, 8, 6), + (6, 8, 5), + (6, 8, 4), + (6, 8, 3), + (6, 8, 3), + (3, 8, 3), + (3, 8, 6), + (6, 8, 6), + (5, 8, 3), + (4, 8, 3), + (3, 8, 4), + (3, 8, 5), + (4, 8, 6), + (5, 8, 6), + (6, 8, 5), + (6, 8, 4), + (5, 8, 4), + (4, 8, 4), + (4, 8, 5), + (5, 8, 5), + (2, 2, 8), + (6, 2, 8), + (6, 6, 8), + (2, 6, 8), + (3, 2, 8), + (4, 2, 8), + (5, 2, 8), + (6, 2, 8), + (6, 3, 8), + (6, 4, 8), + (6, 5, 8), + (6, 6, 8), + (6, 6, 8), + (5, 6, 8), + (4, 6, 8), + (3, 6, 8), + (2, 6, 8), + (2, 5, 8), + (2, 4, 8), + (2, 3, 8), + (3, 3, 8), + (6, 3, 8), + (6, 6, 8), + (3, 6, 8), + (4, 3, 8), + (5, 3, 8), + (6, 4, 8), + (6, 5, 8), + (5, 6, 8), + (4, 6, 8), + (3, 5, 8), + (3, 4, 8), + (4, 4, 8), + (5, 4, 8), + (5, 5, 8), + (4, 5, 8), + (2, 2, 2), + (6, 2, 2), + (6, 6, 2), + (2, 6, 2), + (2, 2, 6), + (6, 2, 6), + (6, 6, 6), + (2, 6, 6), + (3, 2, 2), + (4, 2, 2), + (5, 2, 2), + (6, 2, 2), + (2, 3, 2), + (2, 4, 2), + (2, 5, 2), + (2, 6, 2), + (2, 2, 3), + (2, 2, 4), + (2, 2, 5), + (2, 2, 6), + (6, 3, 2), + (6, 4, 2), + (6, 5, 2), + (6, 6, 2), + (6, 2, 3), + (6, 2, 4), + (6, 2, 5), + (6, 2, 6), + (6, 6, 2), + (5, 6, 2), + (4, 6, 2), + (3, 6, 2), + (6, 6, 3), + (6, 6, 4), + (6, 6, 5), + (6, 6, 6), + (2, 6, 3), + (2, 6, 4), + (2, 6, 5), + (2, 6, 6), + (3, 2, 6), + (4, 2, 6), + (5, 2, 6), + (6, 2, 6), + (2, 3, 6), + (2, 4, 6), + (2, 5, 6), + (2, 6, 6), + (6, 3, 6), + (6, 4, 6), + (6, 5, 6), + (6, 6, 6), + (6, 6, 6), + (5, 6, 6), + (4, 6, 6), + (3, 6, 6), + (3, 3, 2), + (3, 6, 2), + (6, 6, 2), + (6, 3, 2), + (3, 4, 2), + (3, 5, 2), + (4, 6, 2), + (5, 6, 2), + (6, 5, 2), + (6, 4, 2), + (5, 3, 2), + (4, 3, 2), + (4, 4, 2), + (4, 5, 2), + (5, 5, 2), + (5, 4, 2), + (3, 2, 3), + (6, 2, 3), + (6, 2, 6), + (3, 2, 6), + (4, 2, 3), + (5, 2, 3), + (6, 2, 4), + (6, 2, 5), + (5, 2, 6), + (4, 2, 6), + (3, 2, 5), + (3, 2, 4), + (4, 2, 4), + (5, 2, 4), + (5, 2, 5), + (4, 2, 5), + (2, 3, 3), + (2, 3, 6), + (2, 6, 6), + (2, 6, 3), + (2, 3, 4), + (2, 3, 5), + (2, 4, 6), + (2, 5, 6), + (2, 6, 5), + (2, 6, 4), + (2, 5, 3), + (2, 4, 3), + (2, 4, 4), + (2, 4, 5), + (2, 5, 5), + (2, 5, 4), + (6, 3, 3), + (6, 6, 3), + (6, 6, 6), + (6, 3, 6), + (6, 4, 3), + (6, 5, 3), + (6, 6, 4), + (6, 6, 5), + (6, 5, 6), + (6, 4, 6), + (6, 3, 5), + (6, 3, 4), + (6, 4, 4), + (6, 5, 4), + (6, 5, 5), + (6, 4, 5), + (6, 6, 3), + (3, 6, 3), + (3, 6, 6), + (6, 6, 6), + (5, 6, 3), + (4, 6, 3), + (3, 6, 4), + (3, 6, 5), + (4, 6, 6), + (5, 6, 6), + (6, 6, 5), + (6, 6, 4), + (5, 6, 4), + (4, 6, 4), + (4, 6, 5), + (5, 6, 5), + (3, 3, 6), + (6, 3, 6), + (6, 6, 6), + (3, 6, 6), + (4, 3, 6), + (5, 3, 6), + (6, 4, 6), + (6, 5, 6), + (5, 6, 6), + (4, 6, 6), + (3, 5, 6), + (3, 4, 6), + (4, 4, 6), + (5, 4, 6), + (5, 5, 6), + (4, 5, 6), + (3, 3, 3), + (6, 3, 3), + (6, 6, 3), + (3, 6, 3), + (3, 3, 6), + (6, 3, 6), + (6, 6, 6), + (3, 6, 6), + (4, 3, 3), + (5, 3, 3), + (3, 4, 3), + (3, 5, 3), + (3, 3, 4), + (3, 3, 5), + (6, 4, 3), + (6, 5, 3), + (6, 3, 4), + (6, 3, 5), + (5, 6, 3), + (4, 6, 3), + (6, 6, 4), + (6, 6, 5), + (3, 6, 4), + (3, 6, 5), + (4, 3, 6), + (5, 3, 6), + (3, 4, 6), + (3, 5, 6), + (6, 4, 6), + (6, 5, 6), + (5, 6, 6), + (4, 6, 6), + (4, 4, 3), + (4, 5, 3), + (5, 5, 3), + (5, 4, 3), + (4, 3, 4), + (5, 3, 4), + (5, 3, 5), + (4, 3, 5), + (3, 4, 4), + (3, 4, 5), + (3, 5, 5), + (3, 5, 4), + (6, 4, 4), + (6, 5, 4), + (6, 5, 5), + (6, 4, 5), + (5, 6, 4), + (4, 6, 4), + (4, 6, 5), + (5, 6, 5), + (4, 4, 6), + (5, 4, 6), + (5, 5, 6), + (4, 5, 6), + (4, 4, 4), + (5, 4, 4), + (5, 5, 4), + (4, 5, 4), + (4, 4, 5), + (5, 4, 5), + (5, 5, 5), + (4, 5, 5), ], }, } From d8fc755649d04101c2ae8aa4a68fda21349c7a08 Mon Sep 17 00:00:00 2001 From: Alexandru Fikl Date: Mon, 9 Nov 2020 13:05:02 -0600 Subject: [PATCH 4/6] add high order elements to receiver --- gmsh_interop/reader.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gmsh_interop/reader.py b/gmsh_interop/reader.py index 4bc8e20..f870813 100644 --- a/gmsh_interop/reader.py +++ b/gmsh_interop/reader.py @@ -364,8 +364,30 @@ class GmshMeshReceiverBase: 30: GmshTetrahedralElement(4), 31: GmshTetrahedralElement(5), 36: GmshQuadrilateralElement(3), + 37: GmshQuadrilateralElement(4), + 38: GmshQuadrilateralElement(5), + 42: GmshTriangularElement(6), + 43: GmshTriangularElement(7), + 44: GmshTriangularElement(8), + 45: GmshTriangularElement(9), + 46: GmshTriangularElement(10), + 47: GmshQuadrilateralElement(6), + 48: GmshQuadrilateralElement(7), + 49: GmshQuadrilateralElement(8), + 50: GmshQuadrilateralElement(9), + 51: GmshQuadrilateralElement(10), + 71: GmshTetrahedralElement(6), + 72: GmshTetrahedralElement(7), + 73: GmshTetrahedralElement(8), + 74: GmshTetrahedralElement(9), + 75: GmshTetrahedralElement(10), 92: GmshHexahedralElement(3), 93: GmshHexahedralElement(4), + 94: GmshHexahedralElement(5), + 95: GmshHexahedralElement(6), + 96: GmshHexahedralElement(7), + 97: GmshHexahedralElement(8), + 98: GmshHexahedralElement(9), } def set_up_nodes(self, count): From 7e53562f5fdd491086716cb7aee7d2eb0812c9ed Mon Sep 17 00:00:00 2001 From: Alexandru Fikl Date: Wed, 11 Nov 2020 11:44:54 -0600 Subject: [PATCH 5/6] add element type to gmsh element classes --- gmsh_interop/reader.py | 155 +++++++++++++++++++---------------------- 1 file changed, 72 insertions(+), 83 deletions(-) diff --git a/gmsh_interop/reader.py b/gmsh_interop/reader.py index f870813..ddbc730 100644 --- a/gmsh_interop/reader.py +++ b/gmsh_interop/reader.py @@ -162,17 +162,28 @@ class GmshElementBase: def __init__(self, order): self.order = order + @property + def element_type(self): + raise NotImplementedError + def vertex_count(self): - raise NotImplementedError() + raise NotImplementedError def node_count(self): - raise NotImplementedError() + raise NotImplementedError def lexicographic_node_tuples(self): - raise NotImplementedError() + raise NotImplementedError + @memoize_method def get_lexicographic_gmsh_node_indices(self): - raise NotImplementedError() + gmsh_tup_to_index = { + tup: i + for i, tup in enumerate(self.gmsh_node_tuples())} + + return np.array([ + gmsh_tup_to_index[tup] for tup in self.lexicographic_node_tuples()], + dtype=np.intp) # {{{ simplices @@ -193,28 +204,20 @@ def node_count(self): @memoize_method def lexicographic_node_tuples(self): from pytools import \ - generate_nonnegative_integer_tuples_summing_to_at_most - result = list( - generate_nonnegative_integer_tuples_summing_to_at_most( - self.order, self.dimensions)) + generate_nonnegative_integer_tuples_summing_to_at_most as gnitstam + result = list(gnitstam(self.order, self.dimensions)) assert len(result) == self.node_count() return result - @memoize_method - def get_lexicographic_gmsh_node_indices(self): - gmsh_tup_to_index = { - tup: i - for i, tup in enumerate(self.gmsh_node_tuples())} - - return np.array([gmsh_tup_to_index[tup] - for tup in self.lexicographic_node_tuples()], - dtype=np.intp) - class GmshPoint(GmshSimplexElementBase): dimensions = 0 + @property + def element_type(self): + return 15 + @memoize_method def gmsh_node_tuples(self): return [()] @@ -223,6 +226,11 @@ def gmsh_node_tuples(self): class GmshIntervalElement(GmshSimplexElementBase): dimensions = 1 + @property + @memoize_method + def element_type(self): + return [1, 8, 26, 27, 28, 62, 63, 64, 65, 66][self.order - 1] + @memoize_method def gmsh_node_tuples(self): return [(0,), (self.order,), ] + [ @@ -235,6 +243,11 @@ class GmshIncompleteTriangularElement(GmshSimplexElementBase): def __init__(self, order): self.order = order + @property + @memoize_method + def element_type(self): + return {3: 20, 4: 22, 5: 24}[self.order] + @memoize_method def gmsh_node_tuples(self): result = [] @@ -248,6 +261,12 @@ def gmsh_node_tuples(self): class GmshTriangularElement(GmshSimplexElementBase): dimensions = 2 + @property + @memoize_method + def element_type(self): + from gmsh_interop.node_tuples import triangle_data + return triangle_data[self.order]["element_type"] + @memoize_method def gmsh_node_tuples(self): from gmsh_interop.node_tuples import triangle_data @@ -257,6 +276,12 @@ def gmsh_node_tuples(self): class GmshTetrahedralElement(GmshSimplexElementBase): dimensions = 3 + @property + @memoize_method + def element_type(self): + from gmsh_interop.node_tuples import tetrahedron_data + return tetrahedron_data[self.order]["element_type"] + @memoize_method def gmsh_node_tuples(self): from gmsh_interop.node_tuples import tetrahedron_data @@ -282,29 +307,22 @@ def lexicographic_node_tuples(self): of the element. The tuples constituents are non-negative integers whose sum is less than or equal to the order of the element. """ - from pytools import \ - generate_nonnegative_integer_tuples_below - result = list( - generate_nonnegative_integer_tuples_below( - self.order+1, self.dimensions)) + from pytools import generate_nonnegative_integer_tuples_below as gnitb + result = list(gnitb(self.order + 1, self.dimensions)) assert len(result) == self.node_count() return result - @memoize_method - def get_lexicographic_gmsh_node_indices(self): - gmsh_tup_to_index = { - tup: i - for i, tup in enumerate(self.gmsh_node_tuples())} - - return np.array([gmsh_tup_to_index[tup] - for tup in self.lexicographic_node_tuples()], - dtype=np.intp) - class GmshQuadrilateralElement(GmshTensorProductElementBase): dimensions = 2 + @property + @memoize_method + def element_type(self): + from gmsh_interop.node_tuples import quadrangle_data + return quadrangle_data[self.order]["element_type"] + @memoize_method def gmsh_node_tuples(self): from gmsh_interop.node_tuples import quadrangle_data @@ -314,6 +332,12 @@ def gmsh_node_tuples(self): class GmshHexahedralElement(GmshTensorProductElementBase): dimensions = 3 + @property + @memoize_method + def element_type(self): + from gmsh_interop.node_tuples import hexahedron_data + return hexahedron_data[self.order]["element_type"] + @memoize_method def gmsh_node_tuples(self): from gmsh_interop.node_tuples import hexahedron_data @@ -326,6 +350,20 @@ def gmsh_node_tuples(self): # {{{ receiver interface +def _gmsh_supported_element_type_map(): + supported_elements = ( + [GmshPoint(0)] + + [GmshIntervalElement(n + 1) for n in range(10)] + + [GmshIncompleteTriangularElement(n) for n in [3, 4, 5]] + + [GmshTriangularElement(n + 1) for n in range(10)] + + [GmshTetrahedralElement(n + 1) for n in range(10)] + + [GmshQuadrilateralElement(n + 1) for n in range(10)] + + [GmshHexahedralElement(n + 1) for n in range(9)] + ) + + return {el.element_type: el for el in supported_elements} + + class GmshMeshReceiverBase: """ .. attribute:: gmsh_element_type_to_info_map @@ -339,56 +377,7 @@ class GmshMeshReceiverBase: .. automethod:: finalize_tags """ - gmsh_element_type_to_info_map = { - 1: GmshIntervalElement(1), - 2: GmshTriangularElement(1), - 3: GmshQuadrilateralElement(1), - 4: GmshTetrahedralElement(1), - 5: GmshHexahedralElement(1), - 8: GmshIntervalElement(2), - 9: GmshTriangularElement(2), - 10: GmshQuadrilateralElement(2), - 11: GmshTetrahedralElement(2), - 12: GmshHexahedralElement(2), - 15: GmshPoint(0), - 20: GmshIncompleteTriangularElement(3), - 21: GmshTriangularElement(3), - 22: GmshIncompleteTriangularElement(4), - 23: GmshTriangularElement(4), - 24: GmshIncompleteTriangularElement(5), - 25: GmshTriangularElement(5), - 26: GmshIntervalElement(3), - 27: GmshIntervalElement(4), - 28: GmshIntervalElement(5), - 29: GmshTetrahedralElement(3), - 30: GmshTetrahedralElement(4), - 31: GmshTetrahedralElement(5), - 36: GmshQuadrilateralElement(3), - 37: GmshQuadrilateralElement(4), - 38: GmshQuadrilateralElement(5), - 42: GmshTriangularElement(6), - 43: GmshTriangularElement(7), - 44: GmshTriangularElement(8), - 45: GmshTriangularElement(9), - 46: GmshTriangularElement(10), - 47: GmshQuadrilateralElement(6), - 48: GmshQuadrilateralElement(7), - 49: GmshQuadrilateralElement(8), - 50: GmshQuadrilateralElement(9), - 51: GmshQuadrilateralElement(10), - 71: GmshTetrahedralElement(6), - 72: GmshTetrahedralElement(7), - 73: GmshTetrahedralElement(8), - 74: GmshTetrahedralElement(9), - 75: GmshTetrahedralElement(10), - 92: GmshHexahedralElement(3), - 93: GmshHexahedralElement(4), - 94: GmshHexahedralElement(5), - 95: GmshHexahedralElement(6), - 96: GmshHexahedralElement(7), - 97: GmshHexahedralElement(8), - 98: GmshHexahedralElement(9), - } + gmsh_element_type_to_info_map = _gmsh_supported_element_type_map() def set_up_nodes(self, count): pass From ba9faaffb589692863ba8df9aee45ae294cafa82 Mon Sep 17 00:00:00 2001 From: Alexandru Fikl Date: Wed, 11 Nov 2020 11:45:08 -0600 Subject: [PATCH 6/6] add more tests --- test/test_gmsh.py | 67 ++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 61 insertions(+), 6 deletions(-) diff --git a/test/test_gmsh.py b/test/test_gmsh.py index 8cce413..8c1101b 100644 --- a/test/test_gmsh.py +++ b/test/test_gmsh.py @@ -20,6 +20,8 @@ THE SOFTWARE. """ +import pytest + # {{{ gmsh @@ -73,18 +75,72 @@ def search_on_path(filenames): l8 = newreg; Line Loop(l8) = {-c6, -c9, c2}; Ruled Surface(newreg) = {l8}; """ +GMSH_QUAD_SPHERE = """ +SetFactory("OpenCASCADE"); +Sphere(1) = { 0, 0, 0, 1 }; + +Recombine Surface "*"; +Mesh 2; +""" + +GMSH_QUAD_CUBE = """ +SetFactory("OpenCASCADE"); +Box(1) = {0, 0, 0, 1, 1, 1}; + +Transfinite Line "*" = 8; +Transfinite Surface "*"; +Transfinite Volume "*"; + +Mesh.RecombineAll = 1; +Mesh.Recombine3DAll = 1; +Mesh.Recombine3DLevel = 2; + +Mesh 3; +""" + -def test_gmsh(): +@pytest.mark.parametrize("dim", [2, 3]) +@pytest.mark.parametrize("order", [1, 3]) +def test_simplex_gmsh(dim, order, visualize=False): if search_on_path(["gmsh"]) is None: - from pytest import skip - skip("gmsh not found") + pytest.skip("gmsh executable not found") + + if visualize: + save_tmp_files_in = f"simplex_{order}_{dim}d" + else: + save_tmp_files_in = None from gmsh_interop.reader import generate_gmsh, GmshMeshReceiverBase from gmsh_interop.runner import ScriptSource mr = GmshMeshReceiverBase() source = ScriptSource(GMSH_SPHERE, "geo") - generate_gmsh(mr, source, 3) + generate_gmsh(mr, source, dimensions=dim, order=order, + save_tmp_files_in=save_tmp_files_in) + + +@pytest.mark.parametrize("dim", [2, 3]) +@pytest.mark.parametrize("order", [1, 3]) +def test_quad_gmsh(dim, order, visualize=False): + if search_on_path(["gmsh"]) is None: + pytest.skip("gmsh executable not found") + + if visualize: + save_tmp_files_in = f"simplex_{order}_{dim}d" + else: + save_tmp_files_in = None + + from gmsh_interop.reader import generate_gmsh, GmshMeshReceiverBase + from gmsh_interop.runner import ScriptSource + + if dim == 2: + source = ScriptSource(GMSH_QUAD_SPHERE, "geo") + else: + source = ScriptSource(GMSH_QUAD_CUBE, "geo") + + mr = GmshMeshReceiverBase() + generate_gmsh(mr, source, dimensions=dim, order=order, + save_tmp_files_in=save_tmp_files_in) # }}} @@ -94,7 +150,6 @@ def test_gmsh(): if len(sys.argv) > 1: exec(sys.argv[1]) else: - from pytest import main - main([__file__]) + pytest.main([__file__]) # vim: foldmethod=marker