feat(linear-static-mitc4-shell): step 13 - shell-reference-comparison

This commit is contained in:
KOKO\Mimi
2026-08-13 10:14:08 +09:00
parent 0a42e3fb75
commit 426cce1fc6
2 changed files with 20 additions and 12 deletions
@@ -32,8 +32,7 @@ constexpr const char* kDisplacementPath =
constexpr const char* kInternalFormulation = "FESA-MITC4";
constexpr const char* kIntegrationRule =
"2x2x2-gauss; mitc4-edge-midpoint-shear";
constexpr double kAbsoluteFloor = 1.0e-9;
constexpr double kRelativeCoefficient = 1.0e-6;
constexpr double kFixedAbsoluteTolerance = 1.0e-5;
constexpr std::array<const char*, 6> kComponents{
"U1", "U2", "U3", "UR1", "UR2", "UR3"};
const std::vector<std::string> kExpectedHeader{
@@ -761,8 +760,7 @@ Result<Mitc4ComparisonReport> Mitc4ReferenceComparison::compare(
for (std::size_t component = 0U;
component < kComponents.size();
++component) {
const double tolerance =
kAbsoluteFloor + kRelativeCoefficient * scales[component];
const double tolerance = kFixedAbsoluteTolerance;
const double absoluteError = std::abs(
hdf5Row.values[component] -
reference->second->values[component]);
@@ -830,7 +828,7 @@ Result<Mitc4ComparisonReport> Mitc4ReferenceComparison::compare(
report.metrics.push_back({
kComponents[component],
scales[component],
kAbsoluteFloor + kRelativeCoefficient * scales[component],
kFixedAbsoluteTolerance,
maximumErrors[component],
maximumNormalized[component],
errorNorms[component] / std::sqrt(rowCount),