feat: strengthen results comparator foundation

This commit is contained in:
NINI
2026-05-04 13:27:46 +09:00
parent b9b0963d50
commit 6de430f1ed
7 changed files with 229 additions and 32 deletions
+5 -1
View File
@@ -64,6 +64,8 @@ Attach these attributes to `/`:
| `unit_system_note` | string | no | User-provided self-consistent unit note |
| `dof_convention` | string | yes | `UX,UY,UZ,RX,RY,RZ` |
| `sign_convention` | string | yes | `Abaqus-compatible` |
| `precision` | string | yes for Phase 1 in-memory result model | `double` |
| `index_type` | string | yes for Phase 1 in-memory result model | `int64` |
## `/metadata`
Recommended datasets or attributes:
@@ -189,7 +191,7 @@ The final component labels should be cross-checked with the accepted Abaqus refe
## Phase 1 Mandatory Outputs
The first complete linear static solver path must write:
- root metadata attributes: `schema_name`, `schema_version`, `solver_name`, `dof_convention`, `sign_convention`.
- root metadata attributes: `schema_name`, `schema_version`, `solver_name`, `dof_convention`, `sign_convention`, `precision`, and `index_type`.
- `/model/nodes/ids`
- `/model/nodes/coordinates`
- `/model/elements/ids`
@@ -293,6 +295,8 @@ Required CSV columns:
Rules:
- CSV files are reference inputs for tests, not the primary FESA result storage format.
- The comparator must preserve node-label matching and must not rely on row order alone.
- The comparator must require FESA `U` component labels `UX`, `UY`, `UZ`, `RX`, `RY`, `RZ` with `position = NODAL`, `entity_type = node`, and `basis = GLOBAL`.
- Duplicate FESA output node ids, duplicate CSV node labels, missing FESA nodes, missing CSV columns, and nonnumeric CSV values are comparison failures.
- The comparison report may be stored under `/referenceComparison`.
- Reaction CSV, stress CSV, or section force CSV formats must be documented before automated use.