docs: complete MITC4 eigen numerical review

This commit is contained in:
KOKO\Mimi
2026-09-06 04:27:42 +09:00
parent 4d303839c2
commit ea883ad372
9 changed files with 636 additions and 77 deletions
@@ -2,76 +2,73 @@
- Feature ID: `mitc4-shell-feast-eigen`
- Owner: `numerical-review-agent`
- Input contract revision: `r1`
- 요청 outcome: `return-upstream`
- Next owner: `requirement-agent`
- Failure classification: `upstream-contract`
- 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 상세 문서다.
[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
**NR-MFE-001 — 기존 stabilization 보존과 eigen coordinate-invariance acceptance의 미정합.**
`FEM-REQ-MITC4-EIGEN-002`는 기존 kernel을 유지하고, `014`는 두 질량과 선택된 질량의
eigen 해석에 coordinate-invariance evidence를 요구한다. 그러나
[V5](formulation-verification.md#v5-rigid-mode-coordinate-및-density-불변식)는 eigen
좌표 불변성 검증을 모든 회전이 free 또는 모두 fixed인 node 사례로 한정한다.
허용된 부분 global 회전 BC의 유한 공간에는 기존 drilling stiffness가 남으며,
그 계수는 global-axis 기반 tangent frame에서의 최소 대각값에 의존한다.
현재 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의 경계가 일관된다.
유효한 `4×2` 평판, `t=1`, `E=12`, `nu=0`, `rho=1`,
`d=(0.6,0,0.8)`, 한 절점의 `URZ`만 free인 모델의 독립 직접 적분 결과는 다음과 같다.
Global Z축으로 45° 회전하면 **같은 지원 BC가 같은 물리 제약을 유지**하지만,
고유치는 `23.04088888888889`에서 `23.040628726287263`으로 바뀐다.
상대 차이는 `1.1291343961675893e-5`이며 roundoff 설명이 아니다.
수식·geometry·명령·exit code는 [반례 evidence](numerical-review-evidence.md#nr-mfe-001-직접-계산-반례)에 있다.
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 실행을 대신한 판정은 아니다.
이는 새 consistent/lumped mass나 E2~E5 reduction의 확인된 결함이 아니다.
V5가 이미 기록한 **기존 stiffness의 실제 한계**와 현재 acceptance intent 사이의 문제다.
NR가 부분 BC를 조용히 제외하거나 invariant 실패를 diagnostic으로 낮추면 안 된다.
외부 reference 1% 기준으로 이 내부 항등식 위반을 통과시킬 수도 없다.
## 고정한 수치·검증 계약
Requirement owner는 `002/008/014`를 함께 검토하여 기존 한계와 `014`의 의도·적용 범위를
명시적으로 정합시켜야 한다. 전체 지원 모델의 좌표 불변성을 유지하려면 기존 stabilization
보존 계약에 영향이 있고, 제한을 수용하면 acceptance 설명에 영향이 있다. 기술 evidence로
기존 의도를 확정할 수 없는 critical 선택만 Coordinator에게 반환한다. NR는 어느 선택도
승인하거나 요구사항·강성을 수정하지 않았다. 같은 질량 선택을 사용자에게 다시 묻지 않는다.
- [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 소유다.
## 완료한 검토와 보존할 evidence
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 변경을 보존했다.
- M1~M10의 부호·단위·quadrature degree, consistent physical rank20, nodal lumped
rank5, odd-thickness coupling, 보존량과 Jensen 차이는 수학적으로 일관된다.
Independent rational-polynomial fixture에서 integrand degree `(4,4,4)`,
3-point 최대 entry 오차 `1.1102230246251565e-16`, 2-point 오차
`6.018518518518257e-4`, 양의 central inertia와 exact centroid identity를 확인했다.
- E1~E5는 실제 global BC 뒤 analytic null intersection을 사용하며 원 constrained
stabilized pencil을 보존한다. Tiny positive mass를 rank cutoff로 삭제하지 않는 계약,
nodal whitening 및 원 free DOF 전체 residual은 유지해야 한다.
- Intel `fpm[49]`의 total count는 stochastic estimate로 기술되지 않는다.
Enclosure·empty prefix·count/solve 일치·Gram·독립 residual을 함께 요구하는 E6는
floating-point 무조건 완전성 theorem을 주장하지 않는다. Trace stopping은 interval
endpoint scale을 사용하므로 영고유치 자체가 분모 0의 근거는 아니다.
출처와 검토 한계는 [수치 상세](numerical-review-evidence.md)에 기록했다.
- [Reference-model](reference-model.md)은 지정 input/TXT 원본, 모든 10개 `Value`,
step/mode/frame identity, singleton family와 공통 tolerance의 논리 계약을 완성했다.
Reference artifact readiness에 결손은 발견하지 않았다. 수치 비교 실행 성공은 미판정이다.
## Handoff와 잔여 위험
## 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를 독립 평가한다.
이번 gate는 **통과하지 않았다**. Requirement owner의 정합 결과 후 영향받은 formulation
V5와 NR evidence를 같은 revision으로 재검토한다. Reference 계약과 위 비충돌 계산은
revision 영향 검토 후 재사용할 수 있다.
전체 V1~V6 internal threshold, conditioning limit, FEAST parameter·endpoint/count/solve
budget 및 필수 case matrix의 최종 고정은 이 조기 upstream 반환에서 완료하지 않았다.
구현 담당자가 빈 기준을 정하거나 현재 보고서를 I/O/구현 진입 승인으로 사용하면 안 된다.
미완료 항목은 [재검토 범위](numerical-review-evidence.md#재검토-범위)에 명시했다.
외부 solver·CMake/CTest·Harness·FEAST runtime·FESA reference 비교는 미실행이다.
Workflow 전이와 critical decision 전달은 Coordinator 소유다.
이번 단계의 수학 계산과 문서 정적 검증은 실제 `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 완화는 허용하지 않는다.