docs(hex8): record mean-volume revalidation results and limits

This commit is contained in:
KOKO\Mimi
2026-10-11 04:20:43 +09:00
parent 18b36c1c22
commit ede137c6b4
10 changed files with 329 additions and 24 deletions
+27 -8
View File
@@ -448,16 +448,35 @@ HHT 식·기준 consistent M·입력·고정 schedule·100회·Si/exact-zero·
외부 tolerance는 유지한다. 아래 구현·검증 checklist는 이 승인만으로 완료되지 않는다.
- [x] 승인된 체적 평균 수식·입출력·numeric controls·원본 mapping 정리 및 독립 numerical review 완료
- [ ] 체적 평균 Hex8 K0/consistent M/비선형 f/Kmat/Kgeo/Kt·형상·복구 kernel 검증
- [x] 체적 평균 Hex8 K0/consistent M/비선형 f/Kmat/Kgeo/Kt·형상·복구 kernel 검증
- [x] Solid Domain/parser/3N DOF/ordered assembly/amplitude 검증
- [ ] 체적 평균 선형·비선형 정적 accepted state/반력/잔차 검증
- [ ] 체적 평균 generalized consistent-mass frequency·최저 N·original-pencil 검증
- [ ] 체적 평균 선형·비선형 HHT u/v/physical a·시간수렴·수지 내부 검증
- [ ] 체적 평균 공식 HDF5/CLI/self-check/실패 final 보존 검증
- [ ] 정적2·동적2 원본 필수 family 비교 PASS
- [x] 체적 평균 선형·비선형 정적 accepted state/반력/잔차 내부 검증
- [x] 체적 평균 generalized consistent-mass frequency·최저 N·original-pencil 내부 검증
- [x] 체적 평균 선형·비선형 HHT u/v/physical a·시간수렴·수지 내부 검증
- [x] 체적 평균 공식 HDF5/CLI/self-check/실패 final 보존 내부 검증
- [x] 정적2·동적2 원본 필수 family 비교 PASS
- [ ] 사용자 원본 최저10 modal Value 제공 및 필수 비교 PASS
- [ ] 최신 전체 MSVC Debug build/CTest·기존 baseline 대조 완료
- [ ] Independent numerical/physics blocker0·범위/한계/evidence 기록 완료
- [x] 최신 전체 MSVC Debug build/CTest·기존 baseline 대조 완료
- [x] Independent numerical/physics blocker0·범위/한계/evidence 기록 완료
체적 평균 구현은 frozen `b2abd739`를 root `18b36c1`로 연결했다. 작성자 관련150/150,
시간수렴3 GTests/4물리 사례 및 최종 실제 재컴파일3/3은 native build/CTest0/0이다.
모든 u/v/physical a 관측 차수는1.98022 이상으로 기존1.8 기준을 충족했다. 독립 numerical와
작은 사례 physics 검토는 해당 범위의 bounded PASS다. Root 연결 후 kernel·frequency·
공식 출력 관련65/65도 native build/CTest0/0이다. 새로운 다섯 원본 CLI는 모두 native0으로
자연 종료했다. 제외 없는 전체787 CTest도 자연 종료했으며 native8,
784 PASS·기존 Shell FAIL2·SKIP1이다. 기존617개를 보존했고 추가170개는 모두 PASS다.
새 예외는0이며 전체 green은 아니다. 두 기존 실패의 metric body는 baseline과 동일하고,
SKIP은 보존된 상세 출력이 없어 이름·상태의 동일성만 확인했다.
새 선형·비선형 정적 원본의 U1326/RF51/S14400은 각각 필수 비교 native0으로 PASS했다.
새 고유치 공식 readback은 precheck PASS이나 modal Value 부재로 비교 native2·NOT RUN이다.
새 두 동적 원본도 각각101개 U family 비교 native0·실패 행0개다. 두 동적 원본의 수치·물리
독립 검토도 실제101 endpoint에 한정한 bounded PASS다. 전체 Python은 기존 import의
collection5 오류/native2·실행0개다. Modal 비교 부재와 기존 회귀 예외는 이 통과로 없어지지 않는다.
공간수렴 증거는 실제 두 축을 세분화한 지정 굽힘장 에너지다. 평형 cantilever는 길이
방향만 세분화하고 두께/폭은2요소로 고정한 tip 추세이며 평형해의 공간차수 증거가 아니다.
정규 brick rank와 검증한 warped 사례를 모든 admissible warped cell로 확대하지 않는다.
Local kernel과 입력·3N mapping은 독립 검토 및 연결 후 관련180개 검사를 통과했다.
정적 구현 `a34466f`의 관련98개와 고유치 구현 `0e07b4d`의 관련48개 검사가 각각
+6 -1
View File
@@ -3,7 +3,12 @@
개인 연구용 FESA에 8절점 육면체의 선형 강성, Total Lagrangian–StVK 기하비선형
내력·접선 강성과 기준 형상의 consistent 질량을 추가한다. 요소당 병진 자유도는24개이며
강성·질량·복구에2×2×2 reference 적분점을 사용한다. 2026-10-10 승인으로 deviatoric 항과
요소 평균 infinitesimal/Green trace 체적 energy를 사용한다. 변경본 구현·재검증은 진행 중이다.
요소 평균 infinitesimal/Green trace 체적 energy를 사용한다. 변경본 구현·내부 검증은 완료했고
두 정적 원본의 U/RF/S 및 두 동적 원본의101-frame U 필수 비교도 PASS다.
실제 정적·동적 원본의 독립 수치·물리 검토도 bounded PASS다. 전체787 CTest는
784 PASS·기존 Shell FAIL2·SKIP1(native8)으로 종료했고 추가170개는 모두 PASS다.
전체 green은 아니며 modal Value 원본은 대기 중이다. 전체 Python도 기존 collection5
오류로 native2·실행0개다.
선형/비선형 정적, consistent-mass frequency,
선형/비선형 HHT 동해석을 typed state에서 공식 HDF5와 CLI까지 연결한다.
+2 -2
View File
@@ -48,8 +48,8 @@ repository-conforming 이름 조정은 허용하며 physics/schema 수정은 아
- `Hex8Element`는 기존 Element interface의 linear `ComputeStiffness`와 `Recover`를 제공한다.
Create 입력은 internal element index, source/local layout, 기준 좌표8×3, 기존 isotropic
elastic material와 optional density다. 생성에 아직 없는 Solid Domain/section 타입을 요구하지
않아 T2/T3를 분리한다. Layout은8 source-order nodes×UX/UY/UZ다.
elastic material와 optional density다. 생성은 Solid Domain/section 정의 대신 이 local
입력에 의존한다. Layout은8 source-order nodes×UX/UY/UZ다.
- Explicit `EvaluateLinear(u)`/`EvaluateNonlinear(u)`는 immutable element의 local u[24]를 받아
f[24], Kmat/Kgeo/Kt[24,24], strain energy와8 typed integration-point rows를 반환한다.
Linear은 새 체적 평균 energy의 zero Hessian material=K0/geo=0,
+16
View File
@@ -291,3 +291,19 @@ energy/Hessian 후보가 차이를 설명하는 근거다. Stress만 평균화
source/result의 hardlink·symlink alias도 보호하고, 잘못된 HDF rank는 failed precheck로
기록해야 한다. Source path는 writer와 같은 lexical 정규화를 사용하며 물리적 symlink
대상으로 identity를 바꾸지 않는다. 이 세 문제는 안전한 behavior RED와 최종124개 검사로 확인했다.
## 체적 평균 energy의 독립 oracle와 실패 해석
첫 weighted warped fixture는 weighted/unweighted 평균의 차이가 거의 없어 판별력이
부족했다. 형상과 비균일 변위를 수정한 oracle는 이전 pointwise 구현에서7/7 실패하고
새 식에서 통과했다. 독립 검증 fixture 자체의 실패를 production 수식 오류로 단정하지
않고, 실제 weighted 평균과 cross-GP Hessian을 판별하는지 먼저 확인한다.
중앙 차분 step sweep에서는 가장 작은 step에서 오차가 계속 줄어드는 경우도 있다.
최솟값이 반드시 중간 step에 있어야 한다는 가정은 정확한 접선을 실패시킬 수 있다.
Analytical energy 미분과 차분 오차·절단항을 함께 확인한다. 이전 실패 로그와 수정 후
150개 검사 및 시간수렴 기록은 [verification](verification.md)에 구분해 보존했다.
고정 두께1요소의 길이 refinement는 mean-bulk discretization의 continuum bias를
없애지 않는다. 두 축 지정 굽힘장 energy의 수렴과 고정 두께/폭 cantilever tip 추세를
서로 다른 증거로 기록한다. 두 결과를 평형해의 동일 공간차수 증거로 합치지 않는다.
@@ -10,7 +10,10 @@
정적·고유치와 기존 계산은 Float64다. 사용자 승인 [정밀도 변경안](precision-proposal.md)에 따라
Solid HHT의 내부 물리 상태와 힘·rates·수지·gate 계산은 normalized high+low를 사용한다.
Float64 sparse backend와 반올림 출력은 유지하며, 전체 상태 gate를 rounded 출력만으로
재계산한 gate PASS로 표현하지 않는다. 구현 검증은 아직 진행 중이다.
재계산한 gate PASS로 표현하지 않는다. 변경본 내부 검증과 정적2·동적2 원본 비교는
완료했다. 전체787 회귀 실행·baseline 대조도 완료했으나 기존 FAIL2·SKIP1을 유지한다.
Modal 비교는 원본 대기다. 실제 완료 범위는
[PRD checklist](PRD.md#현재-checklist)를 따른다.
Whole-cell 인증은 outward interval coefficient bounds와
subdivision이며 estimate-only positive 검사와 abs(det J)를 허용하지 않는다.
Depth default10, 처리한 cell budget default65536이며 uncertain 시 fail-closed다. 이 값은
@@ -175,3 +175,70 @@ evidence이며 승인된 변경본의 numerical PASS가 아니다.
실제 rounded cache의 affine completeness와 partition sum을 혼동하지 않는다.
Nonuniform trace·warped weighted mean·node0 방향 미분·LINE/TL zero Hessian·low-only bulk
응답·material 경계·새 spatial/temporal evidence는 변경 구현에서 검증해야 한다.
## 체적 평균 구현의 독립 검토
Frozen `b2abd739`의8개 변경 source/current snapshot/commit blob과141개 종료된 raw
artifact의 hash·size를 독립 대조했다. 두 pass의 weighted trace, node0 상대변위와
동일 Ghat derivative, cross-GP bulk Hessian, `S*` 기하항 및 actual strain의 Cauchy
복구가 승인된 energy와 일치한다. Paired 계산은 같은 연산에서 low 성분을 보존하고
직접 F64 mu/kappa의 동일 lift를 사용한다. LINE zero cache도 같은 Hessian이다.
이전 식에서 실패하는 corrected7-oracle RED와 변경본150/150, 시간수렴4물리 사례,
최종 실제 재컴파일3/3의 native 기록 및 소스 전후 SHA를 확인했다. 최소 u/v/physical a
관측 차수1.98022가 기존 기준1.8을 충족한다. 판정은 이 구현·내부 evidence에 한정한
bounded PASS, 잔여 actionable finding0이다. Root 연결 `18b36c1`의 실제 재컴파일
관련65/65도 native0이다. 전체 CTest·원본 비교의 실제 종료 결과는 [verification](verification.md)을 따른다.
공간수렴은 두 축을 실제로 세분화한 지정 굽힘장의 energy다. 고정 두께/폭2요소의
평형 cantilever 길이 refinement는 tip 추세와 locking 관찰이며 평형해 공간차수를
입증하지 않는다. Brick rank18과 검증된 warped cell은 모든 admissible warped cell의
영공간 보증이 아니다. 원본 modal Value 부재나 기존 전체 회귀 예외는 이 bounded
검토로 없어지지 않는다. 원시 자료는 작성자 worktree의
`.harness/hex8-evidence/mean-volume/frozen-b2abd73/`와 관련 종료 evidence에 있다.
새로 종료한 실제 정적·고유치 실행의 별도 evidence audit에서도 finding0이다. Imported
8개 source가 frozen commit과 같고 root kernel object가 실제 재컴파일됐으며 frozen/current
실행 파일 SHA도 동일하다. 원본13개 및66개 소비 artifact의 전후 SHA를 확인했다.
HDF 실제 배열과 원본 CSV로 정적 보고서의 모든 행·near-zero/relative 분기·오차·RMS를
다시 계산했으며 U1326/RF51/S14400의 실패0과 양쪽 비교 native0을 확인했다. 전체
RF442행의 identity·finite·free RF exact0도 대조했다. Frequency missing Value의
native2·NOT RUN, root65 검사 native0, 새 전체 Python collection5/native2를 정확히
구분했다. 자료는 `.harness/hex8-evidence/mean-volume/final-evidence-audit-static-frequency/`다.
이 evidence audit은 당시 미종료였던 동적·전체787 검사의 판정이 아니며, 이후 종료 감사와 구분한다.
이후 자연 종료한 새 선형 동적 원본도 별도 read-only evidence audit에서 bounded PASS,
finding0이다. CLI/comparator native0, HDF SHA와 원본13 SHA, frozen executable 및31개
소비 artifact의 전후 SHA를 확인했다. 원본44642개 node row, HDF101×442×3 및 비교
보고서133926개 scalar가 정확히 대응하며 누락·중복·비유한 값은0이다. Increment0–100,
CSV decimal time와 HDF `double(n)*h`를 구분해 확인하고 모든 행의 오차·분기·기준·RMS를
재계산했다. 초기 exact-zero family의 relative RMS null은 실패나 누락이 아니다.
101개 family PASS·실패 행0과 [verification](verification.md)의 수치가 일치한다.
자료는 `.harness/hex8-evidence/mean-volume/final-evidence-audit-dynlinear/`다.
비선형 동적·전체787 및 동적 물리 수지는 이 수치 비교 감사 밖이다.
비선형 동적 원본의 종료 evidence도 별도 read-only audit에서 bounded PASS,
finding0이다. 45개 소비 artifact의 전후 SHA와 원본13개 보존, CLI/comparator native0을
확인했다. 모든101 frame·133926 scalar의 시간·identity·finite·오차 분기·기준·RMS를
독립 재계산했으며 누락·중복·실패 행은0이다. 최대 상대 RMS는
0.003133373067174733, 최대 절대 오차는1.3397499223151595e-5이며 초기 exact-zero의
relative RMS null도 확인했다. 다섯 원본 CLI와 queue wrapper의 native0 및 source 전후
동일성을 확인했다. 자료는
`.harness/hex8-evidence/mean-volume/final-evidence-audit-dynnonlinear/`다.
전체787의 종료 판정과 비선형 동적 물리 수지는 이 감사에 포함되지 않는다.
## 변경본 전체 회귀 종료의 독립 감사
실제 unfiltered 전체787 CTest의 종료 raw/native·discovery 및 baseline617개를 별도
read-only 감사했다. configure/build/discovery는 native0, CTest는 native8이며
784 PASS·기존 Shell FAIL2·C04a SKIP1이다. 이름·기존 상대순서·각 discovery와 실행
ordinal·status를 대조했고 추가170개 모두 PASS·뜻밖 예외0을 확인했다. 두 실패의
전체 출력은 elapsed-ms 표기만 제외해 정확히 같아 실패 내용과 metric도 동일하다.
SKIP 상세 출력은 baseline에 없어 NOT VERIFIED다. 소비22개 artifact SHA를 전후
대조했고 실제 세 테스트 실행 파일의 중간 관측·종료 SHA도 동일하다. 이를 실행 전
binary hash라고 표현하지 않는다. 감사 native0·finding0, bounded evidence PASS다.
원시 자료는 `.harness/hex8-evidence/mean-volume/final-evidence-audit-full/`에 있다.
판정은 종료 evidence의 일관성·새 회귀 없음에 한정하며 전체 green·release 또는
미제공 modal Value의 통과 판정이 아니다. 실제 원본의 독립 물리 수지 범위는
[physics review](physics-review.md)를 따른다.
@@ -105,3 +105,91 @@ strain 최대차1.51e-18이다. Energy178.762694318679와0.5F·u178.762694317263
항 때문에 이전 pointwise continuum에 대한 bias가 남을 수 있다. 그 discrete limit 관찰을
실제 두께/길이 공간수렴으로 보고하거나 기준을 새 limit로 바꿔 continuum PASS라 하지 않는다.
선형 원본에 맞춘 별도 후보와 수식 검토는 변경본 물리 검증을 대신하지 않는다.
## 체적 평균 변경본의 실제 정적 원본 물리 대조
Root `18b36c1`의 새 공식 HDF5를 별도 산술로 재구성했다. Solver 재실행·추가 solve
없이 원본 geometry·하중·BC와8개 reference 가중치에서 동일 mean energy의 구성식,
element force·moment 및 전역 full residual을 계산했다. 두 원본 비교의 전 row PASS는
[verification](verification.md)에 있으며 여기의 물리 판정 범위와 구분한다.
선형300개 요소의 실제 strain·stress 최대차는1.23937e-18/1.91798e-7이고 구속 RF
최대차1.746e-10 force다. Native energy186.35946178395656과 독립 energy의 상대차는
6.10e-16, `0.5F·u`와의 상대차는8.408e-13이다. 자유 잔차 최대2.604e-7 force를
포함한 전역 ledger의 force/reference moment 잔여는7.493e-11/1.352e-10 이하다.
Local force/moment의 uncancelled 비율은2.45e-16/4.24e-16 이하다. 실제 trace의
요소 내 분포를 보존하면서 동일 요소 hydro stress는 평균 trace 식과 일치한다.
비선형10개 frame의300개 요소를 모두 재구성했다. Actual Green·Cauchy 최대차는
9.17972e-20/1.33878e-8 stress-unit이고 native/독립 energy의 상대차는9.42e-16
이하다. 최종 native energy186.3185317087937이다. PK2 hydro 항은 요소별 평균이며
actual Cauchy hydro는 F/J mapping 때문에 요소 내 변한다. Actual Green을 평균
strain으로 치환하지 않았다. Local force/current moment 비율은2.28e-16/6.75e-16
이하이고 전역 free residual을 포함한 ledger 잔여는3.12724e-10 force/
6.46502e-10 force·length 이하다.
비선형 최종 free residual 최대35.3467066284 force는0이 아니다. 독립 재구성과의
최대차는2.24691e-9 force다. 승인된 static 로그의 최종 비율은
35.3467/100017=.000353407이고10개 frame 모두 기존.01 기준 이하(최대.00353023)다.
총 F+RF 및 current moment의 비영 결함은 이 free residual로 설명된다. 따라서 판정은
기존 static acceptance 내 구성식·평형 ledger의 bounded PASS이며 exact equilibrium
통과가 아니다. 비선형의 `0.5F·u`는 진단값이며 energy identity로 사용하지 않는다.
Source/reference/input-copy/HDF/native/comparison 로그의 전후 SHA와 independent
script·native0·JSON·raw 배열은 로컬 `.harness/hex8-evidence/mean-volume/`의
`physics-linear/`, `physics-nonlinear/`에 보존했다. 작은 사례의 내부 시간수렴·수지
검토와 실제 두 정적 원본의 판정은 새 전체 동적 이력이나 modal 외부 비교를 대신하지 않는다.
## 체적 평균 변경본의 실제 선형 동적101 endpoint 대조
새 LINE dynamic HDF5의101개 endpoint를 독립 재구성했다. Source/time/amplitude·
model/schema/point identity 및 initial exact0·구속 U/V/a/A와 free RF exact0을 확인했다.
Actual stress/infinitesimal strain 최대차는4.44961e-7/2.30790e-18이다. 별도의 상대변위 H
표현에서도 회복값이 일치한다. 기준 geometry의 consistent M을 모든 frame에 고정 사용하고
별도8점 직접 적분의 kinetic energy·linear/current angular momentum과도 대조했다.
Native strain/kinetic energy 최대차1.13687e-13/2.13163e-14 force·length,
endpoint work와 balance error 최대차는 각각2.27374e-13이다.
공개 α=-.05,β=.275625,γ=.55의 RN64 상태 갱신 결함 비율은2.060e-16 이하이고 이전
physical force를 포함한 weighted identity도 대조했다. Stored free residual 최대
6.20169e-19와 RN64 state로 재구성한 최대1.10905e-7 force는 다른 관측이다. 후자의
cancellation/계수 반올림을 내부 high+low gate 실패나 통과의 근거로 사용하지 않는다.
Physical RF는 `Ma+f-F`의 constrained projection과 일치한다. 전체 force ledger 차이는
5.76479e-10 force 이하다. 선형 K0의 현재 arm 모멘트는 일반적으로 `Σu×f` 때문에
비영이며 최대287.099763335 force·length다. 이를 포함한 moment ledger 차이는
3.42095e-9 force·length 이하다.
최종 U178.92766323729418,T.27177166481189713,W257.34360955254886에서
`B=T+U-T0-U0-W=-78.14417465044276` force·length다. 첫 증분 B는+1.8941761591671697이다.
이 α와 endpoint trapezoid work에서 exact/단조 energy conservation을 요구하거나
관측값을 보정하지 않는다. 판정은 실제101 endpoint의 구성식·질량·상태 갱신·물리
observable 계약에 한정한 bounded PASS다. 이 원본에는 외부 U CSV만 있으므로 stress/RF
재구성을 외부 stress/RF 비교 통과로 보고하지 않는다. 임의 step의 시간 정확성·비선형
원본·전체 기능은 별도 범위다. Solver 재실행 없이 원본/copy/HDF/log의 SHA를 보존했고
자료는 `.harness/hex8-evidence/mean-volume/physics-dynlinear/`에 있다.
## 체적 평균 변경본의 실제 비선형 동적101 endpoint 대조
새 TL dynamic의 모든101 endpoint·300개 요소를 독립 계산한 결과도 bounded physics
PASS다. Actual Green·mean-law PK2/P/Cauchy·내력·에너지와 고정 reference M의 kinetic
energy·운동량·현재 angular momentum·RF·잔차·HHT 갱신을 대조했다. 응력/actual Green
최대차는2.08300e-7 force/length² 및8.46980e-19, strain/kinetic energy 최대차는
1.13687e-13/1.42109e-14 force·length다. 별도8점 질량 직접 적분도 일치했다.
입력·복사본·HDF·native/comparison/log/UCSV의 전후 SHA를 보존했고 두 독립 계산은
native0이다. 자료는 `.harness/hex8-evidence/mean-volume/physics-dynnonlinear/`다.
Actual Green trace의 요소 내 spread 최대1.84387e-5를 보존했다. PK2 isotropic part의
point spread6.98492e-10과 Cauchy hydro spread53.12235는 F/J mapping으로 구별된다.
관측 Gauss-point detF는.9999790347721854…1.0000212541790632이며 whole-cell
certificate를 다시 증명한 것은 아니다. Stored free residual 최대4.42274e-12와 RN64
재구성 최대9.96777e-8 force를 구분한다. 반올림 HDF로 strict paired gate의 통과나
실패를 판정하지 않는다. Physical RF 최대차3.49246e-10 force, 전체 force/current
moment ledger 차이8.18364e-10 force/2.47995e-9 force·length다. TL 내부 current moment
최대2.60364e-9는 기준 arm과 `Σu×f`의 상쇄를 확인하며 LINE의 현재 모멘트와 구별된다.
최종 U178.96011630302056,T.2729454262030376,W257.36751015513966에서
B=-78.13444842591608 force·length이며 첫 증분 B는+1.8903734544186321이다.
Work/balance 최대차는1.70530e-13/2.13163e-13이다. Exact conservation·매 frame 단조
감소·비선형 `U=.5Fᵀu`는 주장하지 않는다. 이 판정은 실제 원본의 구성식·질량·상태
갱신·물리 observable에 한정한다. 외부 RF/S 비교, 임의 step 시간차수, arbitrary warped
cell, 큰 변형 안정성 및 전체 기능 PASS는 범위 밖이다.
+98 -4
View File
@@ -1,7 +1,8 @@
# Hex8 original comparison evidence
# Hex8 verification and original comparison evidence
This page records T8's comparison-only Python implementation and its observed
results. It does not replace the feature PRD, numerical controls or completion
This page records the build/test evidence, comparison-only Python tool and actual
original results. Historical pointwise results and the approved mean-volume change
are recorded separately. It does not replace the feature PRD, numerical controls or completion
checklist. The comparator reads official rounded Float64 quantities; it does not
recompute the internal high+low solver acceptance gates from those observables.
@@ -79,7 +80,7 @@ assumption about the absent original Value file's eventual CSV layout. Actual
modal original comparison remains **NOT RUN** until a genuine reference is
provided and its semantics and hashes are confirmed.
## Current observations
## 비교기 개발과 변경 전 pointwise 구현의 관측 이력
The initial seven behavior assertions failed before implementation (pytest native
exit1). The first expanded suite passed63/63 with native exit0. Those tests include
@@ -172,3 +173,96 @@ Approved B replaces the pointwise bulk energy and requires new validation of all
five procedures. None of the historical native, internal or reference outcomes
above is a validation result for the mean-volume implementation. Originals,
tolerances, strict gates and comparator contracts remain unchanged.
## 2026-10-10 체적 평균 energy 구현과 현재 재검증
Frozen 작성자 `b2abd739`를 root `18b36c1`에 연결했다. 두 pass로 reference-volume
가중 trace 평균을 계산하고 같은 energy에서 내력·전체 Hessian·복구 응력을 구한다.
Cross-GP bulk 항과 `S*:delta²E` 기하항을 함께 유지한다. LINE의 K0는 같은 식의
영변위 Hessian이다. 질량·HHT·strict gate·원본·I/O·허용오차는 변경하지 않았다.
수정한 weighted warped oracle를 이전 구현에 대입한7개 검사는 모두 실패했다.
변경본 작성자 관련150/150, 시간수렴3 GTests의4물리 사례, 최종 실제 재컴파일3/3은
각각 native build/CTest0/0이다. u/v/physical a의 최소 관측 차수1.98022는 기존1.8
기준을 충족한다. Root 실제 재컴파일 후 관련65/65도 native0이다. 정규 brick의 rank,
두 축 지정 굽힘장 에너지 수렴과 고정 두께 cantilever tip 추세는 서로 다른 증거다.
상세 범위는 [수치 검토](numerical-review.md)와 [물리 검토](physics-review.md)에 있다.
새 공식 CLI는 frozen executable과 byte-identical scratch INP를 사용한다. 아래 두
정적 해석은 자연 종료 native0이며, 변경 없는 공식 비교기도 각각 native0이다.
Source/model/schema/point/frame/finite 사전검사와 각 family의 모든 row가 통과했다.
| 원본 / blocking quantity | Scalars | Failing rows | Maximum absolute error | RMS/S |
| --- | ---: | ---: | ---: | ---: |
| linear static U | 1326 | 0 | 6.096370478748947e-11 | 9.317898154374918e-9 |
| linear static RF | 51 | 0 | .014746726665180176 | 7.3098163267228364e-9 |
| linear static S | 14400 | 0 | .12245691940188408 | 3.425934236751431e-9 |
| nonlinear static U | 1326 | 0 | 9.832466303596647e-10 | 2.169911561350724e-7 |
| nonlinear static RF | 51 | 0 | 12.826179522729944 | 6.728092996221331e-6 |
| nonlinear static S | 14400 | 0 | 93.34994950843975 | 9.338899878251489e-6 |
새 HDF5 SHA256은 linear `023769e50d05226ef8defe87e29bc9046fbdd5071783007ebb39a49fd9d7d617`,
nonlinear `2acb3471c7799597d554d4d9ee224e8c611522866808f38b2b2c202e0f98a4bd`다.
Frequency CLI도 native0으로 종료했고 공식 readback 사전검사는 PASS다. 새 결과 SHA는
`f6203936883df7f27e86a20311726b7e59fefa117e5f9fa67f71bdf63ec2e4cb`다.
원본 modal Value 부재로 비교는 native2·NOT RUN이며 수치 통과가 아니다.
새 선형 동적 CLI가 native0으로 자연 종료했고101-frame 사전검사와101개 U family가
모두 PASS다(비교 native0). 총133926개 scalar의 실패 행은0개다. 초기 exact-zero family를
포함하며100개 nonzero-scale family의 최대 RMS/S는.0031316511389477947,
전체 최대 absolute error는1.3395048822648645e-5다. 마지막 RMS/S는.001392775677333779다.
Actual HDF SHA는 `5476c557bc8e1c0a1e8b57a1cc8d763eb822a47e27aa2b2723fcbdc2246f9b40`다.
이 외부 변위 비교는 rounded HDF만으로 내부 high+low strict gate를 재계산한 검사가 아니다.
새 비선형 동적 CLI도 native0으로 자연 종료했고101-frame 사전검사 및101개 U family가
모두 PASS다(비교 native0). 총133926개 scalar의 실패 행은0개다. 초기 exact-zero와
100개 nonzero-scale family를 구분했으며 최대 RMS/S는.003133373067174733,
전체 최대 absolute error는1.3397499223151595e-5, 마지막 RMS/S는.0013958914416137816이다.
Actual HDF SHA는 `023b4558a28f8d9365f6b11346a6cb4a5d2faafa68607c5c56bbf226fe816210`다.
다섯 새 공식 CLI queue는 wrapper0으로 자연 종료했고 원본13개 SHA를 보존했다.
독립 검토의 범위는 해당 수치·물리 검토 문서를 따른다.
제외 없는 전체787 CTest는2026-10-11 자연 종료했다. MSVC x64 Debug configure/build는
native0/0이며 CTest는 native8:784 PASS·2 FAIL·1 SKIP이다. 기존617개가 모두 유지됐고
추가170개는 모두 PASS이며 새 예외는0이다. 두 기존 Shell 실패의 수치 로그20/30줄은
baseline과 정확히 같다. SKIP은 이름·상태가 동일하지만 output-on-failure raw에 상세
본문이 없어 그 metric 검증은 NOT VERIFIED다. 전체 green으로 보고하지 않는다.
정확한 CLI/비교 명령·native record·
원본/copy/result SHA·전 row report는 로컬 `.harness/hex8-evidence/mean-volume/`의
`original-cli/`, `comparisons/`, `integrated-focused/`, `full/`에 보존한다.
동일 revision에서 전체 Python 명령
`uv run --with h5py --with pytest python -B -m pytest -v -rs`도 다시 실행했다.
기존 `msvc_harness`·제거된 `scripts.hooks` import의 collection5 오류로 native2,
실행0개다. `.harness/hex8-evidence/mean-volume/python-full/`의 native 기록을 따른다.
기존 실패를 제외하거나 폐기된 절차를 복원하지 않았으며 전체 Python PASS가 아니다.
## 2026-10-11 전체 재검증 종료 기록
전체 C++ 검증은 설치된 MSVC x64와 dependency 환경에서 아래 preset backend 명령을
제외 없이 실행했다. `.harness/config.json`이 없고 generic runner는30분 deadline을
사용하므로 수시간의 전체 실행은 직접 backend로 완료했다. `scripts/execute.py`의 별도
실행 성공을 주장하지 않는다. 실제 argv·시각·native 종료 코드는 `full/`에 보존했다.
```powershell
cmake --preset windows-msvc-ninja-debug
cmake --build --preset windows-msvc-ninja-debug
ctest --preset windows-msvc-ninja-debug --show-only=json-v1
ctest --preset windows-msvc-ninja-debug --output-on-failure
```
전체 실제 시간은16839.26초다. 기존 실패는
`HhtShellPhysics.C08aRigidManufacturedOrbitFullCoordinateTimeConvergence` 및
`HhtShellPhysics.C08bFreeFiniteRotationPlateSelfConvergenceAndPhysicalInvariants`,
SKIP은 `HhtTemporalVerification.C04aFinestReductionComparisonIsNumericallyResolved`다.
기존617개와 새170개의 discovery·실행 ordinal·status 및 종료 artifact SHA 대조는
`full/independent-closure-summary.json`에 있다. 다섯 CLI·네 실제 원본 비교·modal NOT RUN·
Python collection 오류와 원본13개/frozen binaries 보존을 함께 기록한 최종 자료는
`.harness/hex8-evidence/mean-volume/closure.json`이다. 독립 감사와 실제 원본 물리 복구의
bounded 판정·한계는 [수치 검토](numerical-review.md), [물리 검토](physics-review.md)를 따른다.
종료 후 독립 전체 evidence 감사도 native0·finding0이다. 별도22개 artifact SHA와
세 실제 테스트 실행 파일의 중간 관측/종료 SHA, 모든 discovery/실행 행과 기존 상대
순서·status를 대조했다. 자료는 `final-evidence-audit-full/`에 있다. 두 실패 출력은
elapsed-ms 표기만 제외해 정확히 동일하다. 이 감사 PASS는 CTest native8이나 modal
NOT RUN을 통과로 재분류하지 않는다.
+14 -4
View File
@@ -1,17 +1,27 @@
# 미해결 문제
## Hex8 표준 full8 정식화와 정적 원본의 불일치
## Hex8 이전 표준 full8 정식화의 원본 불일치와 변경 후 검증
- 조건·현상: `e2c3c5b`의 실제 CLI가 byte-identical scratch 입력
- 변경 후 관찰: 승인된 체적 평균 구현 `18b36c1`의 새 두 정적 CLI는 native0이며,
공식 비교기의 source/model/schema/point/frame/finite 사전검사와 U/RF/S 모든 행이
통과했다(native0). 실제 출력의 독립 mean energy·내력·응력·반력 ledger도 bounded
physics PASS다. 비선형 free residual은 기존 static 기준 내 비영 값이며 exact equilibrium이
아니다. 상세 수치는 [새 verification](../hex8-structural-analysis/verification.md#2026-10-10-체적-평균-energy-구현과-현재-재검증)에 있다.
정적 불일치는 변경본에서 해결됐고 새 두 동적 원본도 각각101-frame U 비교 PASS다.
실제 원본의 독립 수치·물리 검토도 bounded PASS다. 전체787 회귀는784 PASS·기존
FAIL2·SKIP1(native8)으로 종료했고 추가170개 모두 PASS·새 예외0이다. 전체 green은 아니며,
modal Value 원본 부재는 별도 완료 조건이다. 아래 과거 실패 근거는 보존한다.
- 과거 조건·현상: `e2c3c5b`의 실제 CLI가 byte-identical scratch 입력
`hexa_linearstatic.inp`에서 native exit0으로 공식 HDF5를 생성했다. 원본13개의 SHA와
scratch SHA는 보존됐다. Source step/factor1↔Increment10,442절점·300요소·IntPt1–8,
좌표·tensor·단위·finite를 독립 확인했지만 U1326/RF51/S14400의 RMS/S는 각각
`0.0167395197235`/`0.0681889252819`/`0.0427090341746`으로 공통1%를 초과했다.
행 실패는79/34/7783개다. RF는 전체442행을 먼저 확인한 뒤 구속51성분으로 투영했다.
- 영향: 필수 원본 family PASS와 전체 기능 검증 완료 조건을 충족하지 못한다.
- 당시 영향: 필수 원본 family PASS와 전체 기능 검증 완료 조건을 충족하지 못했다.
CLI 성공·내부 평형·HDF5 correctness는 외부 수치 일치와 별개다. 현재 checklist는
[기능 PRD](../hex8-structural-analysis/PRD.md)에 있다.
- 현재 해결하지 못한 이유: 독립 standard full8 `BᵀCB` 조립·solve가 현재 변위와 일치하고
- 당시 해결하지 못한 이유: 독립 standard full8 `BᵀCB` 조립·solve가 당시 변위와 일치하고
같은 원본 형상·변위의 Gauss 구성식도 현재 stress/strain을 재현한다. 승인된 full8 식을
원본 값에 맞춰 조용히 바꾸거나 tolerance를 완화할 근거가 아니다. 원본 응력의 체적 성분은
요소 평균 trace로 재구성하면 크게 가까워지지만 이것만으로 private algorithm을 증명하지 않는다.
+7 -4
View File
@@ -1,6 +1,6 @@
# 개발 현황
기준일은 2026-10-10이다. 주목적은 개인 연구용 솔버 개발이며 외부 사용자 배포는 장기
기준일은 2026-10-11이다. 주목적은 개인 연구용 솔버 개발이며 외부 사용자 배포는 장기
목표다. 아래는 실제 실행과 기능별 계약을 대조한 요약이며 상세 checklist를 대신하지 않는다.
2026-10-04 문서 정리 당시의 기존 기능 기록과 이후 Hex8 개발의 실행 증거를 구분한다.
@@ -12,7 +12,10 @@ dev 병합 `858e87b`는 검증한 구현과 동일한 tree이고 별도의 새
Hex8 연결 후 source `1eb9cdd`의 전체 build는 native exit0이며, 발견된780개 CTest의
제외 없는 실행은 native8,777 PASS·2 FAIL·1 SKIP으로 종료됐다. 추가163개는 모두 PASS이며
기존 예외3개의 이름·status·metric body는 baseline과 같다. 이는 이전 pointwise 구현의
기록이다. 2026-10-10 승인된 체적 평균 energy의 구현과 전체 재검증은 별도로 진행한다.
기록이다. 2026-10-10 승인된 체적 평균 energy는 root `18b36c1`에 연결했고 관련65/65,
작성자150/150과 네 시간수렴 사례가 PASS다. 변경본의 전체787 CTest도 제외 없이 자연
종료했다(native8:784 PASS·기존 FAIL2·SKIP1). 기존617개를 보존했고 추가170개는 모두
PASS·새 예외0이다. 두 기존 실패의 metric body는 동일하고 SKIP은 이름·상태만 대조했다.
## 구현과 검증 상태
@@ -24,9 +27,9 @@ Hex8 연결 후 source `1eb9cdd`의 전체 build는 native exit0이며, 발견
| MITC4 frequency | 승인된 첫 구현 완료 기록 | 당시417개 검사·외부 Value5%·독립 검토 PASS, 최신 기존 회귀도 PASS. [S3·정확도 개선](../mitc4-shell-feast-eigen2/README.md#실패와-남은-범위)은 보류 |
| HHT 동해석 | 입력부터 HDF5까지 구현, 기능 검증 미완료 | 101-frame U 비교 PASS 기록·UR 경고200건. [두 시간수렴 실패와 잔여 coverage](../hht-implicit-dynamics/README.md#실패시행착오다음-작업) 유지 |
| HHT 굽힘 단면력 복구 | 두께 계수 수정됨 | 관련 Debug 14 tests와 원본 HDF5 재생성·독립 식 대조 완료 기록. 전체 동해석 완료와 별개 |
| HHT 관련 전체 CTest | 기존 실패2개·SKIP1개 유지 | Hex8 변경 전 최신780개 검사에서 제외 없이 실행. 기존 metric과 동일하며 전체 green 아님 |
| HHT 관련 전체 CTest | 기존 실패2개·SKIP1개 유지 | 체적 평균 Hex8 변경본의 전체787개를 제외 없이 실행. 두 실패 metric body·예외3개 status가 baseline과 동일하며 전체 green 아님 |
| Shell transient heat transfer | 구현·내부 검증 완료, 필수 외부 비교 대기 | [추가139개 PASS·수렴/수지·독립 수치/물리 검토](../shell-transient-heat-transfer/README.md). 기존 NT11은87/729행 수치 FAIL인 diagnostic; 새 모델·CSV 준비 중 |
| Hex8 선형·기하비선형 강성·consistent mass | 승인된 체적 평균 energy 구현·전체 재검증 중 | [기능 PRD](../hex8-structural-analysis/PRD.md)의 범위를 따름. 이전 pointwise 구현은5절차 CLI native0, 두 동적101 endpoint 완료지만 정적 U/RF/S와 동적 U 필수 비교 FAIL. 기존 내부 PASS를 변경본에 승계하지 않음. Modal Value 원본 부재 |
| Hex8 선형·기하비선형 강성·consistent mass | 체적 평균 구현·가능한 원본 비교·전체 회귀 실행 완료, modal 비교 대기 | [기능 PRD](../hex8-structural-analysis/PRD.md)의 범위를 따름. 두 정적 U/RF51/Gauss S와 두 동적101-frame U 필수 비교 PASS. 다섯 공식 CLI native0, 실제 원본 독립 수치·물리 검토 bounded PASS. 전체787=784 PASS·기존 FAIL2·SKIP1, 추가170개 모두 PASS. 고유치 readback precheck PASS이나 modal Value 원본 부재로 비교 NOT RUN. 과거 pointwise 원본 FAIL은 보존 |
| Python 검증 실행기 | 구현됨 | 명시 build/test runner와 별도 Python suite가 존재. 일부 운영 계약 검사는 현행 절차와 맞지 않는 기대값을 유지 |
| 외부 사용자 배포 | 계획 | 배포 방식·설치·지원 정책과 dependency 재배포 검토가 아직 정해지지 않음 |