"""Basis descriptors used by panel element families."""
from __future__ import annotations
from dataclasses import dataclass
[docs]
@dataclass(frozen=True, slots=True)
class BasisDescriptor:
"""Describe one supported basis family for a panel element."""
name: str
dofs_per_element: int
# Line element descriptions
LINE_POINT = BasisDescriptor("line_point", 1)
LINE_CONSTANT = BasisDescriptor("line_constant", 1)
LINE_LINEAR = BasisDescriptor("line_linear", 2)
LINE_QUAD = BasisDescriptor("line_quad", 3)
# Surface element descriptions
SURF_POINT = BasisDescriptor("surf_point", 1)
SURF_CONSTANT = BasisDescriptor("surf_constant", 1)
SURF_TRI_LINEAR = BasisDescriptor("surf_tri_linear", 3)
SURF_TRI_QUAD = BasisDescriptor("surf_tri_quad", 6)
SURF_QUAD_LINEAR = BasisDescriptor("surf_quad_linear", 4)