docs: add linear static beam harness phase
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
# Step 1: Research Evidence
|
||||
|
||||
## 담당 역할과 필수 스킬
|
||||
|
||||
- 담당 역할: `research-agent`
|
||||
- 필수 스킬: `fesa-research-evidence`, `fem-theory-query`
|
||||
- 두 스킬의 `SKILL.md`를 끝까지 읽고, FEM wiki query를 우선 사용하라.
|
||||
|
||||
## 읽어야 할 파일
|
||||
|
||||
- `/AGENTS.md`
|
||||
- `/docs/SOLVER_AGENT_DESIGN.md`
|
||||
- `/docs/research/README.md`
|
||||
- `/docs/requirements/linear-static-3d-euler-beam.md`
|
||||
- `/docs/superpowers/specs/2026-08-08-linear-static-3d-euler-beam-design.md`
|
||||
- `/docs/formulations/3d-isoparametric-euler-beam-formulation.md`
|
||||
|
||||
Step 0 산출물과 phase index의 완료 summary를 확인한 뒤 작업하라.
|
||||
|
||||
## 작업
|
||||
|
||||
FEM wiki에서 다음 연구 질문을 query하고
|
||||
`docs/research/linear-static-3d-euler-beam-research.md`를 생성하라.
|
||||
|
||||
- Abaqus B31과 B33의 formulation 차이 및 B33을 Euler–Bernoulli 의미로 사용하는 근거
|
||||
- 2절점 spatial Euler beam의 cubic Hermite interpolation, 6 rigid modes, rank 6,
|
||||
two-point Gauss exactness, local/global transformation과 end-force sign
|
||||
- Abaqus general beam section의 `A, I11, I12, I22, J`, first axis `n1`, section
|
||||
resultant `SF*`/`SM*`, axial `S11` 의미
|
||||
- analytical cantilever axial/torsion/two-plane bending benchmark와 검증 가능한 물리량
|
||||
- PARDISO SPD factorization, deterministic sparse assembly, reference comparison에 필요한
|
||||
기술 근거와 적용 한계
|
||||
|
||||
문서는 Metadata(`status: ready-for-formulation`), Research Questions, Source Inventory,
|
||||
Extracted Facts, Candidate Benchmarks, Verification Relevance, Applicability Limits,
|
||||
Open Issues, Downstream Handoff를 포함해야 한다. Source Inventory에는 문서명, 제공 기관,
|
||||
wiki page identity, 원 출처/매뉴얼 identity, reliability tier와 적용 범위를 기록한다.
|
||||
확인된 사실과 설계에서 도출한 inference를 구분한다. 기존 정식화 식을 최종 승인하거나
|
||||
새 tolerance를 만들지 않는다.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
```powershell
|
||||
$path = 'docs/research/linear-static-3d-euler-beam-research.md'
|
||||
if (-not (Test-Path $path)) { throw "Missing $path" }
|
||||
$required = @(
|
||||
'status: `ready-for-formulation`',
|
||||
'## Research Questions',
|
||||
'## Source Inventory',
|
||||
'## Extracted Facts',
|
||||
'## Candidate Benchmarks',
|
||||
'## Applicability Limits',
|
||||
'B31',
|
||||
'B33',
|
||||
'Hermite',
|
||||
'general beam section'
|
||||
)
|
||||
foreach ($text in $required) {
|
||||
if (-not (Select-String -LiteralPath $path -SimpleMatch $text -Quiet)) {
|
||||
throw "Missing research evidence: $text"
|
||||
}
|
||||
}
|
||||
git diff --check -- $path
|
||||
```
|
||||
|
||||
## 검증 절차
|
||||
|
||||
1. Acceptance Criteria 명령을 실행한다.
|
||||
2. 주요 claim마다 source tier 또는 inference 표시가 있는지 확인한다.
|
||||
3. benchmark마다 target quantity와 검증할 수 없는 범위를 함께 기록했는지 확인한다.
|
||||
4. Step 1을 `completed`와 한 줄 `summary`로 갱신한다. 반복 실패는 `error`, 실제 source
|
||||
부재나 상충으로 사용자 판단이 필요하면 `blocked`로 기록한다.
|
||||
|
||||
## 금지사항
|
||||
|
||||
- 웹 검색 결과나 LLM 기억만을 source로 쓰지 마라. 이유: 사용자가 FEM wiki manual을 허용했다.
|
||||
- formulation을 최종화하거나 C++ API를 설계하지 마라. 이유: downstream 책임이다.
|
||||
- tolerance나 reference 값을 발명하지 마라. 이유: 승인 설계 값을 그대로 사용해야 한다.
|
||||
- Abaqus 실행 및 `/reference/` 변경을 하지 마라. 이유: artifact는 read-only다.
|
||||
- 직접 commit하지 마라. 이유: Harness executor가 담당한다.
|
||||
Reference in New Issue
Block a user