gum_monte_carlo — SPC uncertainty op

• 数据种类:table → table

• 调用: import fullseye as fs; fs.ledger.gum_monte_carlo(table, u='u', sensitivity='sensitivity', n=200000, seed=0, level=0.95, correlation=None, distribution=None, value=None, power=None)(要直接调用实现,import spc; spc.gum_monte_carlo(table, u='u', sensitivity='sensitivity', n=200000, seed=0, level=0.95, correlation=None, distribution=None, value=None, power=None);从台账取用则 opsspc.get("gum_monte_carlo"))

用法

GUM 补充文件 1(JCGM 101)的蒙特卡罗分布传播(`table`)。

> 以下的详细说明为原文 —— 摘要与标题已翻译。

各入力量を分布から引いて `y = sum_i c_i x_i` を作り、標本から標準不確かさと

最短の包含区間を返す。既定は正規分布で、*distribution* に列名を渡すと

`gum_standard_uncertainty` と同じ形の名前(rectangular / triangular / ...)を

成分ごとに指定できる(半幅ではなく標準不確かさを持つ分布を作る)。

*value* と *power* に列名を渡すと 冪モデル を回す:

y = sum_i c_i (x_i + e_i)^{p_i}

(`e_i が分布から引いた揺らぎ。既定は x_i = 0 / p_i = 1` = 線形。)

冪までに絞ったのは、台帳に載る op は宣言的でなければならず、任意の関数を

受け取れないため —— それでも規格の非線形の例(二乗の和)はこれで表現でき、

伝播則が破綻する場面を再現できる。

★これは `gum_propagate` の独立な検算である。伝播則は偏微分と分散の代数、

こちらは乱数の標本 —— 導出も実装も別なので、線形モデルでは

`u_mc -> u_c`(1/sqrt(n) の速さ)に近づくはずで、近づかなければどちらかが

壊れている。相関は Cholesky 分解で入れるので、伝播則の相関項とは別の経路を通る。

★★非線形では両者が食い違うのが正しい。規格の例(比較損失

`dY = X1^2 + X2^2、各 u = 0.005)を x1 = x2 = 0` で回すと:

伝播則 感度 `c_i = 2 x_i が**両方 0** になるので u_c = 0`、区間 [0, 0]

モンテカルロ `dy = 50e-6、u = 50e-6、区間 [0, 150e-6]`

伝播則は「不確かさゼロ」と答える —— これは実装の誤りではなく、**1 次近似が

極値で情報を失う**という手法そのものの限界。こういう場面があるから補遺 1 の

モンテカルロが要る。`x1 = 0.010 では伝播則の区間が [-96, +296]e-6` と

負の損失を含み(物理的にありえない)、`x1 = 0.050` まで離れると

`[1520, 3480] 対 [1590, 3543]` と近づく。

★★**正規分布でない入力では、包含区間は `k u_c` と一致しない**。矩形分布を

足し合わせると中心極限定理で正規に近づくが、成分が 1 つだけなら最短 95 % 区間の

半幅は **`0.95 a**(支持の端 a` ではない —— 95 % ぶんの幅しか要らない)で、

`k u = 1.96 a/sqrt(3) = 1.1316 a` より狭い。比は

`1.959964/(sqrt(3) x 0.95) = 1.1911` という閉形式で、実測 1.1914。

これは欠陥ではなく伝播則が分布の形を捨てていることの現れなので、両方返して

読み手に見せる(この 0.95 を最初 `a` と思い込んで門を誤らせた)。

参考(示例数据・文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者・年份)与用途见上面的族使用指南。

可运行的示例(实际调用该算子并已验证的样例)

• poc_measurement_system_analysis — py -3.11 examples/poc_measurement_system_analysis.py

类型可衔接的下一个算子(可接受 table 作为输入)

msa_anova_table · msa_gauge_rr · msa_bias_linearity · msa_attribute_agreement · gum_standard_uncertainty · gum_propagate · gum_expanded · gum_validate

同类别(uncertainty)

gum_standard_uncertainty · gum_propagate · gum_expanded · gum_validate


*Provenance: spc.py — SPC 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.