Files
FESADev/docs/hex8-structural-analysis/numerical-review.md
T

4.2 KiB
Raw Blame History

Hex8 독립 수치 검토

검토 대상은 PRD, formulation, numeric controls, I/O, reference mapping이다. 2026-10-08 작성자와 독립된 hex8_t1_numerical reviewer가 문서·관련 코드·원본을 대조했다. 수식에 추가 blocker는 없으나 아래 필수 원본/입력 계약 충돌은 사용자 결정 대기다. 실제 solver 수치 PASS가 아니다.

HEX8-NR-001 — 영 회전 경계와 필수 원본 충돌

현재 PRD008/I/O는 BC/CLOAD DOF4–6을 값0이어도 거부한다. 그러나 모든 필수 INP에 Set-1, 4, 4, Set-1, 5, 5, Set-1, 6, 6의 생략된 영 지정값이 있다. Static2/frequency는794–796행, dynamic2는796–798행이다. Read-only 원본을 그대로 사용하면5개 모두 input failure이므로 end-to-end integration/필수 비교를 진행할 수 없다.

원본의 영 회전 BC만 warning/no-op으로 수용하는 입력 호환 예외와, strict 거부를 유지하고 사용자가 원본을 수정하는 두 대안을 사용자에게 제시했다. 현재 승인 대기이며 silent ignore/ 원본 preprocessing을 적용하지 않았다. Kernel 수식에는 이 충돌과 무관한 수치 blocker가 없다.

독립 검토에서 정리한 내용

초기 static convergence 문서의 max(internal_free,external_free) branch는 prescribed-only에서 residual=internal_free라 ratio1을 만들어 수렴을 막을 수 있었다. Draft를 기존 EvaluateResidualChannel의 external_free exact0 absolute branch로 수정했다. Reviewer는 수정 후 기존 source219–246과의 일치를 확인했다. 승인 physics/schema/external acceptance는 바꾸지 않았다.

Reviewer의 독립 표준-library 산술 확인은 exit0이며 TL tangent relative 최적 오차 약4.59e-11, Bernstein27 재구성 최대오차7.77e-16, mass Walsh 최소 모드값.03703703703703707≈1/27, scalar HHT u/v/physical a 관측 차수 약2.00/1.98–1.99/2.00이었다. 초기 NumPy 계산은 모듈 부재로 exit1이었고 표준-library 계산으로 대체했다. 문서/코드/원본 읽기 명령은 exit0, glob discovery 검색 하나는 exit1이었다. File edit/build/test/external solver 실행은 하지 않았다. 이 숫자는 문서 식의 독립 산술 확인이며 production kernel/backend/mesh 검증 evidence가 아니다.

TL energy/Hessian·engineering/tensor shear, degree(2,2,2) Jacobian 인증, mass SPD와 real/FP bound 구분, original generalized K/M·최저 N, HHT a/A·weighted/endpoint tangent·초기 force/physical reaction, typed/HDF5·failed accepted 보존에는 문서 수식의 추가 blocker가 없었다.

검토해야 할 주요 위험은 다음과 같다.

  • J0의 column/gradient 변환과 point3/4·7/8 순서; det J polynomial Bernstein 변환과 outward interval/subdivision이 whole-cell 양성을 보증하는지, uncertain/resource failure가 보수적인지.
  • TL energy variation에서 material/geometric tangent의 index와 work conjugacy, rigid rotation/strain objectivity·zero-state 선형극한과 unaveraged Cauchy/Green recovery.
  • 8점 consistent M의 SPD·총질량·reference 상수성·local spectral bound와 실제 sparse pencil roundoff/control의 구분; Shell null/nodal whitening 미사용 및 lowest-N count 검증.
  • HHT auxiliary/physical acceleration·weighted/endpoint residual의 동등 조건·tangent scale, initialization/amplitude endpoints·physical reaction·u/v/a 시간수렴과 numerical dissipation.
  • Static/Newton의 approved defaults·force/length 단위·zero-scale branch, internal oracle budget과 외부 reference acceptance 분리, geometry/finite/recovery 이후 atomic state/output commit.
  • Original required U/RF/Gauss S·dynamic101 frame projection·frequency 미제공 상태를 정확히 구분하는지. Coordinate sanity 확인을 stress/reference correctness로 승격하지 않는지.

이 risk는 이후 실제 interval primitive/subdivision·brick/warped oracle·tangent step sweep· generalized runtime/count·prescribed-only state·HHT mesh 시간수렴·formal HDF5/reference 사전검사로 검증해야 한다. 아직 실행하지 않은 solver build/test/reference를 PASS로 적지 않는다.