Files
FESADev/phases/analysis-model-objects/step3.md
T
2026-06-09 09:04:21 +09:00

58 lines
1.4 KiB
Markdown

# Step 3: mitc4-element-model
## Read First
Read these files before editing:
- `/AGENTS.md`
- `/docs/AGENT_RULES.md`
- `/docs/ARCHITECTURE.md`
- `/docs/implementation-plans/analysis-model-objects-implementation-plan.md`
- `/include/fesa/element/Element.hpp`
- `/include/fesa/core/ElementDefinition.hpp`
## Task
Add a MITC4 element model object skeleton.
Allowed files:
- Create `/include/fesa/element/Mitc4Element.hpp`
- Create `/src/element/Mitc4Element.cpp`
- Create `/tests/element/mitc4_element_model_test.cpp`
- Modify `/CMakeLists.txt`
Required behavior:
- `Mitc4Element` derives from `Element`.
- Stores element id, four node ids, and property id.
- Reports `ElementType::Mitc4`.
- Reports `nodeCount() == 4`.
- Reports `dofCount() == 24`.
- Preserves connectivity order.
## Tests To Write First
Write `/tests/element/mitc4_element_model_test.cpp` before production changes:
- Construct `Mitc4Element`.
- Access it through `const Element&`.
- Verify id, type, node count, DOF count, connectivity, and property id.
Run targeted build and confirm RED because `Mitc4Element.hpp` is missing.
## Acceptance Criteria
Run:
```powershell
python scripts/validate_workspace.py
ctest --test-dir build/msvc-debug --output-on-failure -C Debug -R model-object
```
Update step 3 status.
## Do Not
- Do not implement element stiffness, Jacobians, MITC shear interpolation, resultants, stress, or integration-point state.