feat: add thermal semantic domain model

This commit is contained in:
KOKO\Mimi
2026-09-29 18:33:44 +09:00
parent e6fd9e9e6b
commit 254247efc1
11 changed files with 755 additions and 2 deletions
+26
View File
@@ -183,6 +183,30 @@ class Domain {
const DomainCollectionView<LinearElasticMaterial>& LinearElasticMaterials()
const noexcept;
/// @brief Returns thermal materials in stable thermal declaration order.
const DomainCollectionView<IsotropicThermalMaterial>& ThermalMaterials()
const noexcept;
/// @brief Returns DS4 definitions in stable thermal declaration order.
const DomainCollectionView<Ds4ThermalDefinition>& ThermalElements()
const noexcept;
/// @brief Returns centered thermal shell assignments in declaration order.
const std::vector<ThermalShellSectionDefinition>& ThermalSections()
const noexcept;
/// @brief Returns resolved initial temperatures in source order.
const std::vector<ThermalInitialConditionDefinition>&
ThermalInitialConditions() const noexcept;
/// @brief Returns model-level thermal boundary definitions in source order.
const std::vector<ThermalBoundaryConditionDefinition>&
ThermalModelBoundaries() const noexcept;
/// @brief Returns the sole thermal step, or null when the model is
/// structural.
const ThermalStepDefinition* ThermalStep() const noexcept;
/// @brief Returns all properties in stable Domain index order.
const DomainCollectionView<ElementProperty>& Properties() const noexcept;
@@ -243,6 +267,8 @@ class Domain {
DomainCollectionView<ShellSection> shell_sections_view_;
DomainCollectionView<Material> materials_view_;
DomainCollectionView<LinearElasticMaterial> linear_materials_view_;
DomainCollectionView<IsotropicThermalMaterial> thermal_materials_view_;
DomainCollectionView<Ds4ThermalDefinition> thermal_elements_view_;
DomainCollectionView<StepDefinition> steps_view_;
};