fullseye

mc_photon_slab — CONVERGE montecarlo op

使い方

Diffuse reflectance, total transmittance and absorption of a layered turbid slab by MCML-type Monte Carlo, with confidence intervals.

layers: list of {"n", "mua", "mus", "g", "d"} from the top (coefficients in 1/length, thickness in the same length; d = inf for a semi-infinite last layer). n_above / n_below: ambient refractive indices. A pencil beam enters at normal incidence.

The tracing rules are those of the MCML manual (Wang & Jacques), eqs. 3.2a-3.31 — see the module docstring for which equation does what. Every packet’s contribution is kept, so the standard error is the sample standard deviation over packets / sqrt(N) and the interval is mean +- z se (confidence). Batch b uses default_rng((seed, b)).

Returns Rd, Tt, A (absorbed fraction) and A_layers, each with *_se and *_ci; Rsp (specular, deterministic: eq. 3.2a); energy_balance = R_sp + R_d + T_t + A (1 in expectation — roulette conserves energy only on average, so its deviation is compared with its own standard error); R_total = R_sp + R_d (specular plus diffuse, with the interval of R_d shifted by the deterministic R_sp); n_photons. Defaults: the MCML manual Table 6.1 slab (van de Hulst: R_d = 0.09739, T_t = 0.66096); MCML_TABLE_6_2 holds Table 6.2.

詳しい使い方ガイド

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(table を入力に取れる)

—

同カテゴリ(montecarlo)

mc_sequential_mean


Provenance: mcphoton.py — CONVERGE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

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