Files
FESADev/docs/mitc4-shell-feast-eigen2/PRD.md
T

8.4 KiB

MITC4 Shell Mass·FEAST Eigen 2 PRD

  • Feature ID: mitc4-shell-feast-eigen2
  • Owner: 메인 assistant
  • Requirement baseline revision: r1
  • 상태: requirement/formulation/NR/I/O r1 문서 완료. 후속 사용자 요청에 따라 implementation·실행 검증 진행 중이다.

기준: 프로젝트 지침, 프로젝트 PRD, 공통 ADR. 지역 지침은 FEATURED_AGENTS, 결정 근거는 Feature ADR을 따른다.

사용자 요청과 적용 범위

2026-09-08 사용자는 기존 작업을 mitc4-shell-feast-eigen2라는 이름으로 requirement부터 다시 시작하고, 기존 docs/mitc4-shell-feast-eigen/의 유용한 문서를 참고하며 작업 중 변경사항을 Git에 커밋하도록 요청했다. 이어 모든 단계를 진행하지 말고 requirement 단계만 진행하도록 범위를 명시했다.

이후 사용자가 research부터 io-definition까지 진행하도록 요청했다. 현재 범위는 research, formulation, 독립 numerical review, I/O 계약 문서와 단계별 커밋이다. 구현 계획·코드, solver build/test·reference 비교와 release 감사는 포함하지 않는다. 별도 coordinator나 phase 상태기계를 만들지 않는다.

작업시간 제한은 30분이다. 시작은 2026-09-08 12:07:56 UTC이며 12:37:56 UTC에 도달하면 진행 중인 작업을 중지하고 실제 완료·미완료 항목과 지연 이유를 보고한다.

2026-09-09 KST 사용자는 implementation 단계를 진행하도록 요청하고 implementation 단계의 30분 제한은 없다고 명시했다. 현재 범위는 구현 계획에 따른 코드·테스트·실제 FEAST 및 필수 reference/회귀 검증과 작업별 커밋이다. 앞의 30분 제한은 완료된 문서 작업의 이력이다. 원본 reference 생성·변경과 push/release는 포함하지 않는다.

솔버 기능의 요구 범위 요약

기존 사용자 결정에 기록된 다음 의미를 새 요구사항의 출발점으로 사용한다. 승계 근거와 후속 전문 판단 경계는 ADR에 기록한다.

  1. MITC4 shell consistent mass를 계산하고 그 결과로부터 lumped mass를 유도한다.
  2. 실제 무감쇠 선형 고유진동 해석은 derived lumped mass와 Intel MKL FEAST를 사용한다.
  3. 원형상·무응력 상태와 승인된 shell/constraint 범위를 대상으로 하며, requested mode count는 .inp의 *FREQUENCY에서 얻는다.
  4. 지정 reference/shellNL-eigen-meshfine의 기존 입력·고유치 TXT를 보존하고 외부 eigen 비교는 Value만 사용한다. Mode shape는 내부 검증 대상이며 외부 acceptance를 추가하지 않는다.
  5. 좌표 공변적인 numerical drilling stabilization 개선과 영향받는 기존 선형·비선형 정적 및 새 eigen 검증을 포함한다. 기존 물리 kernel·source identity·output 의미·공통 tolerance는 보존한다.
  6. reference/temp로 제외된 예제는 검증에 사용하지 않는다. 남는 정적 회귀와 내부 물리 검증 의무를 명시한다.

지속할 상세 계약이 필요하므로 요구사항과 verification matrix 원본은 requirements.md에 둔다. 이 PRD에는 수식·threshold·schema를 중복 정의하지 않는다.

Acceptance 요약과 원본

아래 ID는 FEM-REQ-MITC4-EIGEN2- prefix를 생략하며 링크는 상세 matrix의 원본을 가리킨다.

영역 Requirement IDs 요구되는 결과와 검증 의도
입력·물리 범위 001004, 015016 밀도·section·geometry·boundary·mode 요청의 의미를 보존하고 미지원 조합을 명확히 진단
질량·stabilization 005008, 014, 026027 두 질량의 유도 관계, 물리 관성·drilling null, 대칭성·에너지·좌표 공변성 검증
FEAST·modal evidence 009~013 실제 backend, 낮은 N개·multiplicity, 동일 사용 질량의 residual·normalization·orthogonality 및 실패 보존
결과·reference 017~022 HDF5 source/mode identity, Value-only 대응, completeness·finite 사전검사와 공통 tolerance
회귀·완료 023~025 제외 예제를 사용하지 않는 남은 static·내부 물리 검증, 필요한 실제 실행 evidence와 미실행의 구분

각 영역의 원자적 ID·검증 방법·출처는 requirements 및 근거 문서를 따른다. 과거 문서의 pass, 362/352 test count나 stage 완료를 이 baseline의 실행 결과로 사용하지 않는다.

현재 checklist

  • 새 Feature ID·작업 브랜치와 requirement-only 범위를 설정한다.

  • 기존 자료의 참고·승계·후속 재검토 경계를 정한다.

  • Requirement specialist가 새 요구사항·verification matrix와 근거를 작성한다.

  • 메인이 사용자 요구 coverage, 전문 owner 경계와 미해결 사항을 정적으로 확인한다.

  • 상대 링크·ID를 검사하고 커밋 대상이 새 Feature 문서 5개뿐인지 확인한다.

  • Research: 연구와 근거에 일차 출처·질량/축소/stabilization 후보 및 실제 runtime 확인이 필요한 FEAST 두 항목을 기록했다.

  • Formulation: 정식화에 질량·공변 stabilization·constraint-first 축소·FEAST·복구 수학 계약을 작성했다. 독립 numerical review는 별도 항목이다.

  • Numerical review: 독립 검토는 pass-for-io-definition이다. 새 수학 oracle 2개와 27개 verification cases, 내부 controls 및 Value-only reference family를 정의했다. 실제 solver 검증은 미실행이다.

  • I/O definition: I/O 계약에 입력·진단·additive eigen schema·source step/mode mapping·실패 보존과 검증 의무를 정의했다.

  • 신규 문서의 링크·계약 일관성, 27개 요구사항의 NR/I/O coverage와 변경 범위를 정적으로 확인하고 단계별 변경을 커밋한다.

이 checklist는 문서 작업 상태다. Solver 구현·실제 FEAST 실행·회귀 및 외부 reference 비교의 통과를 뜻하지 않는다.

  • 질량·stabilization과 독립 analytical/invariant 테스트 구현·검증.
  • 실제 FEAST backend·count/cluster/zero/실패 controls와 runtime 검증.
  • Density/Frequency semantic·source identity·진단 및 입력 테스트. 기존 정적 PREPRINT 회귀를 보존했다.
  • Constraint-first 축소·modal recovery·별도 eigen state/procedure 구현.
  • HDF5 additive schema·candidate 보존·Value comparator 및 통합 테스트.
  • 제외 예제 사용 없이 남는 static/내부 회귀·전체 build/test·필수 reference 실행.
  • 관련 독립 numerical/physics 확인, 결과·한계 기록과 커밋.

현재 구현·실행은 implementation-verification에 기록했다. 실제 mass/reduction/FEAST/procedure/HDF5 경로와 focused 검사가 있으며, 체크되지 않은 항목이 전부 미구현이라는 뜻은 아니다. 원본 eigen의 전체 c residual 실패와 S3 public static 계약 충돌, 세부 case의 미완료 evidence 때문에 기능 전체 acceptance는 완료하지 않았다.

이전 문서 단계의 결과와 구현 입력

Research부터 I/O까지 요청한 문서 작업과 독립 수학 검산을 30분 제한 안에 완료했다. 19개 Feature 문서의 링크·UTF-8·diff와 27개 요구/검증 case identity·coverage를 확인했다. 기존 Feature/phase의 사용자 변경 16개는 보존했다. Source·test·config·reference는 변경하지 않았다.

다음 작업의 입력은 정식화, 독립 검토, controls, cases, I/O다. 문서 단계 종료 당시 Density/Frequency semantic·mass/FEAST·eigen state/writer 구현, 실제 backend와 MSVC build/test·reference·물리 검증은 미실행이었다. 현재 사용자가 승인한 구현은 implementation-plan에 따라 이 후속 실행을 포함하며, 진행 상태는 위 checklist를 따른다. Pressure 제외 예제의 fresh 외부 coverage 부재는 유지한다.