feat: adopt lumped mass and reduced-coordinate shell HHT
Integrate Hex8 mass verification and fixed-null-basis shell dynamics with numerical and physics handoff evidence. Preserve interrupted reference and full-validation status; full integration validation is deferred until after performance optimization.
This commit is contained in:
+111
-3
@@ -1,5 +1,35 @@
|
||||
# 미해결 문제
|
||||
|
||||
## Hex8 제공 고유치 원본과 최저10 모드 불일치
|
||||
|
||||
- 현재 상태(2026-10-11): 사용자가 고유치·HHT lumped mass를 승인했다. 변경본의 실제
|
||||
MSVC Debug CLI와 원본 10개 Value 비교는 모두 native0/PASS이며 이 modal 불일치는
|
||||
해소됐다. 새 evidence는 `.dryforge/lumped-mass-adoption-20261011/references/hexa_freq/`
|
||||
아래 `native.json`·`comparison.json`이다. 전체 회귀와 다른 절차의 재검증은 별도로
|
||||
진행한다. 아래 consistent 구현의 실패와 당시 미승인 상태는 과거 조사 이력이다.
|
||||
|
||||
- 조건·재현: 체적 평균 구현 `18b36c1`의 실제 `hexa_freq.inp` CLI native0 결과에
|
||||
2026-10-11 제공된 `reference/hexa/hexa_freq.txt`를 비교한다. 명령과10개 metric은
|
||||
[최종 비교](../hex8-structural-analysis/verification.md#2026-10-11-제공된-고유치-원본의-최종-비교)에 있다.
|
||||
- 관찰: 입력·원본 hash·모드1–10·HDF5/finite/quantity/unit 사전검사 PASS이나 비교 native1,
|
||||
mode3/4/5/6/7/9/10의 singleton RMS/S가1%를 초과한다. Mode5는
|
||||
λ=63489.09126468376 대 원본52797로20.2513234932%이며 row5%도 초과한다.
|
||||
- 영향: 원본은 준비됐지만 FEM-REQ-HEX8-022–024의 필수 modal 비교 PASS와 기능 완료를
|
||||
충족하지 못한다. 정적2·동적2 PASS와 내부 original-pencil 검증은 이 차이를 없애지 않는다.
|
||||
- 초기 원인 분리의 한계: 제공 TXT에는 mode shape와 외부 조립 K/M·실제 element/mass
|
||||
formulation evidence가 없다. 고유치 차이만으로 강성·질량 중 어느 원인인지 확정할 수 없다.
|
||||
승인된 consistent M·평균 trace energy·1% 기준을 원본 값에 맞춰 변경할 근거가 아니다.
|
||||
- 후속 방향: 동일 입력의 원본 modal element/mass 설정과 mode shape 또는 matrix evidence를
|
||||
확보해 차이를 분리한다. Physics·acceptance 변경이 필요하면 근거와 영향을 사용자에게
|
||||
전달한다. 원본 수정·모드 재매칭·frequency 변환·tolerance 완화로 통과시키지 않는다.
|
||||
- 후속 조사(2026-10-11): [원본 질량·요소 설정 조사](../hex8-structural-analysis/reference-mass-investigation.md)에서
|
||||
Abaqus 공식 문서의1차 요소 row-sum lumped mass를 확인했다. 동일 평균 trace K의
|
||||
private 계산에서 consistent M은 실제 FESA λ를 상대차이4.57e-12 이내로 재현했고,
|
||||
lumped M은 원본10개 λ 모두 상대차이0.00196105% 이내였다. 질량 선택 차이가
|
||||
불일치의 주된 원인이라는 강한 근거다. 실제 원본 operator 직접 확인은 아니며 현재
|
||||
FEM-REQ-HEX8-007/HEX8-ADR-002의 consistent 계약과 필수 modal FAIL은 유지한다.
|
||||
채택하려면 eigen/HHT 공통 질량 정책과 영향 검증 범위를 먼저 결정해야 한다.
|
||||
|
||||
## Hex8 이전 표준 full8 정식화의 원본 불일치와 변경 후 검증
|
||||
|
||||
- 변경 후 관찰: 승인된 체적 평균 구현 `18b36c1`의 새 두 정적 CLI는 native0이며,
|
||||
@@ -10,7 +40,7 @@
|
||||
정적 불일치는 변경본에서 해결됐고 새 두 동적 원본도 각각101-frame U 비교 PASS다.
|
||||
실제 원본의 독립 수치·물리 검토도 bounded PASS다. 전체787 회귀는784 PASS·기존
|
||||
FAIL2·SKIP1(native8)으로 종료했고 추가170개 모두 PASS·새 예외0이다. 전체 green은 아니며,
|
||||
modal Value 원본 부재는 별도 완료 조건이다. 아래 과거 실패 근거는 보존한다.
|
||||
제공된 modal Value의 수치 불일치는 위 별도 문제로 남는다. 아래 과거 실패 근거는 보존한다.
|
||||
|
||||
- 과거 조건·현상: `e2c3c5b`의 실제 CLI가 byte-identical scratch 입력
|
||||
`hexa_linearstatic.inp`에서 native exit0으로 공식 HDF5를 생성했다. 원본13개의 SHA와
|
||||
@@ -55,14 +85,92 @@
|
||||
|
||||
## HHT shell의 시간수렴
|
||||
|
||||
- 최신 상태(2026-10-13 사용자 중단): ADR-018의 C09와 공식 Release C08a7-grid는
|
||||
통과했다. 진행 중이던 전체 Debug·Release C08b·원본 해석은 사용자 요청으로
|
||||
종료했으며 native `-1`을 수치 실패나 PASS로 분류하지 않는다. 원본99증분의
|
||||
accepted 로그는 있으나 현재 HDF5/U/UR이 없어 Abaqus 변위 오차는 계산할 수 없다.
|
||||
[저장 구간 비교](../hht-implicit-dynamics/interrupted-validation-comparison.md)를
|
||||
보존하며, hexa 완료·성능 최적화 후 전체 재검증 전까지 남은 판정은 미완료다.
|
||||
|
||||
- 조건·현상: 실제 shell의 두 시간수렴 사례에서 요구한 수렴 성능을 만족하지 못한
|
||||
재현 기록이 남아 있다. 원본 변위 reference 통과와 함께 존재하는 실패다.
|
||||
- 영향: 변위 일치만으로 동적 가속도·관성·에너지·전체 시간 정확성을 보장할 수 없다.
|
||||
HHT 전체 기능 완료를 선언할 수 없다.
|
||||
- 현재 해결하지 않는 이유: 문서 재구성 범위를 벗어나는 수치 알고리즘 변경이며,
|
||||
가속도 복구 후보의 정식화·독립 검증·채택 판단이 선행되어야 한다.
|
||||
- 미해결 이유: 정확한 초기화 후에도 full-coordinate recurrence의 물리적 a 차수1
|
||||
소형 반례가 존재하며 실제 shell 후보의 정식화·독립 검증·채택 판단이 필요하다.
|
||||
C08b의 고주파 해상도와 정확 P 보존에 대한 strict-decrease 계약 문제도 구별해야 한다.
|
||||
- 후속 방향: 기존 물리 질량·허용 오차를 유지한 재현에서 dt refinement별 q/v/물리 a와
|
||||
hidden constraint 차수를 분리하고 후보 변경의 영향을 검증한다.
|
||||
- 후속 근거(2026-10-12): [시간 정확도·운동량 후속 검증](../hht-implicit-dynamics/temporal-remediation.md).
|
||||
소형 DAE의 독립 검산과 실제 C08b finer-grid·fixed-state P 분리를 수행했다.
|
||||
같은 HHT의 carried-A private 후보는512–4096 native0이나 원 grid 정확도 FAIL과
|
||||
strict P 조건은 유지한다. Production·N7·acceptance·public schema 변경은 미채택이다.
|
||||
- 후속 상태(2026-10-13): [HHT-ADR-014/015](../hht-implicit-dynamics/ADR.md)는
|
||||
reduced shell 구현·schema v2, C08b P 판정/최종 finer grid, C08a 최종 grid/hidden1·2
|
||||
판정을 승인했다. 위 미채택 문구는 승인 전 기록이다. 최신 C08b Release는 원5 grid
|
||||
이후 h=1/32768·증분4에서 위치 제약 normalized 약3.54e-10으로 실패했다.
|
||||
동일 좌표의 독립 검산은 analytic constraint와 조립된 내력의 불일치를 확인했고,
|
||||
Rodrigues coefficient의 작은 각도 미분 상쇄를 안정적인 전체 Jet 급수로 바꾼
|
||||
별도 진단은 원 기준을 통과했다. 현재 production 변경본의 전체 시간 이력·N7·
|
||||
Debug/원본 검증은 미완료다. [수치 검토와 재현 근거](../hht-implicit-dynamics/numerical-review-reduced-coordinate.md)를 따른다.
|
||||
- 후속 좌표 표현 finding(2026-10-13): 보상 누적 C08a7 grid도 native8이다.
|
||||
Required 좌표 trace58개 모두 현재 high가 가장 가까운 binary64이며 양쪽 이웃도
|
||||
원1e-12 기준에 실패한다. 누적 pair의 exact requested target 오차는 최대7.70e-34로,
|
||||
추가 덧셈 보정만으로 원 stored-high 판정을 통과시킬 수 없다. 기능 완료·전체 N3
|
||||
판정에 영향을 주며 [비교 대상 분리 제안](../hht-implicit-dynamics/c08-n3-coordinate-representation-proposal.md)은
|
||||
HHT-ADR-016으로 사용자 승인됐으며 변경본 구현·검증을 진행한다. 이전 acceptance의 실패 로그를 보존한다.
|
||||
Proper-Q actual 초기 재구성 실패는 canonical primitive gradient로 정정 후 초기 gate를
|
||||
통과했다. 후속 C09는 첫 증분100 correction 뒤 physical moment N2 비수렴으로 실패했다.
|
||||
Tiny rotation에서 director increment가 full director의 반올림에 흡수되어 물리힘과
|
||||
tangent가 불일치하는 bounded RED/GREEN을 확보했고, 동일한 direct increment를
|
||||
force·tangent·recovery energy에 적용한 Debug 요소16개는 통과했다.
|
||||
후속 actual 관성 소실을 `M*a+c`의 안정적 수축으로 수정한 Debug는 관성12개 및
|
||||
N5가 통과했으나 C09 초기 재구성에서 실패했다. 독립8-row 감사는 plain partition
|
||||
누적의 잡음을 분리했으며 초기화와 같은 compensated 수축으로 정정했다.
|
||||
작은 가속도에서 Dq 관성 접선과 Ldot의 소실도 별도 해석식 재현에서 확인됐다.
|
||||
원 state·N2 scale·허용오차를 유지한 coefficient-first 산술의 Debug 관성13개와
|
||||
actual N5는 통과했다. 최신 Release C08a7-grid도 통과했지만 전체 검증은 미완료다.
|
||||
C09 초기 재구성은 통과하나 full Newton100은 잔차 기준에 실패한다. Read-only
|
||||
병진 고정 진단은 두 회전/auxiliary 보정 후 원 endpoint 기준을 만족했다.
|
||||
[제안과 독립 검토](../hht-implicit-dynamics/c09-channel-newton-proposal.md)는
|
||||
부분 행렬 N2-L 검사 영역 및 N7 full-model defect 보존을 명시한다.
|
||||
HHT-ADR-017로 사용자 승인됐으며 production/controller 구현과 자연 trajectory 검증을 진행한다.
|
||||
ADR-017 변경본 actual Debug C09의 여섯 trajectory는 자연 종료했지만 global-frame
|
||||
covariance 비교에서 native8·113.03초로 실패했다. 원1e-10 기준을 유지하며
|
||||
fixed selector의 비선형 chart 전환과 reduced HHT 이산화 영향을 조사한다.
|
||||
[Read-only 진단](../hht-implicit-dynamics/channel-newton-covariance-diagnostic.md)은
|
||||
순수 병진 비교 PASS와 유한회전 비교 FAIL을 분리했다. 같은 q/v/a의 회전된
|
||||
assembly는 일치하지만 selected-coordinate 변환은 Newmark recurrence를
|
||||
보존하지 않는다. [고정 null 보완공간 제안](../hht-implicit-dynamics/fixed-null-basis-proposal.md)은
|
||||
별도 chart/integrator 변경으로 사용자 결정 전이며 기존 기준을 완화하지 않는다.
|
||||
[실행 범위와 실패 기록](../hht-implicit-dynamics/temporal-remediation.md)을 따른다.
|
||||
|
||||
## Lumped shell C08b의 새 회전 좌표 예외
|
||||
|
||||
- 조건·현상(2026-10-12): 승인된 nodal lumped kinetic 변경본의 전체 Debug CTest에서
|
||||
C08b는 `h=1/64,1/128`을 완료한 뒤 `h=1/256`에서 `invalid-dynamic-rotation`으로
|
||||
종료했다. 이전 consistent 실행의 다섯 grid 완료 후 정확도 실패와 다른 경로다.
|
||||
- 발견 당시 영향: 남은 세 grid와 마지막 refinement의 시간수렴·물리 기준이 미검증이었다.
|
||||
원본 U 비교 PASS와 local 관성 검사의 통과로 이 예외를 대체할 수 없다.
|
||||
최종 독립 diff 검토도 이를 FEM-REQ-HEX8-024의 P1 완료 blocker로 판정했다.
|
||||
[후속 개발 인계](../hex8-structural-analysis/lumped-mass-adoption.md#최종-검토와-인계)에
|
||||
필요한 관측량과 재검증 범위를 기록했다.
|
||||
- 조사 상태: 별도 Debug probe에서 증분56·Newton 반복3·t=0.21875의 node index4
|
||||
회전 좌표 `(0.64127523,-1.19777570,3.61620987)`가 유한하지만 크기가 π보다
|
||||
큼을 확인했다. 후속 독립 조사에서 반복0부터 큰 보정이 생기며, q_n 시작의 큰 관성
|
||||
잔차와 moving null의 미분이 정상적인 drilling 대수 접선을 거의 상쇄함을 확인했다.
|
||||
확인한 상태·방향의 history·관성 항등식·접선 차분·선형 solve는 일치했다. Gate·
|
||||
좌표 clamp·허용값은 유지한다. [상세 원인·후보 evidence](../hht-implicit-dynamics/newton-rotation-investigation.md).
|
||||
- 후속 해결(2026-10-12): 사용자 요청으로 [HHT-ADR-013](../hht-implicit-dynamics/ADR.md)의
|
||||
두 초기 형상·자유 energy 잔차 선택을 구현했다. 관련37/37 Debug PASS와 독립 source
|
||||
검토, 실제 h=1/64..1/1024 전체5 grid 완료·새65-frame runtime 회귀 PASS로 조사한
|
||||
회전 예외는 재발하지 않았다. [현재 구현·검증](../hht-implicit-dynamics/newton-start-policy.md).
|
||||
원본101-frame U 재비교와 독립 kinetic/balance 대조도 완료했다.
|
||||
- 남은 범위: C08b는 시간 정확도·차수와 roundoff 수준 P의 감소 기준에서 여전히 FAIL이다.
|
||||
현재 C08b noise separation은 PASS이며 C08a noise INCONCLUSIVE와 구별한다. 전체802
|
||||
Debug는11384.61초 뒤 native8:799 PASS·C08 정확도 FAIL2·기존 C04a SKIP1로 자연
|
||||
종료했고 추가 예외0·검증 전후 source/원본/binary hash 동일성을 확인했다.
|
||||
Runtime 개선을 가속도 정확도 해결이나 전체 green으로 표시하지 않는다.
|
||||
|
||||
## Python 운영 계약 검사의 기대값 불일치
|
||||
|
||||
|
||||
Reference in New Issue
Block a user