Files
FESADev/phases/1-linear-static-mitc4/step4.md
T
2026-05-01 02:40:19 +09:00

2.7 KiB

Step 4: parser-phase1-subset

Sprint Contract

Objective

Complete Phase 1 Abaqus input subset behavior and explicit rejection diagnostics for unsupported features.

Required Reading

  • /AGENTS.md
  • /PROGRESS.md
  • /PLAN.md
  • /docs/README.md
  • /docs/HARNESS_ENGINEERING.md
  • /docs/PRD.md
  • /docs/ARCHITECTURE.md
  • /docs/ABAQUS_INPUT_SUBSET.md
  • /docs/VERIFICATION_PLAN.md
  • /phases/1-linear-static-mitc4/step3.md

Scope

  • Parse *Node, *Element, *Nset, *Elset, *Material, *Elastic, *Shell Section, *Boundary, *Cload, *Step, *Static, and *End Step as documented.
  • Support generated and explicit set definitions only if documented in docs/ABAQUS_INPUT_SUBSET.md.
  • Reject unsupported Abaqus constructs with clear diagnostics.

Allowed Files

  • include/**
  • src/**
  • tests/**
  • docs/ABAQUS_INPUT_SUBSET.md only for clarification of already agreed behavior
  • PLAN.md
  • PROGRESS.md
  • phases/1-linear-static-mitc4/index.json

Explicit Non-Goals

  • Do not support S4R, Part, Assembly, Instance, *Include, pressure loads, nonzero prescribed displacement, *Density, or NLGEOM=YES.
  • Do not make quad_01.inp pass as Phase 1 input.
  • Do not add geometric/material nonlinearity, dynamics, thermal coupling, or mesh quality diagnostics.

Tests To Write First

  • Positive parser tests for each Phase 1 supported keyword.
  • Negative parser tests for S4R, Part/Assembly/Instance, *Include, *Density, pressure loads, nonzero prescribed displacement, and NLGEOM=YES.
  • Diagnostics tests for missing required parameters, malformed data rows, and invalid labels.

Reference Artifacts

  • Format/provenance only: references/quad_01.inp may be used to assert that unsupported features are rejected or documented, not as a passing parser case.

Acceptance Commands

python scripts/validate_workspace.py

Evaluator Checklist

  • Supported keyword coverage matches docs/ABAQUS_INPUT_SUBSET.md.
  • Unsupported features fail loudly and specifically.
  • S4 maps to the internal MITC4 shell element type; S4R remains unsupported.
  • Tests include both successful subset parsing and negative diagnostics.

Handoff Requirements

  • Record parser coverage, unsupported-feature behavior, and validation in PROGRESS.md.
  • Update PLAN.md if a parser blocker remains.
  • Update the matching phase index entry: use completed with a one-line summary, or blocked with blocked_reason, or error with error_message.

Verification

  1. Run the acceptance command.
  2. Inspect tests to ensure unsupported Abaqus features are not silently accepted.

Do Not

  • Do not widen parser support because a stored reference file happens to contain a keyword.