docs: remove retired workflow instructions and repair references
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
# Hex8 정식화와 검증 불변량
|
||||
|
||||
적용: [PRD](PRD.md)의 FEM-REQ-HEX8-002–007,012–018,021.
|
||||
물리 선택은 [ADR](ADR.md)에 있다. 이 문서는 승인된 식의 구현용 유도이며
|
||||
적용: [PRD](README.md)의 FEM-REQ-HEX8-002–007,012–018,021.
|
||||
물리 선택은 [ADR](README.md)에 있다. 이 문서는 승인된 식의 구현용 유도이며
|
||||
외부 결과에 맞추어 physics를 바꾸는 권한이 아니다. 수치 controls는
|
||||
[별도 원본](numeric-controls.md), 출력 tensor/identity는 [I/O](io.md)를 따른다.
|
||||
[별도 원본](README.md), 출력 tensor/identity는 [I/O](README.md)를 따른다.
|
||||
2026-10-09 승인된 Solid HHT 내부 정밀도 변경의 구현 계약은
|
||||
[precision formulation](precision-formulation.md)이다. 동적 paired 경로의 상대변위 gradient,
|
||||
전체 상태·계수 연산과 반올림 출력 의미는 해당 문서를 함께 적용한다.
|
||||
@@ -196,7 +196,7 @@ strain만으로 결정되는 이전 pointwise law가 아니라 element mean에
|
||||
M은 reference-state 상수다. Positive weights와8점 interpolation matrix의 full rank에서 SPD가
|
||||
따른다. Axis-aligned brick의 scalar block은 \(\rho V/216\)에 각 축 sign이 같으면2/다르면1인
|
||||
세 factor의 곱이다. Direction별 총합은 rho V, row sum은 rho V/8다. 2026-10-11
|
||||
[HEX8-ADR-010](ADR.md) 승인에 따라 production은 full24×24 M_C의 행 합 M_L을 사용한다.
|
||||
[HEX8-ADR-010](README.md) 승인에 따라 production은 full24×24 M_C의 행 합 M_L을 사용한다.
|
||||
행 합은 BC restriction 전에 계산한다. Warped 요소에서는 일반적으로 m_a가 같지 않다.
|
||||
Positive rho/N/weights에서 m_a>0이며 M_L은 diagonal SPD다.
|
||||
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# Hex8 동해석 high+low 정식화
|
||||
|
||||
2026-10-11 질량 정책 변경: [HEX8-ADR-010](ADR.md)에 따라 현재 고유치·HHT는 lumped mass를 사용한다. 아래 consistent 질량을 전제로 한 수식 후보·검토·PASS/FAIL은 해당 시점의 이력이다. 변경본 통과로 승계하지 않으며 현재 수식은 [formulation](formulation.md), 재검증 상태는 [PRD](PRD.md)의 현재 checklist를 따른다.
|
||||
2026-10-11 질량 정책 변경: [HEX8-ADR-010](README.md)에 따라 현재 고유치·HHT는 lumped mass를 사용한다. 아래 consistent 질량을 전제로 한 수식 후보·검토·PASS/FAIL은 해당 시점의 이력이다. 변경본 통과로 승계하지 않으며 현재 수식은 [formulation](formulation.md), 재검증 상태는 [PRD](README.md)의 현재 checklist를 따른다.
|
||||
|
||||
적용: 사용자가 2026-10-09 선택 A로 승인한 [정밀도 제안](precision-proposal.md).
|
||||
적용: 사용자가 2026-10-09 선택 A로 승인한 [정밀도 제안](README.md).
|
||||
기본 물리식·DOF·부호·적분점 순서는 [formulation](formulation.md), 판정 원본은
|
||||
[numeric-controls](numeric-controls.md), 영속 출력은 [I/O](io.md)다. 본 문서는
|
||||
[numeric-controls](README.md), 영속 출력은 [I/O](README.md)다. 본 문서는
|
||||
승인된 정밀도 변경의 구현 계약이며 구현 완료나 독립 수치 승인이 아니다.
|
||||
사용자 선택 B의 평균 Green trace energy는 모든 절차에 적용하며 이 문서는 그 동적 paired
|
||||
평가를 정의한다. Static/frequency의 F64 산술 종류는 유지하되 물리 energy/K0는 같은 새 모델이다.
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
# 제약 일관 가속도 복구 후보
|
||||
|
||||
2026-10-11 질량 정책 변경: [HHT-ADR-012](ADR.md)에 따라 현재 고유치·HHT는 lumped mass를 사용한다. 아래 consistent 질량을 전제로 한 수식 후보·검토·PASS/FAIL은 해당 시점의 이력이다. 변경본 통과로 승계하지 않으며 현재 수식은 [formulation](formulation.md), 재검증 상태는 [PRD](PRD.md)의 현재 checklist를 따른다.
|
||||
2026-10-11 질량 정책 변경: [HHT-ADR-012](README.md)에 따라 현재 고유치·HHT는 lumped mass를 사용한다. 아래 consistent 질량을 전제로 한 수식 후보·검토·PASS/FAIL은 해당 시점의 이력이다. 변경본 통과로 승계하지 않으며 현재 수식은 [formulation](formulation.md), 재검증 상태는 [PRD](README.md)의 현재 checklist를 따른다.
|
||||
|
||||
- 상태: `candidate-for-independent-review; not-adopted`, 2026-09-26.
|
||||
- Owner: `formulation-agent`. 할당 범위는 이 문서이며 source·시험·상위 계약은 변경하지 않는다.
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../PRD.md), [공통 ADR](../ADR.md#adr-028), [Feature PRD](PRD.md), [시간적분](formulation.md), [관성 상세](formulation-inertia.md).
|
||||
- 발견 근거: [구현 수치 검토 NR-009 이후](implementation-numerical-review.md), [C08](verification-cases.md), [N1–N7](numerical-controls.md).
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../solver-core/README.md), [공통 ADR](../solver-core/README.md), [Feature PRD](README.md), [시간적분](formulation.md), [관성 상세](formulation-inertia.md).
|
||||
- 발견 근거: [구현 수치 검토 NR-009 이후](README.md), [C08](README.md), [N1–N7](README.md).
|
||||
|
||||
## 1. 제안과 변경 경계
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
각 admissible nodal null은 `[0;J_l(phi)^(-1)d]`다. 현재 total rotation-vector chart, geometry 및 swing/twist 유효성과 일정 null rank, 양의 physical mass 및 bounded algebraic inverse가 전 구간에서 필요하다. Partial BC는 null과 free 공간의 **교집합**을 구한다. N의 constrained 성분을 단순 삭제하거나 작은 positive mass를 null로 재분류하지 않는다. Empty null에서는 `a_rec=a_h`; all-fixed 모델도 empty recovery로 처리한다.
|
||||
|
||||
이 문서의 N은 [N3/N4](numerical-controls.md)의 고정 scale `D=diag(ell I3,I3)`, `x=D^-1 q`, 연속 정규화 analytic basis Z와 **`N=D_f Z(x)`**로 대응한다. 따라서 `psi=N^T g_f=Z^T(D^Tg)_f`, `g=f_int-F`. 미분 시 basis도 현재 q의 함수로 미분한다. N은 시간 grid와 무관한 같은 정의·source 순서를 사용하며 eigen/SVD 부호 변경으로 선택하지 않는다.
|
||||
이 문서의 N은 [N3/N4](README.md)의 고정 scale `D=diag(ell I3,I3)`, `x=D^-1 q`, 연속 정규화 analytic basis Z와 **`N=D_f Z(x)`**로 대응한다. 따라서 `psi=N^T g_f=Z^T(D^Tg)_f`, `g=f_int-F`. 미분 시 basis도 현재 q의 함수로 미분한다. N은 시간 grid와 무관한 같은 정의·source 순서를 사용하며 eigen/SVD 부호 변경으로 선택하지 않는다.
|
||||
|
||||
## 3. 복구 방정식과 필요한 미분
|
||||
|
||||
@@ -115,7 +115,7 @@ Basis 표현에도 주의한다. `tilde psi=S(q,t)psi`에서 연속 2차 미분
|
||||
|
||||
## 6. 독립 검토용 반증 사례
|
||||
|
||||
아래는 추가 검증 제안이며 [기존 C08/N7](verification-cases.md)의 grid·전체 시점·원 정확도 요구를 바꾸지 않는다. 기존 a_h와 후보 a_rec를 함께 보존하고 실패 결과를 대체하지 않는다.
|
||||
아래는 추가 검증 제안이며 [기존 C08/N7](README.md)의 grid·전체 시점·원 정확도 요구를 바꾸지 않는다. 기존 a_h와 후보 a_rec를 함께 보존하고 실패 결과를 대체하지 않는다.
|
||||
|
||||
| ID | 모델/조작 | 반드시 확인할 결과 |
|
||||
| --- | --- | --- |
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
상태: 연구 후보이며 production 채택·수치 정확도 승인이 아니다. 2026-10-12 formulation owner 작업은 이 문서만 소유한다. 질량·시간적분·내력·초기화·tolerance·원본을 바꾸지 않는다. 독립 numerical review와 실제 prototype 결과는 별도 owner가 소유한다.
|
||||
|
||||
계약: [기존 정식화](../../docs/hht-implicit-dynamics/formulation.md), [관성·null 상세 §4](../../docs/hht-implicit-dynamics/formulation-inertia.md#4-mass-null과-초기-일관성), [ADR-010/012](../../docs/hht-implicit-dynamics/ADR.md). 실제 trial은 [analysis.json](analysis.json)에 있으며 아래 기전 설명은 그 수치를 바탕으로 한 조사 후보이다.
|
||||
계약: [기존 정식화](formulation.md), [관성·null 상세 §4](formulation-inertia.md#4-mass-null과-초기-일관성), [ADR-010/012](README.md). 실제 trial은 [analysis.json](README.md)에 있으며 아래 기전 설명은 그 수치를 바탕으로 한 조사 후보이다.
|
||||
|
||||
## 1. 적용 가정과 보존량
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Carried-A HHT의 arithmetic/noise 인계
|
||||
|
||||
상태: `implementation-ready-estimator; independent-review-pending`, 2026-10-12. [축소 좌표 정식화](formulation-reduced-coordinate.md)와 별개로, 동일 full-coordinate HHT에서 A를 직접 갱신하는 산술을 다룬다. 기존 [N7](numerical-controls.md)의 separation 기준을 완화하지 않는다. Half-ULP `q-qp-sA` closure는 이전 predictor·seed·update 오차 또는 history bound가 아니다.
|
||||
상태: `implementation-ready-estimator; independent-review-pending`, 2026-10-12. [축소 좌표 정식화](formulation-reduced-coordinate.md)와 별개로, 동일 full-coordinate HHT에서 A를 직접 갱신하는 산술을 다룬다. 기존 [N7](README.md)의 separation 기준을 완화하지 않는다. Half-ULP `q-qp-sA` closure는 이전 predictor·seed·update 오차 또는 history bound가 아니다.
|
||||
|
||||
## 1. 실제 연산 경로
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# 대수좌표 제거 DAE 연구: 수식과 실행 결과
|
||||
|
||||
상태: 연구 후보·독립 검토 대기. Owner: formulation, 2026-10-12. [연구의 권장 후보](../../../docs/hht-implicit-dynamics/research.md#temporal-remediation-research)를 소형 문제로 비교했다. Production·tests·PRD·ADR·reference·tolerance는 수정하지 않았다. 실제 shell 검증이나 새 적분법 채택이 아니다.
|
||||
상태: 연구 후보·독립 검토 대기. Owner: formulation, 2026-10-12. [연구의 권장 후보](README.md)를 소형 문제로 비교했다. Production·tests·PRD·ADR·reference·tolerance는 수정하지 않았다. 실제 shell 검증이나 새 적분법 채택이 아니다.
|
||||
|
||||
재현 자료는 [Decimal80 probe](compare.py), [실제 native 기록](run-native.json), [stdout](run.log), [전체 grid·오차·조건 결과](comparison.json)다. `python -B compare.py` 실행 native0이며 FESA build/CTest는 실행하지 않았다. 모든 문제는 `t∈[0,1]`, `h=1/16,...,1/256`, exact frame0의 q/v/a와 `A0=a0`, `alpha=-.05,beta=.275625,gamma=.55`를 사용했다. 초기 구간을 제외하지 않고 모든 `n+1` endpoint의 component infinity-norm 최대 오차를 구했다. 이 raw absolute error는 FESA N7의 normalized/noise-certified metric이 아니다.
|
||||
재현 자료는 [Decimal80 probe](README.md), [실제 native 기록](README.md), [stdout](README.md), [전체 grid·오차·조건 결과](README.md)다. `python -B compare.py` 실행 native0이며 FESA build/CTest는 실행하지 않았다. 모든 문제는 `t∈[0,1]`, `h=1/16,...,1/256`, exact frame0의 q/v/a와 `A0=a0`, `alpha=-.05,beta=.275625,gamma=.55`를 사용했다. 초기 구간을 제외하지 않고 모든 `n+1` endpoint의 component infinity-norm 최대 오차를 구했다. 이 raw absolute error는 FESA N7의 normalized/noise-certified metric이 아니다.
|
||||
|
||||
## 1. 관찰과 범위
|
||||
|
||||
@@ -112,7 +112,7 @@ Exact reduced 해는 `y=sin(t),ydot=cos(t),yddot=-sin(t)`이며 Decimal80 sin/co
|
||||
|
||||
## 6. 실제 shell chart 후보와 구현-ready capability gap
|
||||
|
||||
현재 source는 읽기만 했다. [shell evaluator API](../../../include/fesa/elements/nonlinear_mitc4_shell.h)와 [내부 Jet·scalar constraint](../../../src/fesa/elements/nonlinear_mitc4_shell.cpp), [관성 API](../../../include/fesa/elements/nonlinear_mitc4_inertia.h)를 대조했다. 소형 prototype가 구현한 것은 해석적으로 알려진 polynomial Q와 독립 scalar reduced HHT뿐이다. Actual shell algebraic branch solver·Q 미분·reduced trial/state·assembly·tangent는 **구현하지 않았다**.
|
||||
현재 source는 읽기만 했다. [shell evaluator API](README.md)와 [내부 Jet·scalar constraint](README.md), [관성 API](README.md)를 대조했다. 소형 prototype가 구현한 것은 해석적으로 알려진 polynomial Q와 독립 scalar reduced HHT뿐이다. Actual shell algebraic branch solver·Q 미분·reduced trial/state·assembly·tangent는 **구현하지 않았다**.
|
||||
|
||||
### 6.1 Chart 선택과 물리 동등성의 조건
|
||||
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# 고정 초기 null 기저의 sparse reduced HHT 정식화
|
||||
|
||||
상태: `implementation-ready; independent-review-and-runtime-pending`, 2026-10-13.
|
||||
승인 범위는 [고정 null 기저 제안](fixed-null-basis-proposal.md)과
|
||||
[HHT-ADR-018](ADR.md)의 사용자 결정이다. 본 문서는 수식·연산 계약이며
|
||||
승인 범위는 [고정 null 기저 제안](README.md)과
|
||||
[HHT-ADR-018](README.md)의 사용자 결정이다. 본 문서는 수식·연산 계약이며
|
||||
자기 수치 승인이나 현재 production PASS 기록이 아니다.
|
||||
[기존 축소 정식화](formulation-reduced-coordinate.md)의 fully-free rotation
|
||||
component selector를 아래 고정 ON 기저로 대체한다. 기존
|
||||
[N1–N7](numerical-controls.md), [제한 Newton](c09-channel-newton-proposal.md),
|
||||
[독립 검토](numerical-review-channel-newton.md)와 허용값은 유지한다.
|
||||
[N1–N7](README.md), [제한 Newton](README.md),
|
||||
[독립 검토](README.md)와 허용값은 유지한다.
|
||||
|
||||
## 1. 적용 가정과 물리 계약
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
- 상태: `independently-reviewed-candidate; physics-and-validation-pending`.
|
||||
- Owner: `formulation-agent`, 2026-09-22. 문서 gate 산출물이며 구현 승인이나 수치 검증 통과가 아니다.
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [제품 PRD](../PRD.md), [공통 ADR](../ADR.md#adr-028), [Feature PRD](PRD.md), [요구사항](requirements.md), [연구](research.md).
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [제품 PRD](../solver-core/README.md), [공통 ADR](../solver-core/README.md), [Feature PRD](README.md), [요구사항](README.md), [연구](README.md).
|
||||
- 관성의 전개식·초기 일관성·정확도 근거는 [formulation-inertia](formulation-inertia.md)가 소유한다. 영속 schema, C++ 저장 구조와 tolerance는 정의하지 않는다.
|
||||
|
||||
## 1. 결론과 적용 범위
|
||||
@@ -117,7 +117,7 @@ T_L=\frac12\sum_i\left(m_i|v_{ui}|^2+2s_i v_{ui}\cdot B_iv_{\phi i}
|
||||
\beta=\frac14(1-\alpha)^2.
|
||||
\]
|
||||
|
||||
기본값은 `alpha=−0.05`, `beta=0.275625`, `gamma=0.55`다. [공개 기본값 근거](research.md#3-reference-입력의-공개-의미)와 [Sandia의 결합계수](https://www.sandia.gov/files/sierra/SM_Users_5_20/main/implicit/integration.html)를 따른다. `alpha=0`은 평균가속도 Newmark다. 이 범위는 일반 유한회전 문제의 무조건 안정성이나 큰 시간간격의 정확도를 보증하지 않는다. 별도 `beta/gamma` 입력을 승인한 의미도 아니다.
|
||||
기본값은 `alpha=−0.05`, `beta=0.275625`, `gamma=0.55`다. [공개 기본값 근거](README.md)와 [Sandia의 결합계수](https://www.sandia.gov/files/sierra/SM_Users_5_20/main/implicit/integration.html)를 따른다. `alpha=0`은 평균가속도 Newmark다. 이 범위는 일반 유한회전 문제의 무조건 안정성이나 큰 시간간격의 정확도를 보증하지 않는다. 별도 `beta/gamma` 입력을 승인한 의미도 아니다.
|
||||
|
||||
**FESA 초기화 후보 계약:** frame 0은 `t=0+`, `q_0=v_0=0`, 전값 `F_0=F*`다. `M_ff(q_0)a_f0=F_f0−f_int,f(q_0)`와 [mass-null 일관성](formulation-inertia.md#4-mass-null과-초기-일관성)을 함께 풀어 `a_0`를 구한다. `A_0=a_0`, `g_0=f_int(q_0)−F_0`를 정의한다. `g_0=0` 또는 `a_0=0`을 임의 대입하지 않는다. 이는 공개 STEP 의미에 맞춘 FESA 계약 제안이며 Abaqus의 숨은 첫 history 생성 절차를 확인한 주장이 아니다.
|
||||
|
||||
@@ -210,6 +210,6 @@ W_{0\to n}=F^{\star T}(q_n-q_0),\quad
|
||||
| 구현 lifecycle | 동일 state tangent, 실패 rollback, time/frame 순서, deterministic assembly와 반복 결과 |
|
||||
| 외부 reference | 지정 원본 101 frames × 9 nodes, frame/instance/node/component의 exact mapping; U blocking / UR warning-only 및 공통 TOLERANCE. V/A/energy correctness는 해당 CSV에 coverage 없음 |
|
||||
|
||||
수식 후보의 [독립 검토](numerical-review.md)는 완료되었으며 표시된 수식에서 새 오류는 발견되지 않았다. 질량 선택은 consistent로 확정되었다. 구현 전 남은 계약은 (1) HHT 확장·초기화의 FESA 채택과 나머지 physics 범위, (2) initial algebraic regularity와 trial 실패 판정의 수치 기준, (3) 공식 output 의미의 공개 범위/I/O다. 이 선택 후 구현할 수 있는 수식 후보이며, 실제 유한회전 shell의 drilling DAE·관성 tangent·q/v/a 시간 수렴은 **구현 후 기능 acceptance에 필요한 검증**이다. 부모 문헌의 nonsingular-mass 조건을 shell mass-null에 자동 적용하지 않되, 모든 shell DAE의 보편적 수렴 증명을 코드 작성의 선행 조건으로 요구하지 않는다. 현재 문서 완료나 제한된 probe를 전체 solver 승인·검증 통과로 표시하지 않는다.
|
||||
수식 후보의 [독립 검토](README.md)는 완료되었으며 표시된 수식에서 새 오류는 발견되지 않았다. 질량 선택은 consistent로 확정되었다. 구현 전 남은 계약은 (1) HHT 확장·초기화의 FESA 채택과 나머지 physics 범위, (2) initial algebraic regularity와 trial 실패 판정의 수치 기준, (3) 공식 output 의미의 공개 범위/I/O다. 이 선택 후 구현할 수 있는 수식 후보이며, 실제 유한회전 shell의 drilling DAE·관성 tangent·q/v/a 시간 수렴은 **구현 후 기능 acceptance에 필요한 검증**이다. 부모 문헌의 nonsingular-mass 조건을 shell mass-null에 자동 적용하지 않되, 모든 shell DAE의 보편적 수렴 증명을 코드 작성의 선행 조건으로 요구하지 않는다. 현재 문서 완료나 제한된 probe를 전체 solver 승인·검증 통과로 표시하지 않는다.
|
||||
|
||||
이번 owner 작업은 기존 정식화·source 대조, 일차 문헌 대조와 수식 유도 및 문서 정적 검토다. [독립 시간정확도 검산](numerical-review-probes.md)은 variable-mass SDOF와 moving-null 예제에서 추천 후보의 약 2차 q/v/physical-a 수렴을 관찰했고 naive 확대의 약 1차 오차를 구별했다. 이는 shell solver 검증이나 일반 drilling DAE 증명을 대신하지 않는다. Build/test·solver/reference 실행은 문서 작업 범위가 아니므로 미실행이다. 독립 검산과 Numerical Review 결과는 해당 owner의 보고서가 소유하며 본 문서가 스스로 승인하지 않는다.
|
||||
이번 owner 작업은 기존 정식화·source 대조, 일차 문헌 대조와 수식 유도 및 문서 정적 검토다. [독립 시간정확도 검산](README.md)은 variable-mass SDOF와 moving-null 예제에서 추천 후보의 약 2차 q/v/physical-a 수렴을 관찰했고 naive 확대의 약 1차 오차를 구별했다. 이는 shell solver 검증이나 일반 drilling DAE 증명을 대신하지 않는다. Build/test·solver/reference 실행은 문서 작업 범위가 아니므로 미실행이다. 독립 검산과 Numerical Review 결과는 해당 owner의 보고서가 소유하며 본 문서가 스스로 승인하지 않는다.
|
||||
|
||||
@@ -81,7 +81,7 @@ C_{ij}^{(1)}B_i^T&C_{ij}^{(2)}B_i^TB_j
|
||||
|
||||
`rho`의 차원은 `mass/length³`, `(C0,C1,C2)` 및 `(m,s,j)`의 차원은 `(mass,mass·length,mass·length²)`다. `M_uu/M_uphi/M_phiphi`는 각각 같은 세 차원, residual translation은 force, rotation은 force·length이다. `v_u,a_u`는 `length/time,length/time²`; `v_phi,a_phi,omega,omega_dot`는 `1/time,1/time²`. 각도 단위는 rad이며 SI를 추정하지 않는다.
|
||||
|
||||
Moments는 현행 [eigen2 mass 계약 M2–M3](../mitc4-shell-feast-eigen2/formulation-mass-stabilization.md#m2-consistent-scalar-moments와-적분)의 `3×3×3` Gauss–Legendre를 기준으로 하며, 그 scalar-moment lumping은 비교식에만 사용한다. 긴 유도는 선행 [mass 계약 M3](../mitc4-shell-feast-eigen/formulation-mass.md#m3-consistent-matrix와-충분한-quadrature)에 있다. 점은 `−sqrt(3/5),0,+sqrt(3/5)`, weight는 `5/9,8/9,5/9`, 순서는 증가하는 `xi→eta→zeta`다. Geometry가 bilinear degenerated shell이고 rho/t가 일정할 때 `Ni Nj z^k J0`의 축별 차수는 최대 4여서 이 moment 적분은 정확하다. `B_i`와 그 도함수는 nodal 값이므로 현재 관성과 tangent도 같은 moment를 사용한다.
|
||||
Moments는 현행 [eigen2 mass 계약 M2–M3](../mitc4-shell-feast-eigen2/formulation-mass-stabilization.md#m2-consistent-scalar-moments와-적분)의 `3×3×3` Gauss–Legendre를 기준으로 하며, 그 scalar-moment lumping은 비교식에만 사용한다. 긴 유도는 선행 [mass 계약 M3](../mitc4-shell-feast-eigen/README.md)에 있다. 점은 `−sqrt(3/5),0,+sqrt(3/5)`, weight는 `5/9,8/9,5/9`, 순서는 증가하는 `xi→eta→zeta`다. Geometry가 bilinear degenerated shell이고 rho/t가 일정할 때 `Ni Nj z^k J0`의 축별 차수는 최대 4여서 이 moment 적분은 정확하다. `B_i`와 그 도함수는 nodal 값이므로 현재 관성과 tangent도 같은 moment를 사용한다.
|
||||
|
||||
모든 27 mass 점에서 finite positive `J0`와 기존 geometry predicate를 확인한다. Current trial도 내력 8점·tying·center·recovery와 추가 inertia 평가점에서 허용 geometry를 만족해야 한다. `abs(J)`, 점 생략, 강제 평면화는 없다. 물리 내력·물리 에너지와 section recovery는 기존 `2×2×2` 적분, drill potential은 기존 element-level 합을 보존한다.
|
||||
|
||||
@@ -196,7 +196,7 @@ v_{n+1}-v_n=h\{-\alpha(1-\gamma)a_{n-1}
|
||||
|
||||
세 coefficient 합은 1, `a_(n−1),a_n,a_(n+1)`의 시간 offset `−1,0,+1`에 대한 first moment는 `alpha+gamma=1/2`다. 여기에는 `Mdot` 잔여항이 없다. Endpoint equation이 nonsingular mass의 smooth `a=f(q,v,t)`를 정의하면 q/v의 2차 일관성과 안정성 검토를 할 수 있고 physical a도 같은 해의 정확도를 따른다. 이는 nonlinear mass의 smooth manufactured verification을 요구하는 근거이며 독립 수치 검토를 대신하지 않는다.
|
||||
|
||||
문헌의 nonsingular mechanical solve 및 regular index-3 조건과 달리 본 shell은 drilling direction에서 singular `M`을 가진다. §4의 `psi_qN` regularity와 constant rank의 실제 지원 범위, redundant full-coordinate 구현에서의 hidden-constraint drift·q/v/a 정확도는 **구현 후 필수 검증 항목**이다. 이 조건으로 reduced smooth dynamics를 설명할 수 있는 범위를 확인하되 모든 shell에 대한 보편 정리를 요구하지 않는다. [독립 검토](numerical-review.md)는 현 수식 후보를 대조했고, [독립 검산](numerical-review-probes.md)의 smooth variable-mass / moving-null 예제는 이를 지지한다. 이 제한된 evidence가 실제 shell/drilling 검증을 대신하지 않으며 유한회전 지원 범위를 축소하는 근거도 아니다.
|
||||
문헌의 nonsingular mechanical solve 및 regular index-3 조건과 달리 본 shell은 drilling direction에서 singular `M`을 가진다. §4의 `psi_qN` regularity와 constant rank의 실제 지원 범위, redundant full-coordinate 구현에서의 hidden-constraint drift·q/v/a 정확도는 **구현 후 필수 검증 항목**이다. 이 조건으로 reduced smooth dynamics를 설명할 수 있는 범위를 확인하되 모든 shell에 대한 보편 정리를 요구하지 않는다. [독립 검토](README.md)는 현 수식 후보를 대조했고, [독립 검산](README.md)의 smooth variable-mass / moving-null 예제는 이를 지지한다. 이 제한된 evidence가 실제 shell/drilling 검증을 대신하지 않으며 유한회전 지원 범위를 축소하는 근거도 아니다.
|
||||
|
||||
### 5.3 다른 후보와 채택하지 않은 이유
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
[주 정식화](formulation.md)의 구현 수식 상세다. 상태와 미결정 항목은 주 문서를 따른다. 아래 전개는 명시한 FESA 운동학에서의 자체 유도이며 Abaqus 내부 절차의 기술이 아니다.
|
||||
|
||||
2026-10-11 승인 [HHT-ADR-012](ADR.md)에 따라 이번 HHT 질량은 nodal lumped `T_L/M_L`다. Consistent 식은 비교와 미분 유도 이력으로 보존한다. 다른 physics·알고리즘·공개 output의 승인은 이 선택과 별개다.
|
||||
2026-10-11 승인 [HHT-ADR-012](README.md)에 따라 이번 HHT 질량은 nodal lumped `T_L/M_L`다. Consistent 식은 비교와 미분 유도 이력으로 보존한다. 다른 physics·알고리즘·공개 output의 승인은 이 선택과 별개다.
|
||||
|
||||
## 1. 회전과 관성의 미분
|
||||
|
||||
@@ -218,7 +218,7 @@ v_{n+1}-v_n=h\{-\alpha(1-\gamma)a_{n-1}
|
||||
|
||||
세 coefficient 합은 1, `a_(n−1),a_n,a_(n+1)`의 시간 offset `−1,0,+1`에 대한 first moment는 `alpha+gamma=1/2`다. 여기에는 `Mdot` 잔여항이 없다. Endpoint equation이 nonsingular mass의 smooth `a=f(q,v,t)`를 정의하면 q/v의 2차 일관성과 안정성 검토를 할 수 있고 physical a도 같은 해의 정확도를 따른다. 이는 nonlinear mass의 smooth manufactured verification을 요구하는 근거이며 독립 수치 검토를 대신하지 않는다.
|
||||
|
||||
문헌의 nonsingular mechanical solve 및 regular index-3 조건과 달리 본 shell은 drilling direction에서 singular `M`을 가진다. §4의 `psi_qN` regularity와 constant rank의 실제 지원 범위, redundant full-coordinate 구현에서의 hidden-constraint drift·q/v/a 정확도는 **구현 후 필수 검증 항목**이다. 이 조건으로 reduced smooth dynamics를 설명할 수 있는 범위를 확인하되 모든 shell에 대한 보편 정리를 요구하지 않는다. [독립 검토](numerical-review.md#numerical-review)는 현 수식 후보를 대조했고, [독립 검산](numerical-review.md#numerical-review-probes)의 smooth variable-mass / moving-null 예제는 이를 지지한다. 이 제한된 evidence가 실제 shell/drilling 검증을 대신하지 않으며 유한회전 지원 범위를 축소하는 근거도 아니다.
|
||||
문헌의 nonsingular mechanical solve 및 regular index-3 조건과 달리 본 shell은 drilling direction에서 singular `M`을 가진다. §4의 `psi_qN` regularity와 constant rank의 실제 지원 범위, redundant full-coordinate 구현에서의 hidden-constraint drift·q/v/a 정확도는 **구현 후 필수 검증 항목**이다. 이 조건으로 reduced smooth dynamics를 설명할 수 있는 범위를 확인하되 모든 shell에 대한 보편 정리를 요구하지 않는다. [독립 검토](README.md)는 현 수식 후보를 대조했고, [독립 검산](README.md)의 smooth variable-mass / moving-null 예제는 이를 지지한다. 이 제한된 evidence가 실제 shell/drilling 검증을 대신하지 않으며 유한회전 지원 범위를 축소하는 근거도 아니다.
|
||||
|
||||
### 5.3 다른 후보와 채택하지 않은 이유
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
상태: 수식 검토 후보·독립 numerical review 및 사용자 결정 대기. Owner: formulation, 2026-10-12. 공식 acceptance·tolerance·tests·production은 변경하지 않았다. 현재 C08b FAIL을 유지한다. 이 문서는 새 수치 tolerance를 정하지 않는다.
|
||||
|
||||
기준은 [현재 시간적분 정식화](../../../docs/hht-implicit-dynamics/formulation.md), [lumped 관성 상세](../../../docs/hht-implicit-dynamics/formulation-inertia.md), [현재 연구](../../../docs/hht-implicit-dynamics/research.md#temporal-remediation-research)다. 별도 [DAE 비교](formulation.md)는 full-coordinate와 reduced 시간적분의 구별을 소유한다. 아래 증명은 **현재 C08b의 원 full-coordinate HHT**에 대한 자체 유도이며 reduced 후보를 자동 포함하지 않는다.
|
||||
기준은 [현재 시간적분 정식화](formulation.md), [lumped 관성 상세](formulation-inertia.md), [현재 연구](README.md)다. 별도 [DAE 비교](formulation.md)는 full-coordinate와 reduced 시간적분의 구별을 소유한다. 아래 증명은 **현재 C08b의 원 full-coordinate HHT**에 대한 자체 유도이며 reduced 후보를 자동 포함하지 않는다.
|
||||
|
||||
## 1. 가정과 검산
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Shell 축소 좌표 HHT 정식화
|
||||
|
||||
상태: `implementation-ready; independent-review-and-shell-verification-pending`, 2026-10-12. 사용자는 실제 shell의 축소 좌표 HHT 구현·검증과 full A의 진단용 filter-combination 의미/schema 구분을 승인했다. 본 문서는 수식 인계이며 구현 또는 수치 통과를 승인하지 않는다. [기존 정식화](formulation.md), [현재 관성](formulation-inertia.md), [실험·실패 보고](temporal-remediation.md)를 전제로 한다. Carried-A의 동일 full-coordinate HHT 산술은 [별도 N7 상세](formulation-carried-a-noise.md)가 소유한다.
|
||||
상태: `implementation-ready; independent-review-and-shell-verification-pending`, 2026-10-12. 사용자는 실제 shell의 축소 좌표 HHT 구현·검증과 full A의 진단용 filter-combination 의미/schema 구분을 승인했다. 본 문서는 수식 인계이며 구현 또는 수치 통과를 승인하지 않는다. [기존 정식화](formulation.md), [현재 관성](formulation-inertia.md), [실험·실패 보고](README.md)를 전제로 한다. Carried-A의 동일 full-coordinate HHT 산술은 [별도 N7 상세](formulation-carried-a-noise.md)가 소유한다.
|
||||
|
||||
## 1. 물리와 좌표
|
||||
|
||||
@@ -53,7 +53,7 @@ Empty null에서는 `Q(p)=L_p p`, `J=L_p`, `Q_t=Q''=Q'''=0`이며 원 full-coord
|
||||
않는다. Primitive의 source-ordered assembly와 안정적인 contraction으로 같은 수식을
|
||||
계산하고, physical mass range solve 및 original/reconstructed frame0의 full residual
|
||||
판정은 유지한다. 이 산술 정정의 원인·실행 범위는
|
||||
[후속 검증 기록](temporal-remediation.md)을 따른다.
|
||||
[후속 검증 기록](README.md)을 따른다.
|
||||
|
||||
\[
|
||||
Ar_{n+1}=(1+\alpha)ap_{n+1}-\alpha ap_n,\quad
|
||||
@@ -178,7 +178,7 @@ scaled norm과 private `delta Ar`를 검사한다. Public
|
||||
고정된다. N7에서도 augmented defect의 모든 auxiliary block을 위 식으로
|
||||
변환해야 한다. `delta p`만 남기거나 hidden defect를 무시하면 해당 noise
|
||||
판정은 유효하지 않다. 독립 소형 Schur 검산과 실제 shell 검증의 범위는
|
||||
[수치 검토](numerical-review-reduced-coordinate.md)에 구분하여 기록한다.
|
||||
[수치 검토](README.md)에 구분하여 기록한다.
|
||||
|
||||
### 5.2 Newton 좌표 증분과 carried Ar의 산술 표현
|
||||
|
||||
@@ -212,15 +212,15 @@ Predictor의 inherited bound와 초기 low를 포함하고 accepted high의 unce
|
||||
다음 step으로 넘긴다. 기존 pp+Ar 또는 plain p addition bound를 이 새 경로의
|
||||
완전한 evidence로 승계하거나 radius를 reset/clamp하지 않는다. 이는 같은 수학
|
||||
recurrence의 산술 표현이며 stored high가 원 N3를 만족하지 못하면 여전히 실패다.
|
||||
독립 exact replay와 적용 한계는 [수치 검토](numerical-review-reduced-coordinate.md#n3-qtrace의-실제-coordinate-low-carry)를 따른다.
|
||||
독립 exact replay와 적용 한계는 [수치 검토](README.md)를 따른다.
|
||||
|
||||
위 high-only 실패 정책은 승인 이전 evidence다. [HHT-ADR-016](ADR.md)에 따라
|
||||
위 high-only 실패 정책은 승인 이전 evidence다. [HHT-ADR-016](README.md)에 따라
|
||||
reduced whole/requested 두 증분은 실제 candidate pair의 increment
|
||||
`(p_high+p_low)-old_accepted_high`를 EFT expansion으로 비교하고, 저장 high의
|
||||
RN-even 일치를 별도로 검사한다. 원래 각 scale와 `1e-12`, zero-scale exact-zero,
|
||||
독립 requested trace와 CA radius는 유지한다. Raw high-only 실패값을 보존하며
|
||||
승인 이전 FAIL을 변경본 PASS로 승계하지 않는다. 상세 범위와 표현 경계 검증은
|
||||
[승인된 제안](c08-n3-coordinate-representation-proposal.md)을 따른다.
|
||||
[승인된 제안](README.md)을 따른다.
|
||||
|
||||
## 6. 필요한 local operator와 시간 항
|
||||
|
||||
@@ -265,6 +265,6 @@ Private interface는 `EvaluateAlgebraicOperators(q,t,F,Fdot,Fddot,v)`, `SolveEmb
|
||||
- C08a all-time full q/v/physical-a 차수와 실제 shell C08b physical high-frequency convergence는 별개다. 축소법의 null-rate 개선만으로 C08b finest fixed-grid 기준 통과를 주장하지 않는다. Original reference 비교·현재 full suite는 implementation owner가 수행한다.
|
||||
- Fixed component graph는 general chart/rank transport, smoothness가 깨진 null cutting BC, nonprincipal branch, nonsmooth F를 지원하지 않는다. 이 경계는 fail-closed 구현과 진단으로 드러나야 하며 tolerance/rank clipping으로 숨기지 않는다.
|
||||
|
||||
Owner의 [Decimal96 polynomial probe](../../.dryforge/hht-remediation-20261012/dae/reduced_operators_probe.py)는 explicit-time coupled 2-constraint graph의 RC-07/09와 RC-10/11을 세 상태에서 계산했다. [결과](../../.dryforge/hht-remediation-20261012/dae/reduced_operators_probe.json), [native0 기록](../../.dryforge/hht-remediation-20261012/dae/reduced_operators_probe-native.json)을 보존한다. Implicit derivatives를 polynomial Q의 직접 미분과 비교하고, 원 평형 밖의 임의 smooth covector에서 exact tangent와 central difference를 비교하여 `delta J` 생략 효과가 nonzero임을 확인했다. 이는 수식 bookkeeping 검산이며 실제 shell 물리 모델·production 실행 또는 독립 numerical review가 아니다.
|
||||
Owner의 [Decimal96 polynomial probe](README.md)는 explicit-time coupled 2-constraint graph의 RC-07/09와 RC-10/11을 세 상태에서 계산했다. [결과](README.md), [native0 기록](README.md)을 보존한다. Implicit derivatives를 polynomial Q의 직접 미분과 비교하고, 원 평형 밖의 임의 smooth covector에서 exact tangent와 central difference를 비교하여 `delta J` 생략 효과가 nonzero임을 확인했다. 이는 수식 bookkeeping 검산이며 실제 shell 물리 모델·production 실행 또는 독립 numerical review가 아니다.
|
||||
|
||||
독립 numerical reviewer가 RC-01–15와 actual implementation operator/BC/branch 대응을 검토해야 한다. Public A/schema details는 I/O owner의 승인 계약을 참조하며 본 수식 문서가 새로운 영속 문자열을 정하지 않는다.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
- 상태: `independently-reviewed-candidate; physics-and-validation-pending`.
|
||||
- Owner: `formulation-agent`, 2026-09-22. 문서 gate 산출물이며 구현 승인이나 수치 검증 통과가 아니다.
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [제품 PRD](../PRD.md), [공통 ADR](../ADR.md#adr-028), [Feature PRD](PRD.md), [요구사항](requirements.md), [연구](research.md#research).
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [제품 PRD](../solver-core/README.md), [공통 ADR](../solver-core/README.md), [Feature PRD](README.md), [요구사항](README.md), [연구](README.md).
|
||||
- 관성의 전개식·초기 일관성·정확도 근거는 [formulation-inertia](formulation-inertia.md)가 소유한다. 영속 schema, C++ 저장 구조와 tolerance는 정의하지 않는다.
|
||||
|
||||
2026-10-12 사용자는 actual shell의 축소 좌표 HHT 구현·검증과 full A의 진단용 filter-combination 의미/schema 구분을 승인했다. 채택 방향의 수식은 [축소 좌표 HHT](formulation-reduced-coordinate.md)가 소유한다. 아래 full-coordinate recurrence는 기존 구현과 비교 이력이며 축소법의 full q/v update 식으로 승계하지 않는다. 승인과 actual solver 검증 완료는 구분한다.
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
**추천 후보는 유한회전 kinetic energy에서 유도한 관성력과, 물리적 가속도 `a` / 알고리즘 가속도 `A`를 분리하는 HHT 확장이다.** 일정 질량의 표준 HHT force weighting으로 정확히 환원한다. 단순히 `M(q)`를 기존 일정 질량 잔차에 대입하는 식은 추천하지 않는다. 이 차이는 [상세 §5](formulation-inertia.md#5-시간-정확도와-대안의-경계)에 유도한다.
|
||||
|
||||
**2026-10-11 사용자가 고유치·HHT lumped mass를 승인했다([HHT-ADR-012](ADR.md)).** HHT는 아래 nodal kinetic measure의 `T_L/M_L`을 채택하고 기존 shell eigen nodal block lumping을 유지한다. `T_C/M_C`는 비교·유도 이력으로 보존한다. 선행 eigen 결과나 동적 reference와의 적합도로 선택한 것이 아니다. 유한회전 지원 범위를 작은 회전으로 축소하지 않는다.
|
||||
**2026-10-11 사용자가 고유치·HHT lumped mass를 승인했다([HHT-ADR-012](README.md)).** HHT는 아래 nodal kinetic measure의 `T_L/M_L`을 채택하고 기존 shell eigen nodal block lumping을 유지한다. `T_C/M_C`는 비교·유도 이력으로 보존한다. 선행 eigen 결과나 동적 reference와의 적합도로 선택한 것이 아니다. 유한회전 지원 범위를 작은 회전으로 축소하지 않는다.
|
||||
|
||||
아래 HHT 확장과 `0+` 초기화는 HHT-ADR-009에서 채택한 계약을 유지한다. 이번 lumped mass 선택은 그 밖의 physics·알고리즘·공개 output 범위를 확대하지 않는다.
|
||||
|
||||
@@ -119,7 +119,7 @@ T_L=\frac12\sum_i\left(m_i|v_{ui}|^2+2s_i v_{ui}\cdot B_iv_{\phi i}
|
||||
\beta=\frac14(1-\alpha)^2.
|
||||
\]
|
||||
|
||||
기본값은 `alpha=−0.05`, `beta=0.275625`, `gamma=0.55`다. [공개 기본값 근거](research.md#research--3-reference-입력의-공개-의미)와 [Sandia의 결합계수](https://www.sandia.gov/files/sierra/SM_Users_5_20/main/implicit/integration.html)를 따른다. `alpha=0`은 평균가속도 Newmark다. 이 범위는 일반 유한회전 문제의 무조건 안정성이나 큰 시간간격의 정확도를 보증하지 않는다. 별도 `beta/gamma` 입력을 승인한 의미도 아니다.
|
||||
기본값은 `alpha=−0.05`, `beta=0.275625`, `gamma=0.55`다. [공개 기본값 근거](README.md)와 [Sandia의 결합계수](https://www.sandia.gov/files/sierra/SM_Users_5_20/main/implicit/integration.html)를 따른다. `alpha=0`은 평균가속도 Newmark다. 이 범위는 일반 유한회전 문제의 무조건 안정성이나 큰 시간간격의 정확도를 보증하지 않는다. 별도 `beta/gamma` 입력을 승인한 의미도 아니다.
|
||||
|
||||
**FESA 초기화 후보 계약:** frame 0은 `t=0+`, `q_0=v_0=0`, 전값 `F_0=F*`다. `M_ff(q_0)a_f0=F_f0−f_int,f(q_0)`와 [mass-null 일관성](formulation-inertia.md#4-mass-null과-초기-일관성)을 함께 풀어 `a_0`를 구한다. `A_0=a_0`, `g_0=f_int(q_0)−F_0`를 정의한다. `g_0=0` 또는 `a_0=0`을 임의 대입하지 않는다. 이는 공개 STEP 의미에 맞춘 FESA 계약 제안이며 Abaqus의 숨은 첫 history 생성 절차를 확인한 주장이 아니다.
|
||||
|
||||
@@ -212,6 +212,6 @@ W_{0\to n}=F^{\star T}(q_n-q_0),\quad
|
||||
| 구현 lifecycle | 동일 state tangent, 실패 rollback, time/frame 순서, deterministic assembly와 반복 결과 |
|
||||
| 외부 reference | 지정 원본 101 frames × 9 nodes, frame/instance/node/component의 exact mapping; U blocking / UR warning-only 및 공통 TOLERANCE. V/A/energy correctness는 해당 CSV에 coverage 없음 |
|
||||
|
||||
수식 후보의 [독립 검토](numerical-review.md#numerical-review)는 완료되었으며 표시된 수식에서 새 오류는 발견되지 않았다. 현재 질량 선택은 HHT-ADR-012의 nodal lumped로 대체되었다. 이후 구현 전 상태를 설명하는 이 문단은 최초 정식화 당시의 기록이며 변경본 검증의 통과를 뜻하지 않는다. 구현 전 남은 계약은 (1) HHT 확장·초기화의 FESA 채택과 나머지 physics 범위, (2) initial algebraic regularity와 trial 실패 판정의 수치 기준, (3) 공식 output 의미의 공개 범위/I/O다. 이 선택 후 구현할 수 있는 수식 후보이며, 실제 유한회전 shell의 drilling DAE·관성 tangent·q/v/a 시간 수렴은 **구현 후 기능 acceptance에 필요한 검증**이다. 부모 문헌의 nonsingular-mass 조건을 shell mass-null에 자동 적용하지 않되, 모든 shell DAE의 보편적 수렴 증명을 코드 작성의 선행 조건으로 요구하지 않는다. 현재 문서 완료나 제한된 probe를 전체 solver 승인·검증 통과로 표시하지 않는다.
|
||||
수식 후보의 [독립 검토](README.md)는 완료되었으며 표시된 수식에서 새 오류는 발견되지 않았다. 현재 질량 선택은 HHT-ADR-012의 nodal lumped로 대체되었다. 이후 구현 전 상태를 설명하는 이 문단은 최초 정식화 당시의 기록이며 변경본 검증의 통과를 뜻하지 않는다. 구현 전 남은 계약은 (1) HHT 확장·초기화의 FESA 채택과 나머지 physics 범위, (2) initial algebraic regularity와 trial 실패 판정의 수치 기준, (3) 공식 output 의미의 공개 범위/I/O다. 이 선택 후 구현할 수 있는 수식 후보이며, 실제 유한회전 shell의 drilling DAE·관성 tangent·q/v/a 시간 수렴은 **구현 후 기능 acceptance에 필요한 검증**이다. 부모 문헌의 nonsingular-mass 조건을 shell mass-null에 자동 적용하지 않되, 모든 shell DAE의 보편적 수렴 증명을 코드 작성의 선행 조건으로 요구하지 않는다. 현재 문서 완료나 제한된 probe를 전체 solver 승인·검증 통과로 표시하지 않는다.
|
||||
|
||||
이번 owner 작업은 기존 정식화·source 대조, 일차 문헌 대조와 수식 유도 및 문서 정적 검토다. [독립 시간정확도 검산](numerical-review.md#numerical-review-probes)은 variable-mass SDOF와 moving-null 예제에서 추천 후보의 약 2차 q/v/physical-a 수렴을 관찰했고 naive 확대의 약 1차 오차를 구별했다. 이는 shell solver 검증이나 일반 drilling DAE 증명을 대신하지 않는다. Build/test·solver/reference 실행은 문서 작업 범위가 아니므로 미실행이다. 독립 검산과 Numerical Review 결과는 해당 owner의 보고서가 소유하며 본 문서가 스스로 승인하지 않는다.
|
||||
이번 owner 작업은 기존 정식화·source 대조, 일차 문헌 대조와 수식 유도 및 문서 정적 검토다. [독립 시간정확도 검산](README.md)은 variable-mass SDOF와 moving-null 예제에서 추천 후보의 약 2차 q/v/physical-a 수렴을 관찰했고 naive 확대의 약 1차 오차를 구별했다. 이는 shell solver 검증이나 일반 drilling DAE 증명을 대신하지 않는다. Build/test·solver/reference 실행은 문서 작업 범위가 아니므로 미실행이다. 독립 검산과 Numerical Review 결과는 해당 owner의 보고서가 소유하며 본 문서가 스스로 승인하지 않는다.
|
||||
|
||||
@@ -12,12 +12,12 @@
|
||||
- 요청 outcome: `pass`; 다음 owner: `numerical-review-agent`.
|
||||
- 상태: 독립 numerical review 요청이며 자기 승인이나 workflow 전이가 아니다.
|
||||
|
||||
필수 입력은 [FEATURED_AGENTS](FEATURED_AGENTS.md), [PRD](PRD.md), [ADR](ADR.md),
|
||||
[requirements](requirements.md#requirements), [requirements evidence](requirements.md#requirements-evidence),
|
||||
[research](research.md#research), [research evidence](research.md#research-evidence)이다.
|
||||
[프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../PRD.md), [ARCHITECTURE](../ARCHITECTURE.md),
|
||||
[공통 ADR](../ADR.md), [TOLERANCE](../TOLERANCE.md), [agent 계약](../SOLVER_AGENT_DESIGN.md),
|
||||
[문서 소유권](../FEATURE_DOCUMENTATION.md)을 적용했다.
|
||||
필수 입력은 [FEATURED_AGENTS](README.md), [PRD](README.md), [ADR](README.md),
|
||||
[requirements](README.md), [requirements evidence](README.md),
|
||||
[research](README.md), [research evidence](README.md)이다.
|
||||
[프로젝트 지침](../../AGENTS.md), [프로젝트 PRD](../solver-core/README.md), [ARCHITECTURE](../solver-core/README.md),
|
||||
[공통 ADR](../solver-core/README.md), [TOLERANCE](../solver-core/README.md), [agent 계약](../solver-core/README.md),
|
||||
[문서 소유권](../solver-core/README.md)을 적용했다.
|
||||
|
||||
<a id="formulation--핵심-계약"></a>
|
||||
### 핵심 계약
|
||||
@@ -94,7 +94,7 @@ scratch 비용은 아직 실제 runtime evidence가 필요하다. Release readin
|
||||
- Input contract revision: `r2`
|
||||
- 기본 보고서: [formulation.md](formulation.md#formulation)
|
||||
|
||||
근거는 [research evidence](research.md#research-evidence)의 `S01`, `S02`, `P01`, `R01`~`R03`이다.
|
||||
근거는 [research evidence](README.md)의 `S01`, `S02`, `P01`, `R01`~`R03`이다.
|
||||
아래 유도는 FESA의 승인된 운동학에 대한 것이며 Abaqus 내부 질량과의 동등성 주장이 아니다.
|
||||
r2는 M4의 numerical scale만 [S1](formulation.md#formulation-stabilization--s1-초기-physical-trace로-고정하는-단일-scale)로
|
||||
대체한다. M1/M2 및 M5~M10의 질량·quadrature·moment·lumping 식은 영향 확인 후 보존했다.
|
||||
@@ -170,7 +170,7 @@ k_d=10^{-3}k_{ref,e}. \tag{M4}
|
||||
drilling map은 유지하고 옛 최소 대각 scale만 사용자 승인 범위에서 대체한다.
|
||||
이 유도 작성 당시 source는 옛 scale을 사용했다. 현재 [source](../../src/fesa/elements/mitc4_shell.cpp)의
|
||||
채택식과 구현 검증은 [eigen2 정식화](../mitc4-shell-feast-eigen2/formulation.md)와
|
||||
[구현 검증](../mitc4-shell-feast-eigen2/implementation-verification.md)을 따른다.
|
||||
[구현 검증](../mitc4-shell-feast-eigen2/README.md)을 따른다.
|
||||
Drilling energy는 수치 stabilization이며 물리 strain/stress가 아니다.
|
||||
`K_e q_e`는 내부 elastic generalized force, `M_L,e q_ddot,e`는 inertia다.
|
||||
최종 반이산식은 `M_L q_ddot + Kq=0`이다. Harmonic ansatz
|
||||
@@ -322,9 +322,9 @@ C^{(0)}=\frac{\rho t A}{36}
|
||||
- Input contract revision: `r2`
|
||||
- 기본 보고서: [formulation.md](formulation.md#formulation)
|
||||
|
||||
승인 근거는 [MFE-ADR-007](ADR.md#mfe-adr-007--기존-stabilization과-좌표-불변성-acceptance-정합),
|
||||
`FEM-REQ-MITC4-EIGEN-002/008/014/024/027` 및 [기존 계약 대체 범위](requirements.md#requirements--r2의-기존-계약-대체-범위)다.
|
||||
[연구 R07](research.md#research-evidence--r07--r2-stabilization-근거와-영향)의 후보에서 아래 하나를 선택한다.
|
||||
승인 근거는 [MFE-ADR-007](README.md),
|
||||
`FEM-REQ-MITC4-EIGEN-002/008/014/024/027` 및 [기존 계약 대체 범위](README.md)다.
|
||||
[연구 R07](README.md)의 후보에서 아래 하나를 선택한다.
|
||||
식 S1~S8은 FESA 계약에 대한 유도이며 외부 solver의 stabilization과 동일하다는 주장이 아니다.
|
||||
|
||||
<a id="formulation-stabilization--s1-초기-physical-trace로-고정하는-단일-scale"></a>
|
||||
@@ -366,7 +366,7 @@ d_r=(K_{20}^0)_{rr}
|
||||
\]
|
||||
|
||||
따라서 S1이 양수인 필요충분조건은 이 여덟 값 중 적어도 하나가 양수인 것이다.
|
||||
이는 [기존 요구 034/036](../linear-static-mitc4-shell/requirements.md)의 유효 physical
|
||||
이는 [기존 요구 034/036](../linear-static-mitc4-shell/README.md)의 유효 physical
|
||||
rotation inventory 조건과 같다. 개별 `R_i`가 모두 PD여야 한다는 새 조건은 없다.
|
||||
Exact zero diagonal/block도 합에 포함하므로 기존 허용 geometry를 선별해 줄이지 않는다.
|
||||
유효 geometry는 noncollinear midsurface를 가지며, 기존 physical kernel의 non-rigid
|
||||
@@ -514,7 +514,7 @@ S4/E3 projection은 이 nonlinear Hessian·preload·prestressed eigen으로 확
|
||||
<a id="formulation-stabilization--s6-nr-mfe-001의-새-algebraic-target과-정적-대응"></a>
|
||||
### S6. NR-MFE-001의 새 algebraic target과 정적 대응
|
||||
|
||||
[NR 소유 반례](numerical-review.md#numerical-review-evidence--nr-mfe-001-직접-계산-반례)의 독립 적분 block을
|
||||
[NR 소유 반례](README.md)의 독립 적분 block을
|
||||
입력 근거로 사용한다. 그 geometry·source BC·material 및 옛 실패 이력은 보존한다.
|
||||
각 corner에서 `R_aa=49/12`, `R_bb=23/6`, `R_ab=±1/8`이므로
|
||||
|
||||
@@ -560,7 +560,7 @@ exact first/second directional derivatives·물리 선형극한·정적 평형/r
|
||||
|
||||
실행해야 하는 기존 `shell`, `shellNL`, `shellNL-meshfine` 및 linear-limit closure portfolio와
|
||||
후속 meshfine-02 이력의 구분, source identity, U blocking/UR warning-only, reaction review-only는
|
||||
[requirements evidence의 단일 portfolio](requirements.md#requirements-evidence--r2-승인-범위와-정적-재검증)를 따른다.
|
||||
[requirements evidence의 단일 portfolio](README.md)를 따른다.
|
||||
새 eigen 외부 비교는 지정 input/TXT의 10개 Value만 사용한다. Static reference를 eigen
|
||||
mode-shape gate로 추가하거나 기존 static 회귀를 Value-only를 이유로 삭제하지 않는다.
|
||||
Numerical threshold·필수 case 구체화·FEAST control/budget/seed와 독립 반례 해소 판정은 NR,
|
||||
@@ -575,7 +575,7 @@ TDD/runtime/reference 실행은 Implementation, 독립 물리 판단은 Physics
|
||||
- Input contract revision: `r2`
|
||||
- 기본 보고서: [formulation.md](formulation.md#formulation)
|
||||
|
||||
[질량 유도 M1~M10](formulation.md#formulation-mass), [research evidence](research.md#research-evidence)의
|
||||
[질량 유도 M1~M10](formulation.md#formulation-mass), [research evidence](README.md)의
|
||||
`S03`~`S08`, `P01`, `R03/R04/R07`를 적용한다. 아래 reduction은
|
||||
[r2 scale](formulation.md#formulation-stabilization)로 개선된 원형상 stabilized stiffness와
|
||||
**derived lumped mass**의 pencil에 정확히 대응한다. 기존 nonlinear trial tangent와는 별개다.
|
||||
@@ -876,7 +876,7 @@ Modal residual의 constrained 성분을 static reaction으로 출력하지 않
|
||||
[개선된 scale·공변성 S1~S8](formulation.md#formulation-stabilization)의
|
||||
기호를 사용한다. 이 문서는 측정량과 zero branch를 정의하며 수치 acceptance 값과
|
||||
필수 benchmark 선정은 Numerical Review가 독립 검토하여 고정한다.
|
||||
외부 기준의 수치는 [TOLERANCE](../TOLERANCE.md)를 그대로 적용한다.
|
||||
외부 기준의 수치는 [TOLERANCE](../solver-core/README.md)를 그대로 적용한다.
|
||||
|
||||
<a id="formulation-verification--v1-공통-scale과-zero-branch"></a>
|
||||
### V1. 공통 scale과 zero branch
|
||||
@@ -1070,7 +1070,7 @@ Case의 구체적 목록·숫자는 NR가 정하고 Planning이 tests와 TDD ste
|
||||
Frequency 재계산, mode shape correlation이나 다른 mass variant의 더 가까운 결과 선택으로
|
||||
이를 대체하지 않는다. Mode/frame은 NR/I/O가 common same-frame family 규칙에 맞춰
|
||||
정의하고 missing/extra/duplicate/nonfinite를 tolerance 전에 거부한다.
|
||||
[r1 reference-model](reference-model.md)의 10개 singleton family·모두 blocking 계약과
|
||||
[r1 reference-model](README.md)의 10개 singleton family·모두 blocking 계약과
|
||||
공통 정책에 따른 실효 mode별 1%는 보존할 근거다. Formulation이 이를 재선택하지 않으며
|
||||
r2 영향 재확인은 NR 소유다. V1~V6의 내부 수치 기준은 아직 NR에서 최종 고정하지 않았다.
|
||||
Schema 경로/저장 field/public diagnostic 이름은 I/O owner의 계약이다.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
Feature `mitc4-shell-feast-eigen2`, formulation r1. [기본 보고서](formulation.md)와
|
||||
[질량·stabilization](formulation-mass-stabilization.md)의 기호를 사용한다.
|
||||
Intel evidence는 [research R04/G01/G02](research.md#research-evidence)에 따른다.
|
||||
Intel evidence는 [research R04/G01/G02](README.md)에 따른다.
|
||||
|
||||
## E1. 실제 BC를 먼저 적용한다
|
||||
|
||||
@@ -129,7 +129,7 @@ K와 identity의 pattern이 같을 필요는 없다. Vendor types와 workspace
|
||||
매 call마다 `feastinit` 후 명시 controls를 채운다. C-index `fpm[49]=1`은 CSR count를
|
||||
m0로 반환하고 flag가 0으로 reset된다. Count output m0·solve requested m0·allocated capacity를
|
||||
분리한다. CSR/SPD 검사를 켜고 subspace-only를 끈다.
|
||||
[MFE2-ADR-011](ADR.md#mfe2-adr-011--feast-residual-stopping과-s3-후속-분리)의 사용자 승인으로
|
||||
[MFE2-ADR-011](README.md)의 사용자 승인으로
|
||||
`fpm[5]=0` residual stopping을 사용한다. 내부 목표 `1e-12`와 전체 c개 독립 residual
|
||||
기준 `1e-10`을 유지하며 zero/mixed-zero mode에도 실제 backend 회귀를 수행한다. `epsout`은
|
||||
`|trace_i-trace_previous|/max(|emin|,|emax|)`이며 eigenpair 상대오차가 아니다.
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# MITC4 질량·공변 stabilization·FEAST 정식화
|
||||
|
||||
- Feature: `mitc4-shell-feast-eigen2`; Owner: `formulation-agent`; 정식화 revision: `r1`.
|
||||
- 입력: [requirements r1](requirements.md#requirements), [근거](requirements.md#requirements-evidence), [Feature ADR](ADR.md).
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [PRD](../PRD.md), [ADR-028](../ADR.md#adr-028), [ARCHITECTURE](../ARCHITECTURE.md).
|
||||
- 입력: [requirements r1](README.md), [근거](README.md), [Feature ADR](README.md).
|
||||
- 기준: [프로젝트 지침](../../AGENTS.md), [PRD](../solver-core/README.md), [ADR-028](../solver-core/README.md), [ARCHITECTURE](../solver-core/README.md).
|
||||
- 상태: 독립 numerical review에 인계하는 수학 계약. 구현·runtime·reference 통과 선언이 아니다.
|
||||
|
||||
## 선택과 적용 범위
|
||||
@@ -37,10 +37,10 @@ Numerical scale은 초기 physical rotary diagonal 8개 trace 평균의 `10^-3`
|
||||
| [verification V1–V5](../mitc4-shell-feast-eigen/formulation.md#formulation-verification) | 같은 단위의 residual/Gram·energy·covariance·density 측정량 | 기존 tolerance 값·test 수·gate·실행 portfolio |
|
||||
|
||||
질량 및 trace 평균은 FESA 운동학에서 유도한 선택이다. 외부 source가 이 lumping/scale을
|
||||
지정한다고 주장하지 않는다. 최신 API 근거와 검토 한계는 [research](research.md#research)와
|
||||
[research evidence](research.md#research-evidence)에 연결한다. FEAST count의 `fpm[49]=1`과
|
||||
residual stopping의 `fpm[5]=0`은 C-index다. 종료 제어는 [ADR-011](ADR.md#mfe2-adr-011--feast-residual-stopping과-s3-후속-분리)과
|
||||
[controls C5](numerical-review-controls.md#c5-fixed-lower-enclosure와-bounded-upper-search)의 승인된 변경을 적용한다.
|
||||
지정한다고 주장하지 않는다. 최신 API 근거와 검토 한계는 [research](README.md)와
|
||||
[research evidence](README.md)에 연결한다. FEAST count의 `fpm[49]=1`과
|
||||
residual stopping의 `fpm[5]=0`은 C-index다. 종료 제어는 [ADR-011](README.md)과
|
||||
[controls C5](README.md)의 승인된 변경을 적용한다.
|
||||
빈 count interval의 `info=0,m0=0`과 작은
|
||||
scratch 허용은 보장된 vendor 계약으로 채택하지 않는다.
|
||||
|
||||
@@ -53,13 +53,13 @@ scratch 허용은 보장된 vendor 계약으로 채택하지 않는다.
|
||||
같은 물리 partial BC 및 admissible tangent moment를 사용하는 정적 대응도 검사한다.
|
||||
Nonlinear scale immutability·objective energy·일관 residual/Hessian·선형극한을 재검증한다.
|
||||
|
||||
외부 portfolio는 오직 새 [requirements의 지정 범위](requirements.md#requirements)를 따른다.
|
||||
외부 portfolio는 오직 새 [requirements의 지정 범위](README.md)를 따른다.
|
||||
`shell`, `shellNL`, `shellNL-eigen-meshfine`의 retained 의무와 synthetic 내부 검사를 유지한다.
|
||||
제외된 네 예제는 원본·복사본·cache·과거 결과로 재사용하지 않는다. Eigen 외부 비교는
|
||||
원본 TXT의 `Value`이며 [공통 tolerance](../TOLERANCE.md)를 변경하지 않는다.
|
||||
원본 TXT의 `Value`이며 [공통 tolerance](../solver-core/README.md)를 변경하지 않는다.
|
||||
|
||||
내부 수치 기준, FEAST control·endpoint separation·bounded call budget·seed의 독립 판정은
|
||||
[numerical review](numerical-review.md)와 [controls](numerical-review-controls.md)에 기록했다.
|
||||
입력 allowlist, result schema·identity 및 실패 진단은 [I/O](io.md)를 따른다.
|
||||
실제 설치 runtime·reference 결과와 미실행 한계는 [구현 검증](implementation-verification.md),
|
||||
S3 후속 범위는 [현재 PRD](PRD.md)에 기록했다. 이 수학 계약 자체를 실행 통과로 해석하지 않는다.
|
||||
[numerical review](README.md)와 [controls](README.md)에 기록했다.
|
||||
입력 allowlist, result schema·identity 및 실패 진단은 [I/O](README.md)를 따른다.
|
||||
실제 설치 runtime·reference 결과와 미실행 한계는 [구현 검증](README.md),
|
||||
S3 후속 범위는 [현재 PRD](README.md)에 기록했다. 이 수학 계약 자체를 실행 통과로 해석하지 않는다.
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# Shell 과도 열전달 정식화
|
||||
|
||||
- 상태: **2026-09-29 승인된 물리·방법을 반영한 구현용 정식화**.
|
||||
독립 검토의 판정과 검증 기준은 [numerical-review](numerical-review.md)를 따른다.
|
||||
독립 검토의 판정과 검증 기준은 [numerical-review](README.md)를 따른다.
|
||||
- 담당 범위: `FEM-REQ-SHELL-THERMAL-001`–`018`의 수식·물리 의미와 검증 함의.
|
||||
- 기준: [Feature PRD](PRD.md), [Feature ADR](ADR.md), [프로젝트 지침](../../AGENTS.md),
|
||||
[프로젝트 PRD](../PRD.md), [공통 ADR](../ADR.md#adr-028), [ARCHITECTURE](../ARCHITECTURE.md).
|
||||
- 기준: [Feature PRD](README.md), [Feature ADR](README.md), [프로젝트 지침](../../AGENTS.md),
|
||||
[프로젝트 PRD](../solver-core/README.md), [공통 ADR](../solver-core/README.md), [ARCHITECTURE](../solver-core/README.md).
|
||||
- 아래 수식은 승인된 FESA 모델이다. Abaqus 내부 알고리즘과 동등하다는 주장이 아니다.
|
||||
이전 Proposed 보고서의 검산은 제한된 과거 evidence이며 현재 solver 검증을 대신하지 않는다.
|
||||
|
||||
@@ -152,7 +152,7 @@ bound로 판정한다. 선분 밖임이 확정되면 제외하고, 포함이 확
|
||||
endpoint를 공유하면서 부분적으로 겹치는 선분도 포함하지만 접속을 새로 생성하지 않는다.
|
||||
모든 mesh node와 모든 edge 사이의 전역 좌표 scan은 수행하지 않는다. 후보 없는 서로 다른
|
||||
component/instance의 우연 접촉과 같은 component 내 멀리 떨어진 부분의 좌표 접촉은 검사
|
||||
대상이 아니다. 이는 [PRD STH-C01](PRD.md#sth-c01--모델-geometry와-자유도)의 source 접속
|
||||
대상이 아니다. 이는 [PRD STH-C01](README.md)의 source 접속
|
||||
검증이며, patch 내부 injectivity 검사나 미지원 global contact 검출을 대신하지 않는다.
|
||||
|
||||
## 3. 20 DOF와 온도 보간
|
||||
@@ -553,7 +553,7 @@ component/좌표계로 구별한다. 공식 flux는 global Cartesian `q`이며
|
||||
## 10. 검증 함의와 독립 검토 인계
|
||||
|
||||
다음은 실행 결과가 아닌 검증 설계다. 수치 기준은 독립 reviewer가 정하며
|
||||
외부 비교는 [공통 TOLERANCE](../TOLERANCE.md)를 그대로 따른다.
|
||||
외부 비교는 [공통 TOLERANCE](../solver-core/README.md)를 그대로 따른다.
|
||||
|
||||
| 검증 | 관찰할 내용 |
|
||||
| --- | --- |
|
||||
@@ -635,7 +635,7 @@ Reviewer는 production kernel 착수 전에 roundoff/residual/energy 판정의
|
||||
mesh·시간열·series 절단·수렴차수 구간·warped quadrature 진단을 독립적으로 고정한다.
|
||||
본 문서는 임의 tolerance 상수를 만들거나 공통 외부 5%를 내부 검증에 전용하지 않는다.
|
||||
필수 NT11 비교는 `Step-1/t37/Part-1-1/source node/DOF11`의 729개 원본 row mapping과
|
||||
[공통 TOLERANCE](../TOLERANCE.md)를 유지한다. 실패는 조사·상위 보고 대상이며
|
||||
[공통 TOLERANCE](../solver-core/README.md)를 유지한다. 실패는 조사·상위 보고 대상이며
|
||||
reference 보정·음수 clamp·방법 변경·tolerance 완화의 근거가 아니다.
|
||||
|
||||
물리·방법의 과거 미결정은 이번 승인 계약으로 대체되었다. 남은 독립 작업은 위 수치
|
||||
|
||||
Reference in New Issue
Block a user