33 lines
905 B
Markdown
33 lines
905 B
Markdown
# Step 0: beamexamples-parser
|
|
|
|
## 읽어야 할 파일
|
|
|
|
- `/AGENTS.md`
|
|
- `/PROGRESS.md`
|
|
- `/WORKNOTES.md`
|
|
- `/docs/ARCHITECTURE.md`
|
|
- `/BeamExamples/CantileverBeam.txt`
|
|
- `/BeamExamples/CantileverBeam_Displacements.txt`
|
|
|
|
## 작업
|
|
|
|
TDD로 `BeamExamples` parser를 구현한다.
|
|
|
|
- `/tests/test_beamexamples_io.py`를 먼저 작성한다.
|
|
- `read_beam_example()`은 metadata, 6 nodes, 5 beams, fixed node 1, node 6 load를 읽는다.
|
|
- `read_expected_displacements()`는 node별 `Ux`, `Uy`, `Rz` 기준값을 읽는다.
|
|
- parser는 comment, blank line, trailing comma, `Poisson'sRatio` label을 처리한다.
|
|
- 구현 파일: `/src/femsurrogate/fea/model.py`, `/src/femsurrogate/fea/io.py`.
|
|
|
|
## Acceptance Criteria
|
|
|
|
```powershell
|
|
uv run pytest tests/test_beamexamples_io.py -q
|
|
uv run ruff check .
|
|
```
|
|
|
|
## 금지사항
|
|
|
|
- solver 구현을 이 step에 넣지 마라.
|
|
- fixture 파일을 수정하지 마라.
|