# 이전 MITC4 질량·FEAST 요구 baseline - Feature ID: `mitc4-shell-feast-eigen`; 이전 input contract revision: `r2`. - 현재 용도: MFE 요구사항·승인·유도·반례의 이력. 새 구현 상태는 [eigen2 PRD](../mitc4-shell-feast-eigen2/PRD.md)가 소유한다. - 진입점과 이전 실행 실패: [README](README.md), [개발 교훈](development-notes.md). - 승인 이력: [ADR](ADR.md); 요구 ID·근거: [requirements](requirements.md). ## 사용자 요구와 승계 경계 Consistent mass로부터 lumped mass를 유도하고 실제 FEAST·입력 N·Value-only 원본 비교를 구현하며 공변 drilling 개선과 영향받는 정적/eigen 재검증을 요구했던 baseline이다. 과거9-stage·Hook prep는 현재 실행 절차가 아니다. 수학 근거의 채택/비채택과 MFE→MFE2 대응은 새 baseline에서 명시하며 이전 pass·controls·test 수를 자동 승계하지 않는다. ## 범위와 acceptance 입력 semantic model, 질량행렬과 equation 구성, FEAST adapter, procedure state, HDF5 결과 및 고유치 comparison의 end-to-end 기능이 대상이다. 구체적인 질량 정식화, 해석 기준 상태, 모드 요청 의미, 출력량 및 지원 subset은 Requirement Agent가 evidence를 조사하고 후속 owner와 critical decision 절차로 고정한다. 외부 mode-shape 비교, reference 생성·수정·복원과 외부 배포는 요청된 범위에 포함되지 않는다. MSVC x64 Debug CMake/CTest, TDD, common tolerance, failure preservation과 독립 physics 검토를 적용한다. Requirement ID별 원본 계약과 검증 matrix는 [requirements.md](requirements.md#requirements--requirement-verification-matrix)가 소유한다. | Requirement IDs (`FEM-REQ-MITC4-EIGEN-`) | Acceptance 요약 및 원본 계약 | | --- | --- | | `001`~`004` | [원형상 procedure, 기존 shell mapping, material density와 section 연결](requirements.md#requirements--requirement-verification-matrix) | | `005`~`008` | [질량 이산화 선택, 물리 관성, 조립, massless 좌표 admissibility](requirements.md#requirements--requirement-verification-matrix) | | `009`~`014` | [낮은 모드, multiplicity, FEAST, 실패 처리, 내부 eigenpair 및 physics evidence](requirements.md#requirements--requirement-verification-matrix) | | `015`~`019` | [입력 subset, 진단, HDF5, source/modal identity 및 candidate 보존](requirements.md#requirements--requirement-verification-matrix) | | `020`~`022` | [고유치-only 외부 비교, identity 사전검사 및 common tolerance](requirements.md#requirements--requirement-verification-matrix) | | `023`~`025` | [TDD·MSVC 검증, 기존 정적 회귀 및 동일 revision의 독립 closure](requirements.md#requirements--requirement-verification-matrix) | | `026` | [Consistent에서 lumped 유도 및 질량·관성 불변식](requirements.md#requirements--requirement-verification-matrix) | | `027` | [좌표 공변적인 numerical stabilization 및 영향받는 static/eigen 검증](requirements.md#requirements--requirement-verification-matrix) | Reference는 선행 preload 없는 단일 frequency step의 10모드이며 상세 관찰과 단위 의미는 [requirements evidence](requirements.md#requirements-evidence--원본-reference-관찰)에 있다. 두 질량 계산의 연결에 관한 [MFE-ADR-002](ADR.md#mfe-adr-002--mitc4-질량-이산화)는 사용자 후속 요구로 확정되었다. 실제 FEAST mass는 [MFE-ADR-004](ADR.md#mfe-adr-004--feast에-사용하는-질량행렬)에 따라 lumped로 승인되었다. 상세 lumping 수식은 Research/Formulation owner가 정의한다. Primary-source 근거와 적용 한계는 [research](research.md#research), 상세 근거는 [research-evidence](research.md#research-evidence)에 있으며 최종 수식·수치 기준의 승인을 대신하지 않는다. 구현용 수학 계약과 상세 문서의 연결은 [formulation](formulation.md#formulation), 고정된 내부 수치 기준은 [NR controls](numerical-review.md#numerical-review-controls), 필수 검증은 [27개 cases](numerical-review.md#numerical-review-cases)에 있다. [Reference artifact·logical readiness](reference-model.md)와 독립 수학/controls evidence를 함께 확인하여 r2 NR gate를 통과했다. [I/O 계약](io.md#io)은 [exact 입력 subset](io.md#io-input), [additive HDF5와 내부 modal evidence](io.md#io-schema), [책임·failure·Value projection](io.md#io-mapping)을 정의했다. Source Step-2와 canonical storage Step-1, 입력 요청 N과 전체 검증 c를 구분하며 기존 static 계약은 보존한다. 구현 계획은 27개 요구와 I/O 검증 obligation을 실제 TDD·full VERIFY·fresh reference 경로에 연결해야 한다. [실행 계획](development-notes.md#실패와-재발-방지)은 운영 준비 1개와 main 8개 step으로 구체화했고 [verification mapping](development-notes.md#실패와-재발-방지)에 요구27/NR27/I/O11 및 필수 test40개를 연결했다. 정확한 owned paths·actual backend·유한 실행시간·fresh solve·등록 Stop 사후 확인은 [환경 계약](development-notes.md#실패와-재발-방지)과 각 phase step을 따른다. 실제 실행 성공과 독립 physics/release gate는 아직 남아 있다. r1의 [NR-MFE-001 실패 이력](numerical-review.md#numerical-review-evidence)은 기존 `002/008`의 stabilized pencil 보존과 `014`의 eigen coordinate-invariance evidence 관계였다. Requirement owner는 알려진 partial-BC 반례를 단순 clarification으로 제외할 수 없다고 판단했다. [MFE-OQ-003 대안·영향](requirements.md#requirements-evidence--nr-mfe-001-requirements-intent-검토) 중 좌표 공변적인 stabilization 개선과 영향받는 정적/eigen 재검증 범위 추가가 사용자에게 승인되었다. 단순 한계 수용 및 acceptance 축소안은 선택되지 않았다. 사용자가 확정한 질량 계산 흐름·FEAST 사용 mass·입력 N·외부 Value-only 범위는 유지한다. 개선 수식과 실제 구현·검증은 해당 owner의 후속 gate를 거쳐야 한다. 기존 fixed scale의 [대체 경계](requirements.md#requirements--r2의-기존-계약-대체-범위)와 [필수 static 회귀 포트폴리오](requirements.md#requirements-evidence--r2-승인-범위와-정적-재검증)는 Requirement owner r2에 명시되어 있다. 과거 정적 reference의 U/UR 및 reaction 검토 정책은 해당 기존 계약으로 재검증하고 새 eigen 비교량은 Value로 유지한다. [r2 research delta](research.md#research-evidence--r07--r2-stabilization-근거와-영향)는 기저 불변 scale 후보, 초기 고정 nonlinear lifecycle 및 linear massless 처리의 조건을 구분한다. 최종 수식 채택과 반례 해소 판정은 후속 owner 소유이다. [r2 stabilization 정식화](formulation.md#formulation-stabilization)는 `k_ref=sum_i trace(R_i)/8`, `k_d=10^-3 k_ref`를 채택하고 양성 inventory·complete K의 공변성·nonlinear 고정 lifecycle 및 반례의 고유치/정적 exact target을 정의한다. NR는 반례를 독립 직접 적분으로 재검산해 r2 수학 계약의 해소를 확인했다. 실제 C++/FEAST 구현 및 fresh reference 재검증은 후속 필수 gate다.