modify tolerance policy
This commit is contained in:
@@ -3,11 +3,15 @@
|
||||
## Status
|
||||
|
||||
- date: `2026-08-17`
|
||||
- status: `approved-design-pending-implementation`
|
||||
- status: `implemented-and-verified`
|
||||
- verified_on: `2026-08-18`
|
||||
- scope: 모든 FESA 외부 reference comparison
|
||||
- production_solver_behavior: 변경 없음
|
||||
- reference_artifact_mutation: 금지
|
||||
|
||||
현재 운영 상수, 검증 순서, report schema와 변경 관리는 `docs/TOLERANCE.md`를 source of
|
||||
truth로 사용한다. 이 문서는 승인 결정의 설계 근거와 대안 검토를 보존한다.
|
||||
|
||||
## 목적
|
||||
|
||||
B33, MITC4 및 이후 추가되는 기능이 서로 다른 수치 tolerance 식을 만들지 않도록 공통
|
||||
@@ -67,6 +71,26 @@ S_g = \max_{i \in g}|R_i|
|
||||
dimension, components 및 behavior를 명시해 family에 배치한다. 물리 차원이 같다는 이유만으로
|
||||
서로 다른 logical quantity를 자동으로 합치지 않는다.
|
||||
|
||||
### B33 element-endpoint identity amendment
|
||||
|
||||
2026-08-18에 사용자가 다시 생성한
|
||||
`reference/cantilever beam/cantilever beam elemental forces.csv`는 `Element Label`과
|
||||
`Node Label`을 모두 포함하고 B33 요소마다 두 endpoint 행을 제공한다. Section-resultant
|
||||
comparison은 다음 key로 각 CSV 행을 HDF5 `[element, endpoint, component]` 행에 직접
|
||||
대응시킨다.
|
||||
|
||||
```text
|
||||
(model_id, step/frame, instance_name, source_element_label,
|
||||
source_node_label, quantity, component)
|
||||
```
|
||||
|
||||
Component mapping은 `SF-SF1 -> N`, `SM-SM1 -> My`, `SM-SM2 -> Mz`,
|
||||
`SM-SM3 -> T`다. Comparator는 이 CSV를 source-node station으로 collapse하거나 인접
|
||||
endpoint를 평균하지 않는다. Missing, extra, duplicate 또는 connectivity-mismatched
|
||||
element-endpoint identity는 tolerance 전에 실패한다. Production
|
||||
`ResultRecovery::NormalizeSectionResultantsToNodeStations` 계약과 그 단위 테스트는 이 외부
|
||||
reference identity 변경의 범위가 아니다.
|
||||
|
||||
## 행별 판정
|
||||
|
||||
각 대응 행에 대해 다음 absolute error를 계산한다.
|
||||
@@ -149,15 +173,16 @@ Comparator report는 최소한 다음 항목을 보존한다.
|
||||
|
||||
## 현재 B33/MITC4 Evidence
|
||||
|
||||
기존 solver를 재실행하거나 reference artifact를 수정하지 않고 다음 생성 ledger의 원본
|
||||
FESA/reference 값을 새 규칙으로 재계산했다.
|
||||
MSVC Debug build와 214개 CTest를 통과한 현재 comparator가 다음 ledger를 생성했다.
|
||||
Reference artifact는 수정하지 않았으며 B33은 regenerated 20-row element-endpoint identity를
|
||||
직접 비교한다.
|
||||
|
||||
- `.harness/build/reference/cantilever-beam-b33/comparison.json`
|
||||
- `.harness/build/reference/mitc4-shell-s4-comparison/comparison.json`
|
||||
|
||||
| case | row gate | maximum family relative RMS | RMS gate | verdict |
|
||||
| --- | --- | ---: | --- | --- |
|
||||
| B33 | 모든 blocking 행 통과 | 약 `1.17e-8` | 통과 | 통과 |
|
||||
| B33 direct endpoint | 모든 212 blocking 행 통과 | 약 `1.17e-8` | 통과 | 통과 |
|
||||
| MITC4 U | 모든 blocking 행 통과 | 약 `1.03e-3` | 통과 | 통과 |
|
||||
| MITC4 UR | 모든 warning-only 행 통과 | 약 `2.98e-3` | 통과 | warning 없음 |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user