Source code for polymesh.tetmesh

# -*- coding: utf-8 -*-
from .polydata import PolyData
from .cells import Tetra
import numpy as np


[docs]class TetMesh(PolyData): """ A class to handle tetrahedral meshes. Examples -------- >>> from polymesh import TriMesh >>> trimesh = TriMesh(size=(800, 600), shape=(10, 10)) >>> tetmesh = trimesh.extrude(h=300, N=5) >>> tetmesh.volume() 144000000.0 """ def __init__(self, *args, celltype=None, topo=None, **kwargs): if celltype is None and topo is not None: if isinstance(topo, np.ndarray): nNode = topo.shape[1] if nNode == 4: celltype = Tetra else: raise NotImplementedError assert celltype is not None super().__init__(*args, celltype=celltype, topo=topo, **kwargs)