検証方針
検証には4段階の出典(Tier)を使い分けます。信頼度の高い順に並んでいます。
| Tier | 出典 | 内容 |
|---|---|---|
| Tier 1 | 規格Annex例題 | IEC 60534-2-1 / ISO 5167 の附属書に記載された数値例 |
| Tier 2 | メーカーハンドブック | Crane TP-410等、公開されている係数・数値表 |
| Tier 3 | fluidsライブラリ | 独立実装のPythonライブラリ「fluids」による計算値 |
| Tier 4 | 手計算 | 基本式から手で導いた期待値(境界値・回帰テスト用) |
メーカー製サイジングソフトとの照合は行っていません。PICOTは各社の弁・オリフィス特性を再現するものではなく、公開されている規格式を独自に実装しているためです。
許容誤差
比較にはすべて相対誤差を用います。桁の異なる物理量(PaとMPa、Reが1e6など)を絶対誤差で比較すると、 小さい値の判定が過度に厳しくなるためです。
| 比較の種類 | 許容誤差 | 備考 |
|---|---|---|
| 単位換算(オフセットなし) | 1e-12 | — |
| 単位換算(オフセットあり) | 1e-9 | ゲージ⇔絶対圧、℃⇔K⇔℉。大気圧・273.15の減算による桁落ち分を見込む |
| 往復変換 A→B→A | 1e-10 | — |
| fluidsライブラリ(Tier3)との照合 | 1e-4 | — |
| 規格例題(Tier1)との照合 | 5e-3 | 規格側の記載値が有効数字3〜4桁で丸められている分を見込む |
| L3クロスチェック(SI⇔Imperial入力の一致) | 1e-9 | — |
| IEC規格表のN係数の丸め差 | 3e-3 | PICOTはIEC規格表のN係数(有効数字3桁)、fluidsは厳密係数を使用。どちらも規格準拠と判定した項目にのみ適用 |
最終検証日・実行環境
- 参照値(Tier1・Tier3)の生成日:2026-08-11
- 参照値の生成環境:Python 3.12.3、fluids 1.3.1
- 直近のテスト実行:2026-08-13 04:53 UTC (Node.js v20.18.1、Vitest 4.1.10)
- 結果:全380件中373件成功・7件todo (未検証・未実装のため意図的に保留)
このセクションの件数は、npm testの実行結果から自動生成されます。 生成先はtests/validation-summary.jsonです。 手動での書き換えはしていません。