Connect HHT field convergence to production acceptance and v2 logs
This commit is contained in:
@@ -105,3 +105,27 @@ Procedure는 family별 completed outcome을 반환하며 로그 close와 최종
|
||||
Hex8/HHT Python 비교기는 입력·reference·HDF5를 읽고 지정한 JSON report만 쓴다.
|
||||
Solver를 기동하거나 원본을 수정하지 않는다. 입력 부재·hash 충돌·schema/identity/finite
|
||||
불일치는 실패이며 합성 fixture 통과는 실제 모델 성공을 뜻하지 않는다.
|
||||
|
||||
## Shell HHT iteration 로그 독자
|
||||
|
||||
Frame0과 직접 v1 writer는 기존 `hht-log-v1` 의미를 유지한다. 양의 reduced-coordinate
|
||||
MITC4 HHT 증분은 `hht-log-v2`, `policy_id=abaqus2025-field-on-fesa-v1`을 기록하므로
|
||||
한 파일 안의 각 record에서 schema를 읽는다. v1 숫자를 v2 field 값으로 재해석하지 않는다.
|
||||
V2의 고정 키 순서·분기·단위·평균·threshold는
|
||||
[field 수렴 정식화](abaqus-tolerance/formulation-convergence.md#로그-소비-계약)를 따른다.
|
||||
`strict_` 진단은 기존 힘/모멘트 residual과 무차원 q/v/a/A correction이며 종료 기준이 아니다.
|
||||
|
||||
UTF-8 LF 한 줄과 tab 구분 key=value를 사용한다. 첫 `=`만 구분자이며 값의 backslash,
|
||||
tab, LF, CR은 각각 `\\`, `\t`, `\n`, `\r`로 escape한다. 미평가 numeric/bool은
|
||||
literal `not-evaluated`, 평가 bool은 `0`/`1`이다. 독자는 중복·필수키 누락·알 수 없는
|
||||
branch/policy/schema·NaN/Inf를 오류로 처리한다. 숫자는 locale-independent binary64
|
||||
round-trip 표현이며 step은 raw source 이름이다. 실패 전 평가된 부분값만 보존한다.
|
||||
`field_pass=1`은 후속 acceptance 통과를 뜻하지 않는다. `accepted=1`도 최종 HDF5 성공을
|
||||
뜻하지 않으며 CLI exit와 완결 결과 identity를 함께 확인한다. 실패 증분은 accepted
|
||||
frame/private/flux history에 반영되지 않는다.
|
||||
|
||||
현재 acceptance transaction은 기존 accepted frame 전체를 가진 state를 지역 staged copy로
|
||||
검증·commit한 뒤 로그 write/flush 성공 시 move로 공개한다. private/flux history도 같은
|
||||
성공 경계에서만 교체한다. 이 최소 구현은 증분마다 누적 frame 수에 비례하는 copy 시간과
|
||||
추가 메모리를 사용하므로 전체 실행의 복사 비용은 frame 수에 대해 이차로 증가할 수 있다.
|
||||
후보의 실제 elapsed 측정에는 이 비용을 포함하며 출력 실패 안전성을 위해 이를 생략하지 않는다.
|
||||
|
||||
Reference in New Issue
Block a user