Files
FESADev/docs/mitc4-shell-feast-eigen/numerical-review.md
T
2026-09-06 04:27:42 +09:00

75 lines
5.0 KiB
Markdown

# MITC4 질량·FEAST 독립 수치 검토
- Feature ID: `mitc4-shell-feast-eigen`
- Owner: `numerical-review-agent`
- Input contract revision: `r2`
- 요청 outcome: `pass`
- Next owner: `io-definition-agent`
- Failure classification / blocker: `null`
- 검토일: `2026-09-06`
- 의미: 수학·numerical controls·logical reference readiness의 I/O 인계 요청. Workflow 전이는 Coordinator 소유다.
필수 입력은 [FEATURED_AGENTS](FEATURED_AGENTS.md), [PRD](PRD.md), [ADR](ADR.md),
[requirements](requirements.md), [requirements evidence](requirements-evidence.md),
[research](research.md), [research evidence](research-evidence.md),
[formulation](formulation.md)과 연결된 mass/eigen/verification/stabilization 상세 문서다.
[프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../PRD.md), [ARCHITECTURE](../ARCHITECTURE.md),
[공통 ADR](../ADR.md), [TOLERANCE](../TOLERANCE.md),
[agent 계약](../SOLVER_AGENT_DESIGN.md), [문서 관리](../FEATURE_DOCUMENTATION.md)를 적용했다.
## Blocking finding
현재 unresolved blocking finding은 없다. **NR-MFE-001의 r1 실패는 보존하고 r2 수학 계약에서
해소되었음을 독립 확인했다.** 사용자 승인 MFE-ADR-007에 따라 초기 physical rotary trace
평균을 사용하는 [S1~S8](formulation-stabilization.md)을 검토했다. Positive inventory,
기저·좌표 공변성, partial-BC numerical contribution, linear massless decoupling 및
nonlinear frozen objective potential의 경계가 일관된다.
NR는 기존 R block 값을 기대값 생성에 재사용하지 않고 planar membrane/curvature/MITC
shear work를 직접 적분했다. 동일 물리 URZ-only BC의 Z축 45° 회전 전후
`lambda=23.04222222222223`, 단위 tangent moment의 `thetaZ=0.7233098659465717`로 같다.
Complete K/ML/response/reaction covariance error는 각각
`7.90e-17 / 4.66e-17 / 0 / 1.15e-16`이다.
[원래 실패·r2 독립 재계산과 실제 명령](numerical-review-evidence.md)을 보존한다.
Actual C++/FEAST 실행을 대신한 판정은 아니다.
## 고정한 수치·검증 계약
- [Controls C1~C7](numerical-review-controls.md)에 V1~V6의 단위·scale·zero branch와
matrix/mass/null/conditioning/full residual/Gram/energy/rigid/density/coordinate 기준을
고정했다. Physical rank는 analytic BC/director intersection으로만 정하고 tiny positive
mass는 삭제하지 않는다. Frobenius residual 외 operator-scale residual도 필수다.
- FEAST parameter·seed·QR·thread·representation 경계, endpoint guard와
전체 `512` count calls/`3` solve attempts 상한을 같은 상세 문서에 고정했다.
Enclosure/empty-prefix/count/solve-count/Gram/독립 residual을 결합하며 count만으로
무조건 lowest-N completeness를 주장하지 않는다. 요청 N은 항상 `.inp` authority다.
- [필수 cases와 27개 requirement coverage](numerical-review-cases.md)는 독립 mass oracle,
lumping refinement, partial BC/near-null/반례 해소, actual FEAST known spectra,
negative/zero/repeated/cluster/endpoint/capacity/failure, I/O/state 및 기존 static 회귀를
포함한다. 정확한 tests/owned paths/TDD commands는 Planning에 인계한다.
- [Reference-model](reference-model.md)은 원본 input/TXT·모든 10개 Value·singleton
modal-frame family·공통 RMS에 의한 실효 mode별1%와 identity 사전검사를 유지한다.
새 eigen Value-only와 승인된 기존 static U/UR·reaction 회귀의 역할을 분리한다.
Final persistent dataset/schema는 I/O 소유다.
r1의 degree `(4,4,4)` rational mass oracle, 3-point 오차 `1.11e-16`,
positive central inertia·centroid equality, Intel count/trace 및 reference identity 근거는
r2 식의 변경 영향을 확인해 재사용했다. 같은 실험을 새로 실행했다고 보고하지 않는다.
Reference 두 SHA-256은 r2에서도 일치한다. 원본·upstream·source/test/build/phase/Hook/Git를
수정하지 않았고 다른 owner 변경을 보존했다.
## Handoff와 잔여 위험
I/O는 고정된 quantity·source/mode/frame·backend/mass·failure 의미와 numerical controls를
minimum syntax 및 additive persistent schema에 연결한다. Planning/Implementation은
case matrix의 관찰된 RED, 전체 configured MSVC x64 Debug suite, actual FEAST runtime,
새 binary의 fresh eigen/reference 및 영향받는 static 회귀 evidence를 생성해야 한다.
이후 Physics/Release가 같은 r2 evidence를 독립 평가한다.
이번 단계의 수학 계산과 문서 정적 검증은 실제 `python -B -`/`git diff --check` exit `0`으로
확인했고 상세 결과는 [evidence](numerical-review-evidence.md)에 있다.
CMake/CTest·Harness·외부 solver·FEAST runtime·FESA reference comparison은 이 stage에서
미실행이다. Ill-conditioned thin/near-aligned mass의 명시적 실패, sampling 밖 geometry
injectivity, FEAST floating-point count/cluster 한계 및 shifted fill/peak memory는
기록된 적용 한계다. 이 한계를 숨기는 cutoff·fallback·tolerance 완화는 허용하지 않는다.