feat(solid): add Hex8 input and three-DOF semantics

This commit is contained in:
KOKO\Mimi
2026-10-09 01:12:30 +09:00
parent df0388ae2f
commit 9acf18db4b
16 changed files with 1468 additions and 98 deletions
+4 -2
View File
@@ -16,8 +16,8 @@ namespace fesa {
class DofManagerTestAccess;
/// @brief Distinguishes structural six-component and thermal five-station maps.
enum class DofProfile { kStructural, kThermal };
/// @brief Distinguishes six-component, Solid translation, and thermal maps.
enum class DofProfile { kStructural, kThermal, kSolidStructural };
/// @brief Stores the stable full-space CSR pattern.
struct SparsePattern {
@@ -59,6 +59,8 @@ class DofManager {
/// @brief Reports which physical component profile owns this mapping.
DofProfile Profile() const noexcept;
/// @brief Returns the physical component count for the active profile.
std::size_t ComponentsPerNode() const noexcept;
/// @brief Returns the full node-by-component DOF count.
std::size_t FullDofCount() const noexcept;