45 lines
2.7 KiB
Markdown
45 lines
2.7 KiB
Markdown
# Abaqus User Subroutine Agent Design
|
|
|
|
## Purpose
|
|
|
|
This document maps the project agents and skills to the Abaqus User Subroutine development process. The working language is Fortran with Intel oneAPI Fortran, and Abaqus execution remains opt-in.
|
|
|
|
## Abaqus User Subroutine development process
|
|
|
|
1. Subroutine requirements analysis
|
|
2. Books, papers, and research evidence
|
|
3. Finite element formulation for implementation
|
|
4. Subroutine input/output parameter definition
|
|
5. TDD test model design
|
|
6. Fortran code implementation
|
|
7. Subroutine validation
|
|
|
|
## Agent Mapping
|
|
|
|
| Process step | Primary agents | Primary skills |
|
|
| --- | --- | --- |
|
|
| 1. Subroutine requirements analysis | Requirement Agent, Coordinator Agent | `abaqus-subroutine-requirements` |
|
|
| 2. Books, papers, and research evidence | Research Agent | `abaqus-subroutine-research`, `fem-theory-query` |
|
|
| 3. Finite element formulation for implementation | Formulation Agent, Numerical Review Agent | `abaqus-subroutine-formulation`, `abaqus-subroutine-numerical-review` |
|
|
| 4. Subroutine input/output parameter definition | I/O Definition Agent | `abaqus-subroutine-interface` |
|
|
| 5. TDD test model design | Reference Model Agent, Implementation Planning Agent | `abaqus-subroutine-test-models` |
|
|
| 6. Fortran code implementation | Implementation Planning Agent, Implementation Agent, Correction Agent | `abaqus-fortran-tdd` |
|
|
| 7. Subroutine validation | Build/Test Executor Agent, Reference Verification Agent, Physics Evaluation Agent, Release Agent | `abaqus-subroutine-validation`, `abaqus-subroutine-physics-sanity`, `abaqus-subroutine-readiness` |
|
|
|
|
## Gates
|
|
|
|
- Requirements gate: every must requirement has measurable acceptance criteria and verification method.
|
|
- Research gate: source-backed facts are separated from inference and applicability limits are explicit.
|
|
- Formulation gate: stress update, consistent tangent, state variables, and numerical risks are documented.
|
|
- Interface gate: Abaqus ABI arguments, update responsibilities, tensor ordering, units, and CSV extraction schemas are explicit.
|
|
- Test model gate: no-Abaqus tests and reference artifact contracts are defined before implementation.
|
|
- Implementation gate: Fortran production changes follow RED -> GREEN -> VERIFY and pass no-Abaqus validation.
|
|
- Validation gate: reference artifacts include `.inp`, source hash, Abaqus version, compiler version, msg/dat/log tail, and extracted CSV evidence before comparison.
|
|
|
|
## Validation Defaults
|
|
|
|
- Default no-Abaqus path: `python scripts/validate_fortran.py`.
|
|
- Reference artifact contract check: `python scripts/validate_reference_artifacts.py`.
|
|
- Workspace gate: `python scripts/validate_workspace.py`.
|
|
- Abaqus execution: only through `HARNESS_ABAQUS_VALIDATION=run` with explicit validation commands.
|