feat(cpp-object-oriented-modular-refactoring): step 5 - solver-workflow-google-style

This commit is contained in:
KOKO\Mimi
2026-08-16 06:20:08 +09:00
parent e1c0e357dd
commit 24f006fe4a
52 changed files with 5817 additions and 6369 deletions
+11 -11
View File
@@ -1,11 +1,11 @@
#include "reference_comparison.hpp"
#include "fesa/analysis/analysis_model.hpp"
#include "fesa/assembly/load_assembler.hpp"
#include "fesa/fem/dof_manager.hpp"
#include "fesa/analysis/analysis_model.h"
#include "fesa/assembly/load_assembler.h"
#include "fesa/fem/dof_manager.h"
#include "fesa/io/abaqus/domain_mapper.hpp"
#include "fesa/io/abaqus/input_reader.hpp"
#include "fesa/results/result_recovery.hpp"
#include "fesa/results/result_recovery.h"
#include <hdf5.h>
@@ -962,7 +962,7 @@ std::vector<NodeStationResultRow> normalizeStations(
const Domain& domain,
const HdfProjection& hdf,
const ReferenceTable& sectionTable) {
auto modelResult = AnalysisModel::create(domain);
auto modelResult = AnalysisModel::Create(domain);
if (!modelResult.HasValue()) {
fail("schema-mismatch", "The approved input cannot create an analysis view.");
}
@@ -991,7 +991,7 @@ std::vector<NodeStationResultRow> normalizeStations(
values});
}
}
auto normalized = ResultRecovery::normalizeSectionResultantsToNodeStations(
auto normalized = ResultRecovery::NormalizeSectionResultantsToNodeStations(
model, endpoints, tolerances);
if (!normalized.HasValue()) {
const auto& diagnostics = normalized.GetStatus().Diagnostics();
@@ -1079,7 +1079,7 @@ void appendSectionRows(
for (std::size_t component = 0U; component < components.size(); ++component) {
auto fesa = canonicalRow(
hdf.nodes[node], ComparisonQuantity::sectionResultant,
components[component], station.sectionResultant[component],
components[component], station.section_resultant[component],
units[component], "beam-local", kSectionPath);
auto abaqus = canonicalRow(
hdf.nodes[node], ComparisonQuantity::sectionResultant,
@@ -1164,17 +1164,17 @@ void evaluateGroup(
PhysicsEvidence makePhysicsEvidence(
const Domain& domain,
const HdfProjection& hdf) {
auto modelResult = AnalysisModel::create(domain);
auto modelResult = AnalysisModel::Create(domain);
if (!modelResult.HasValue()) {
fail("schema-mismatch", "The approved input cannot create physics evidence.");
}
const AnalysisModel model = std::move(modelResult.Value());
auto dofsResult = DofManager::create(model);
auto dofsResult = DofManager::Create(model);
if (!dofsResult.HasValue()) {
fail("schema-mismatch", "The approved input cannot create a DOF map.");
}
const DofManager dofs = std::move(dofsResult.Value());
auto loadResult = LoadAssembler::assembleFullNodalLoad(model, dofs);
auto loadResult = LoadAssembler::AssembleFullNodalLoad(model, dofs);
if (!loadResult.HasValue()) {
fail("schema-mismatch", "The approved input load cannot be assembled.");
}
@@ -1185,7 +1185,7 @@ PhysicsEvidence makePhysicsEvidence(
PhysicsEvidence evidence{};
long double residualSquared = 0.0L;
for (const std::size_t freeDof : dofs.freeDofs()) {
for (const std::size_t freeDof : dofs.FreeDofs()) {
const long double value =
static_cast<long double>(hdf.reaction[freeDof]);
residualSquared += value * value;