58 lines
1.7 KiB
Markdown
58 lines
1.7 KiB
Markdown
# Sprint Contract: Results Comparator Foundation
|
|
|
|
## Objective
|
|
Rebuild or verify the minimum Phase 1 results model and Abaqus displacement CSV comparator before using stored reference regressions.
|
|
|
|
## Required Reading
|
|
- /AGENTS.md
|
|
- /docs/RESULTS_SCHEMA.md
|
|
- /docs/VERIFICATION_PLAN.md
|
|
- /docs/NUMERICAL_CONVENTIONS.md
|
|
|
|
## Scope
|
|
- Store minimum result model data for nodes, elements, `U`, and `RF`.
|
|
- Preserve step/frame/field structure even if HDF5 writing is deferred.
|
|
- Load Abaqus `*_displacements.csv` by node id and component label.
|
|
- Compare using absolute and relative tolerances.
|
|
|
|
## Allowed Files
|
|
- `include/`
|
|
- `src/`
|
|
- `tests/`
|
|
- `docs/RESULTS_SCHEMA.md` only for clarifying schema text
|
|
- `docs/VERIFICATION_PLAN.md` only for clarifying tolerance/reference text
|
|
- `PLAN.md`
|
|
- `PROGRESS.md`
|
|
|
|
## Explicit Non-Goals
|
|
- Do not make `S`, `E`, or `SF` mandatory.
|
|
- Do not require Abaqus execution.
|
|
- Do not rely on CSV row order.
|
|
|
|
## Tests To Write First
|
|
- `U` and `RF` field component labels and basis tests.
|
|
- CSV required-header tests.
|
|
- Duplicate/missing/non-numeric node row tests.
|
|
- Node-id-based comparison tests with absolute and relative tolerance paths.
|
|
- Result frame metadata tests for Phase 1 linear static frame 0.
|
|
|
|
## Reference Artifacts
|
|
- `references/quad_02_displacements.csv`
|
|
- `references/quad_01_displacements.csv`
|
|
|
|
## Acceptance Commands
|
|
```bash
|
|
python scripts/validate_workspace.py
|
|
```
|
|
|
|
## Evaluator Checklist
|
|
- Result component order matches docs.
|
|
- Comparator maps Abaqus columns to FESA `U` labels exactly.
|
|
- `RF` exists as a result field even if Abaqus RF CSV is unavailable.
|
|
|
|
## Handoff Requirements
|
|
- Record comparator readiness and remaining RF artifact decision in `PROGRESS.md` and `PLAN.md`.
|
|
|
|
## Do Not
|
|
- Do not add undocumented CSV formats.
|