feat: implement phase 1 solver baseline

This commit is contained in:
NINI
2026-05-01 02:59:28 +09:00
parent 10f1436e0f
commit c5be1f988c
13 changed files with 1960 additions and 84 deletions
+30 -15
View File
@@ -5,77 +5,92 @@
{
"step": 0,
"name": "build-test-harness",
"status": "pending"
"status": "completed",
"summary": "Added CMake/CTest build harness and wired validate_workspace.py to configure, build, and run tests."
},
{
"step": 1,
"name": "core-types-diagnostics",
"status": "pending"
"status": "completed",
"summary": "Added int64/double core aliases, DOF mapping, diagnostics, and tests."
},
{
"step": 2,
"name": "domain-model",
"status": "pending"
"status": "completed",
"summary": "Added Phase 1 Domain entities for nodes, MITC4 elements, sets, materials, shell sections, loads, boundaries, and steps."
},
{
"step": 3,
"name": "parser-foundation",
"status": "pending"
"status": "completed",
"summary": "Added Abaqus keyword parsing foundation with diagnostics and exact keyword dispatch."
},
{
"step": 4,
"name": "parser-phase1-subset",
"status": "pending"
"status": "completed",
"summary": "Implemented Phase 1 Abaqus subset parsing plus explicit unsupported-feature rejection tests."
},
{
"step": 5,
"name": "domain-validation-diagnostics",
"status": "pending"
"status": "completed",
"summary": "Added Domain validation for missing references, properties, materials, targets, and singular-prone states."
},
{
"step": 6,
"name": "analysis-model-dof-manager",
"status": "pending"
"status": "completed",
"summary": "Added six-DOF DofManager with constrained/free partitioning, equation numbering, and full-vector reconstruction."
},
{
"step": 7,
"name": "math-solver-adapters",
"status": "pending"
"status": "completed",
"summary": "Added dense test matrix and deterministic Gaussian solver adapter with singular diagnostics."
},
{
"step": 8,
"name": "results-writer-minimal",
"status": "pending"
"status": "completed",
"summary": "Added in-memory step/frame/field results for mandatory nodal U and RF outputs."
},
{
"step": 9,
"name": "reference-displacement-comparator",
"status": "pending"
"status": "completed",
"summary": "Added Abaqus displacement CSV loader and node-id-based comparator with tolerance diagnostics."
},
{
"step": 10,
"name": "mitc4-formulation-closure",
"status": "pending"
"status": "completed",
"summary": "Closed the Phase 1 MITC4 baseline decisions for tying points, local basis, integration, drilling scale, and U/RF output scope."
},
{
"step": 11,
"name": "mitc4-element-baseline",
"status": "pending"
"status": "completed",
"summary": "Implemented baseline MITC4 stiffness kernel with shape functions, MITC shear interpolation, local basis, and drilling stabilization tests."
},
{
"step": 12,
"name": "assembly-reaction-recovery",
"status": "pending"
"status": "completed",
"summary": "Added full-system assembly and RF recovery path using K_full * U_full - F_full."
},
{
"step": 13,
"name": "linear-static-analysis-path",
"status": "pending"
"status": "completed",
"summary": "Added LinearStaticAnalysis path that assembles, solves, reconstructs full U, recovers RF, and writes results."
},
{
"step": 14,
"name": "stored-reference-regression",
"status": "pending"
"status": "blocked",
"blocked_reason": "No Phase 1-compatible Abaqus TYPE=S4 reference input with matching *_displacements.csv is available. Existing quad_01 input contains S4R, Part/Assembly/Instance, Density, and NLGEOM=YES and is tested only as unsupported provenance/comparator format."
},
{
"step": 15,
+2 -1
View File
@@ -2,7 +2,8 @@
"phases": [
{
"dir": "1-linear-static-mitc4",
"status": "pending"
"status": "blocked",
"blocked_reason": "P1-15 stored-reference regression needs at least one Phase 1-compatible Abaqus TYPE=S4 input and matching displacement CSV; quad_01 remains S4R/NLGEOM provenance only."
}
]
}