66 lines
5.2 KiB
Markdown
66 lines
5.2 KiB
Markdown
# MITC4 Shell Mass·FEAST Eigen 2 PRD
|
|
|
|
- Feature ID: `mitc4-shell-feast-eigen2`
|
|
- Owner: 메인 assistant
|
|
- Requirement baseline revision: `r2` (022의 외부 accuracy 기준 변경)
|
|
- 상태: **사용자 승인 첫 구현 완료**. 전체 417개 검사와 모드별 외부5% 비교, 독립 수치 검토를 통과했다. S3와 후속 정확도 개선은 보류한다.
|
|
|
|
기준: [프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../PRD.md),
|
|
[공통 ADR](../ADR.md#adr-028). 지역 지침은 [FEATURED_AGENTS](FEATURED_AGENTS.md),
|
|
결정 근거는 [Feature ADR](ADR.md)을 따른다.
|
|
|
|
## 사용자 결정과 현재 적용 범위
|
|
|
|
새 MFE2 baseline은 이전 유용한 수학 근거를 명시적으로 채택하되 실행·검증 결과는 승계하지
|
|
않는다. 사용자 승인 첫 구현은 residual stopping과 모드별 외부5% 정책이다.
|
|
[ADR-011](ADR.md#mfe2-adr-011--feast-residual-stopping과-s3-후속-분리)·
|
|
[ADR-012](ADR.md#mfe2-adr-012--첫-구현의-외부-고유치-5-수용)에 채택 이유와 승인 이력을 남긴다.
|
|
옛30분 문서 작업 제한·당시 Git 운영 요청은 현재 기능 개발의 제약·권한이 아니다.
|
|
|
|
## 솔버 기능의 요구 범위 요약
|
|
|
|
기존 사용자 결정에 기록된 다음 의미를 새 요구사항의 출발점으로 사용한다.
|
|
승계 근거와 후속 전문 판단 경계는 [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#requirements)에 둔다. 이 PRD에는 수식·threshold·schema를 중복 정의하지 않는다.
|
|
|
|
## Acceptance 요약과 원본
|
|
|
|
아래 ID는 `FEM-REQ-MITC4-EIGEN2-` prefix를 생략하며 링크는 상세 matrix의 원본을 가리킨다.
|
|
|
|
| 영역 | Requirement IDs | 요구되는 결과와 검증 의도 |
|
|
| --- | --- | --- |
|
|
| 입력·물리 범위 | [001~004, 015~016](requirements.md#requirements--requirement-verification-matrix) | 밀도·section·geometry·boundary·mode 요청의 의미를 보존하고 미지원 조합을 명확히 진단 |
|
|
| 질량·stabilization | [005~008, 014, 026~027](requirements.md#requirements--requirement-verification-matrix) | 두 질량의 유도 관계, 물리 관성·drilling null, 대칭성·에너지·좌표 공변성 검증 |
|
|
| FEAST·modal evidence | [009~013](requirements.md#requirements--requirement-verification-matrix) | 실제 backend, 낮은 N개·multiplicity, 동일 사용 질량의 residual·normalization·orthogonality 및 실패 보존 |
|
|
| 결과·reference | [017~022](requirements.md#requirements--requirement-verification-matrix) | HDF5 source/mode identity, Value-only 대응, completeness·finite 사전검사와 공통 tolerance |
|
|
| 회귀·완료 | [023~025](requirements.md#requirements--requirement-verification-matrix) | 제외 예제를 사용하지 않는 남은 static·내부 물리 검증, 필요한 실제 실행 evidence와 미실행의 구분 |
|
|
|
|
각 영역의 원자적 ID·검증 방법·출처는 requirements 및 [근거 문서](requirements.md#requirements-evidence)를 따른다.
|
|
과거 문서의 `pass`, 362/352 test count나 stage 완료를 이 baseline의 실행 결과로 사용하지 않는다.
|
|
|
|
## 현재 checklist
|
|
|
|
- [x] MFE2 요구사항·정식화·수치 기준·I/O·기존 MFE 대응과 독립 검산 확정.
|
|
- [x] Density/Frequency, mass·공변 stabilization, constraint-first modal reduction·실제 FEAST 구현.
|
|
- [x] State/procedure·HDF5 candidate 보존·Value 비교 및 failure/normalization·mass oracle 보강.
|
|
- [x] 2026-09-10 첫 구현 전체417/417 PASS·원본10개 Value 최대 상대차 약4.261331%·독립 수치/물리 검토 기록.
|
|
- [x] FEAST residual stopping으로 원본 전체 c의 독립 잔차 실패 해소·저장 controls 검증.
|
|
- [ ] Abaqus Value 정확도 개선. 이전 RMS1% 불일치는 이력으로 보존.
|
|
- [ ] S3 public static 평형 계약 충돌의 후속 검토.
|
|
|
|
## 실행과 미검증 범위
|
|
|
|
[실행 보고서](implementation-verification.md)와 [구현 독립 검토](implementation-review.md)는
|
|
당시 명령·수치·수정 전 실패·실제 주입 범위를 기록한다. 실제512회 vendor 호출과 HDF5
|
|
close-error 전체 주입은 하지 않았다. 이후 통합 회귀는 [전체 현황](../tracking/status.md)이
|
|
연결하며 첫 구현 범위를 release 또는 임의 모델 정확도 보증으로 확대하지 않는다.
|