72 lines
5.7 KiB
Markdown
72 lines
5.7 KiB
Markdown
# MITC4 Shell Mass·FEAST Eigen 2 PRD
|
|
|
|
- Feature ID: `mitc4-shell-feast-eigen2`
|
|
- Owner: 메인 assistant
|
|
- Requirement baseline revision: `r1`
|
|
- 상태: requirement baseline r1 완료. 후속 요청에 따라 research부터 io-definition까지 진행 중이며 solver 구현·실행 검증은 미실행이다.
|
|
|
|
기준: [프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../PRD.md),
|
|
[공통 ADR](../ADR.md#adr-028). 지역 지침은 [FEATURED_AGENTS](FEATURED_AGENTS.md),
|
|
결정 근거는 [Feature ADR](ADR.md)을 따른다.
|
|
|
|
## 사용자 요청과 적용 범위
|
|
|
|
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에 도달하면
|
|
진행 중인 작업을 중지하고 실제 완료·미완료 항목과 지연 이유를 보고한다.
|
|
|
|
## 솔버 기능의 요구 범위 요약
|
|
|
|
기존 사용자 결정에 기록된 다음 의미를 새 요구사항의 출발점으로 사용한다.
|
|
승계 근거와 후속 전문 판단 경계는 [ADR](ADR.md)에 기록한다.
|
|
|
|
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](requirements.md)에 둔다. 이 PRD에는 수식·threshold·schema를 중복 정의하지 않는다.
|
|
|
|
## Acceptance 요약과 원본
|
|
|
|
아래 ID는 `FEM-REQ-MITC4-EIGEN2-` prefix를 생략하며 링크는 상세 matrix의 원본을 가리킨다.
|
|
|
|
| 영역 | Requirement IDs | 요구되는 결과와 검증 의도 |
|
|
| --- | --- | --- |
|
|
| 입력·물리 범위 | [001~004, 015~016](requirements.md#requirement-verification-matrix) | 밀도·section·geometry·boundary·mode 요청의 의미를 보존하고 미지원 조합을 명확히 진단 |
|
|
| 질량·stabilization | [005~008, 014, 026~027](requirements.md#requirement-verification-matrix) | 두 질량의 유도 관계, 물리 관성·drilling null, 대칭성·에너지·좌표 공변성 검증 |
|
|
| FEAST·modal evidence | [009~013](requirements.md#requirement-verification-matrix) | 실제 backend, 낮은 N개·multiplicity, 동일 사용 질량의 residual·normalization·orthogonality 및 실패 보존 |
|
|
| 결과·reference | [017~022](requirements.md#requirement-verification-matrix) | HDF5 source/mode identity, Value-only 대응, completeness·finite 사전검사와 공통 tolerance |
|
|
| 회귀·완료 | [023~025](requirements.md#requirement-verification-matrix) | 제외 예제를 사용하지 않는 남은 static·내부 물리 검증, 필요한 실제 실행 evidence와 미실행의 구분 |
|
|
|
|
각 영역의 원자적 ID·검증 방법·출처는 requirements 및 [근거 문서](requirements-evidence.md)를 따른다.
|
|
과거 문서의 `pass`, 362/352 test count나 stage 완료를 이 baseline의 실행 결과로 사용하지 않는다.
|
|
|
|
## 현재 checklist
|
|
|
|
- [x] 새 Feature ID·작업 브랜치와 requirement-only 범위를 설정한다.
|
|
- [x] 기존 자료의 참고·승계·후속 재검토 경계를 정한다.
|
|
- [x] Requirement specialist가 새 요구사항·verification matrix와 근거를 작성한다.
|
|
- [x] 메인이 사용자 요구 coverage, 전문 owner 경계와 미해결 사항을 정적으로 확인한다.
|
|
- [x] 상대 링크·ID를 검사하고 커밋 대상이 새 Feature 문서 5개뿐인지 확인한다.
|
|
|
|
- [x] Research: [연구](research.md)와 [근거](research-evidence.md)에 일차 출처·질량/축소/stabilization 후보 및 실제 runtime 확인이 필요한 FEAST 두 항목을 기록했다.
|
|
- [x] Formulation: [정식화](formulation.md)에 질량·공변 stabilization·constraint-first 축소·FEAST·복구 수학 계약을 작성했다. 독립 numerical review는 별도 항목이다.
|
|
- [ ] Numerical review: 독립 계산·검토로 정식화와 검증 계획의 적합성을 판단한다.
|
|
- [ ] I/O definition: 입력·진단·결과 schema·reference mapping 계약을 정의한다.
|
|
- [ ] 신규 문서의 링크·계약 일관성과 변경 범위를 확인하고 단계별 변경을 커밋한다.
|
|
|
|
이 checklist는 문서 작업 상태다. Solver 구현·실제 FEAST 실행·회귀 및 외부 reference 비교의 통과를 뜻하지 않는다.
|