test: onboard quad02 reaction reference

This commit is contained in:
NINI
2026-05-05 23:56:27 +09:00
parent 9741671f70
commit c47557885d
15 changed files with 597 additions and 24 deletions
+21
View File
@@ -124,6 +124,27 @@ Rules:
- Missing nodes, duplicate node labels, missing columns, or nonnumeric values are reference artifact errors.
- CSV comparison uses the same absolute/relative tolerance policy as other reference artifacts.
## Abaqus Reaction CSV Mapping
Reference reaction CSV files map Abaqus exported force and moment columns to FESA `RF` components:
| CSV Column | FESA Component | Meaning |
|---|---|---|
| `Node Label` | `entity_id` | Node id, stored as int64 |
| `RF-RF1` | `RFX` | Reaction force in global 1/x direction |
| `RF-RF2` | `RFY` | Reaction force in global 2/y direction |
| `RF-RF3` | `RFZ` | Reaction force in global 3/z direction |
| `RM-RM1` | `RMX` | Reaction moment about global 1/x direction |
| `RM-RM2` | `RMY` | Reaction moment about global 2/y direction |
| `RM-RM3` | `RMZ` | Reaction moment about global 3/z direction |
Rules:
- Accepted reaction CSV filenames may use `*_reactionforces.csv` or `*_reactions.csv`.
- CSV numeric values are parsed as `double`.
- Node labels are matched to FESA result entity ids exactly.
- Missing nodes, duplicate node labels, missing columns, or nonnumeric values are reference artifact errors.
- Node-wise reaction comparison uses the full-vector FESA `RF` field, not reduced solver quantities.
- Do not relax tolerances to pass a reaction comparison without documenting the numerical reason.
## Boundary Conditions
Phase 1 uses constrained DOF elimination: