modify tolerance policy
This commit is contained in:
+19
-10
@@ -3,11 +3,16 @@
|
||||
## Status
|
||||
|
||||
- date: `2026-08-12`
|
||||
- amended_on: `2026-08-18`
|
||||
- status: `approved`
|
||||
- scope: FESA project policy, agents, skills, and `linear-static-mitc4-shell` upstream contracts
|
||||
- implementation_code: out of scope
|
||||
- reference_artifact_mutation: prohibited
|
||||
|
||||
2026-08-18 amendment: the former MITC4 fixed absolute tolerance is superseded by the common
|
||||
family-scale row/RMS policy in `2026-08-17-common-reference-tolerance-design.md` and ADR-022.
|
||||
The independent-solver, minimal-reference-case and drilling decisions remain unchanged.
|
||||
|
||||
## Decision
|
||||
|
||||
FESA is an independent finite element solver. It accepts an approved subset of the
|
||||
@@ -84,19 +89,23 @@ Only matched global `U1/U2/U3` rows are blocking. `UR1/UR2/UR3` rows are compare
|
||||
reported as warning-only evidence. Reactions and stresses may be inspected but are not
|
||||
reference pass/fail quantities.
|
||||
|
||||
For every matched U/UR row:
|
||||
The project-wide common policy now evaluates each matched U/UR component family:
|
||||
|
||||
```text
|
||||
tolerance = 1.0e-5
|
||||
S = max(abs(reference_value_i))
|
||||
near_zero_i = abs(reference_value_i) <= 0.01 * S
|
||||
ordinary_row_pass_i = abs(error_i) / abs(reference_value_i) <= 0.05
|
||||
near_zero_row_pass_i = abs(error_i) <= 0.01 * S
|
||||
relative_rms = sqrt(mean(error_i^2)) / S <= 0.01
|
||||
```
|
||||
|
||||
The fixed value is expressed in the model's user-consistent length unit for translation
|
||||
and as a dimensionless rotation value for warning-only UR. Reference scale may remain
|
||||
diagnostic report data but does not enter the tolerance or normalized-error denominator.
|
||||
Values are not zero-clamped. Missing, duplicate, unmatched, or nonfinite required rows
|
||||
fail before numeric tolerance evaluation. U tolerance failure fails reference
|
||||
verification; UR tolerance exceedance emits a deterministic warning only. The B33 mixed
|
||||
tolerance remains unchanged.
|
||||
The scale is computed from read-only reference values in the same model, step/frame,
|
||||
quantity and component family. If `S == 0`, only exact-zero FESA values pass; otherwise
|
||||
the reason is `zero-reference-scale-nonzero-error`. There is no independent absolute-error
|
||||
gate. Values are not zero-clamped. Missing, duplicate, unmatched, or nonfinite required
|
||||
rows fail before numeric tolerance evaluation. U tolerance failure fails reference
|
||||
verification; UR tolerance exceedance emits a deterministic warning only. B33 uses the
|
||||
same row and family-RMS thresholds.
|
||||
|
||||
No additional locking, convergence, distorted, curved, director-angle, or invalid
|
||||
geometry reference portfolio is required for this MITC4 implementation acceptance.
|
||||
@@ -147,7 +156,7 @@ For MITC4:
|
||||
|
||||
- fixed drilling stabilization closes `NR-O01` and removes `NR-O02` by scope;
|
||||
- `NR-O03` and `NR-O04` are removed from the approved verification scope;
|
||||
- the fixed absolute MITC4 tolerance `1.0e-5` closes the blocking part of `NR-O05`;
|
||||
- the common family-scale row/RMS policy closes the blocking part of `NR-O05`;
|
||||
- missing heavyweight reference metadata is `not-required-by-policy`;
|
||||
- confirmed formulation defects remain blocking.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user