test: onboard quad02 reaction reference
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
The original Abaqus input remains preserved as provenance:
|
||||
- `quad_02.inp`
|
||||
- `quad_02_displacements.csv`
|
||||
- `quad_02_reactionforces.csv`
|
||||
|
||||
The Phase 1 parser-compatible derivative input is:
|
||||
- `quad_02_phase1.inp`
|
||||
@@ -69,6 +70,29 @@ with component order:
|
||||
UX, UY, UZ, RX, RY, RZ
|
||||
```
|
||||
|
||||
`quad_02_reactionforces.csv` is an Abaqus-exported nodal reaction force/moment table with 121 rows.
|
||||
|
||||
Required columns:
|
||||
- `Node Label`
|
||||
- `RF-RF1`
|
||||
- `RF-RF2`
|
||||
- `RF-RF3`
|
||||
- `RM-RM1`
|
||||
- `RM-RM2`
|
||||
- `RM-RM3`
|
||||
|
||||
It maps to FESA field output:
|
||||
|
||||
```text
|
||||
/results/steps/Step-1/frames/0/fieldOutputs/RF
|
||||
```
|
||||
|
||||
with component order:
|
||||
|
||||
```text
|
||||
RFX, RFY, RFZ, RMX, RMY, RMZ
|
||||
```
|
||||
|
||||
## Initial Tolerance
|
||||
The active automated displacement regression uses:
|
||||
|
||||
@@ -85,6 +109,19 @@ Do not tune tolerances or drilling stiffness to make this single case pass.
|
||||
|
||||
The regression compares FESA `U` against the stored Abaqus CSV by node id and uses the tolerance above.
|
||||
|
||||
`quad_02_phase1.inp` and `quad_02_reactionforces.csv` are also wired through the reaction CSV loader and node-wise `RF` comparator. This comparison currently records a known non-passing gap rather than an accepted pass gate:
|
||||
|
||||
```text
|
||||
abs_tol = 1.0e-6
|
||||
rel_tol = 1.0e-5
|
||||
reference_scale = 1.0
|
||||
max_abs_error ~= 612.751347
|
||||
max_rel_error ~= 0.494032
|
||||
first_mismatch = node 1 RFZ, expected 6860.0, actual 6652.459896
|
||||
```
|
||||
|
||||
Do not relax reaction tolerances to make this case pass. Treat the mismatch as a solver/formulation verification item.
|
||||
|
||||
## Current Limitations
|
||||
- `RF` has no paired Abaqus reaction CSV yet; verify `RF` by full-vector equilibrium until a `quad_02_reactions.csv` artifact is provided.
|
||||
- The stored Abaqus reaction CSV is available, but node-wise `RF` agreement is not accepted yet because the current comparison fails.
|
||||
- This is currently the only passing stored Abaqus reference regression. The PRD target still requires at least three stored reference models: one single-element case, one simple multi-element plate/shell case, and one curved shell benchmark.
|
||||
|
||||
Reference in New Issue
Block a user