initial commit FESurrogateModelTutorial
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
# Step 2: assembly-and-solver
|
||||
|
||||
## 읽어야 할 파일
|
||||
|
||||
- `/AGENTS.md`
|
||||
- `/docs/ARCHITECTURE.md`
|
||||
- `/src/femsurrogate/fea/model.py`
|
||||
- `/src/femsurrogate/fea/io.py`
|
||||
- `/src/femsurrogate/fea/element.py`
|
||||
|
||||
## 작업
|
||||
|
||||
TDD로 global assembly와 constrained linear static solver를 구현한다.
|
||||
|
||||
- `/tests/test_beam_solver.py`를 먼저 작성한다.
|
||||
- BeamExamples model의 global stiffness shape `(18, 18)`을 검증한다.
|
||||
- fixed node 1의 3 DOF가 constrained 처리되는지 검증한다.
|
||||
- `solve_linear_static(model)`이 모든 node displacement를 finite 값으로 반환하는지 검증한다.
|
||||
- 구현 파일: `/src/femsurrogate/fea/assembly.py`, `/src/femsurrogate/fea/solver.py`.
|
||||
- solver는 `scipy.sparse`와 `scipy.sparse.linalg.spsolve`를 사용한다.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
```powershell
|
||||
uv run pytest tests/test_beam_solver.py tests/test_frame_element.py tests/test_beamexamples_io.py -q
|
||||
uv run ruff check .
|
||||
```
|
||||
|
||||
## 금지사항
|
||||
|
||||
- expected displacement 값을 solver에 hard-code하지 마라.
|
||||
Reference in New Issue
Block a user