diff --git a/docs/shell-transient-heat-transfer/implementation-verification.md b/docs/shell-transient-heat-transfer/implementation-verification.md index 53e9965..bc7a837 100644 --- a/docs/shell-transient-heat-transfer/implementation-verification.md +++ b/docs/shell-transient-heat-transfer/implementation-verification.md @@ -224,4 +224,27 @@ Evidence는 `.dryforge/evidence/thermal-kernel-final-{configure,build,inventory, dependency를 확인했으며, 중간 `thermal-kernel-integrated-build.log`는 최종 근거를 대신하지 않는다. 이 보완은 개인 검증 환경에 한정하며 제품 소스 변경은 없다. +### 결정적 조립과 accepted state + +`54154bee`의 full K/C/Q 조립과 결과 state를 독립 검토하여 잔여 차단 항목이 없음을 +확인했다. Local kernel 오차와 순서가 고정된 합산 오차를 포함한 경계를 제공하며, +constrained Q도 보존한다. State는 생성 뒤 Domain 수명에 의존하지 않고 raw 초기 +프레임, immutable row mapping, 정확한 schedule 및 완료 프레임을 소유한다. + +작업 checkout의 `t6-final-{build,inventory,test}.log`는 각각 native exit 0이다. +Inventory 528개 중 관련 **11/11 PASS**이며 24종류의 candidate 손상에 대한 전체 +이력 보존과 UINT32_MAX schedule의 선할당 방지도 검사했다. 실행 당시 HEAD는 +commit 전 `85b5daa`였고, 같은 수정분을 `54154bee`에 기록했다. + +독립 실행기는 committed assembler/state를 별도 컴파일하여 4요소·9활성절점의 +서로 다른 물성·두께 및 global material offset 모델을 검산했다. Exact Fraction +oracle의 C/K **4,050항**과 **40개 하중 사례**를 대조했고, 유효 39개와 overflow +거부 1개가 기대와 일치했다. Serial/actual TBB의 값·오차 경계·flux는 비트 단위로 +일치했다. State의 초기값·완료 여부·잘못된 uint64 frame 거부·복사 독립성도 확인했다. + +Evidence는 작업 checkout의 `.dryforge/review/t6_54154bee/`에 보존했다. +최초 reviewer runner의 정수 narrowing compile 실패를 구별해 기록했으며, +수정 후 compile/runner/Fraction checker/source audit는 모두 실제 exit 0이다. +입력 파서와 합친 통합 검사는 파서 검토 완료 후 수행한다. + 전체 thermal 검사, NT11 외부 수치 비교와 실제 결과의 독립 physics 평가는 아직 수행하지 않았다. diff --git a/src/fesa/CMakeLists.txt b/src/fesa/CMakeLists.txt index 83db881..f10bb5e 100644 --- a/src/fesa/CMakeLists.txt +++ b/src/fesa/CMakeLists.txt @@ -17,6 +17,7 @@ add_library( analysis/nonlinear_static_control.cpp analysis/nonlinear_static_procedure.cpp analysis/prepared_analysis.cpp + analysis/thermal_analysis_state.cpp analysis/thermal_time_grid.cpp app/fesa_application.cpp app/output_paths.cpp @@ -24,6 +25,7 @@ add_library( assembly/parallel_for.cpp assembly/sparse_assembler.cpp assembly/surface_pressure_assembler.cpp + assembly/thermal_assembler.cpp build_info.cpp constraints/essential_constraint_policy.cpp constraints/prescribed_displacement.cpp diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index b2e2f89..51fa5f2 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -19,10 +19,12 @@ add_executable( unit/analysis/nonlinear_static_control_test.cpp unit/analysis/newton_iteration_log_test.cpp unit/analysis/thermal_time_grid_test.cpp + unit/analysis/thermal_analysis_state_test.cpp unit/assembly/parallel_for_test.cpp unit/assembly/load_assembler_test.cpp unit/assembly/surface_pressure_assembler_test.cpp unit/assembly/sparse_assembler_test.cpp + unit/assembly/thermal_assembler_test.cpp unit/app/output_paths_test.cpp unit/constraints/boundary_condition_test.cpp unit/constraints/essential_constraints_test.cpp