sem_electron_mc — GENERATIVE sem op

• Data kinds: none → table (an op determined by its arguments alone — it takes no image or data input)

• Call: import fullseye as fs; fs.ledger.sem_electron_mc(material='SI', energy_kev: 'float' = 10.0, *, tol: 'float' = 0.01, batch: 'int' = 1000, max_electrons: 'int' = 20000, seed: 'int' = 0, n_tracks: 'int' = 0, depth_bins: 'int' = 60, tilt_deg: 'float' = 0.0) -> 'dict' (to call the implementation directly, import sem; sem.sem_electron_mc(material='SI', energy_kev: 'float' = 10.0, *, tol: 'float' = 0.01, batch: 'int' = 1000, max_electrons: 'int' = 20000, seed: 'int' = 0, n_tracks: 'int' = 0, depth_bins: 'int' = 60, tilt_deg: 'float' = 0.0) -> 'dict'; from the registry, opsgenerative.get("sem_electron_mc"))

Usage

Monte Carlo of electrons fired into a flat specimen: backscatter coefficient η, secondary-electron yield δ and interaction volume.

> The detailed description below is the original text — the summary and the headings are translated.

Joy の単散乱モデル(遮蔽ラザフォード + Joy-Luo の阻止能)で一次電子を 1 個ずつ追い、batch 個ずつ足して 95 % 信頼区間の半幅が η で tol、δ で tol·max(δ, 1) を切ったら止める(max_electrons で打ち切り、その時は converged が False)。

Parameters

material : str

材料表の名前(materials.material_electron_properties が引ける物。SI / W / AU /

SILICA / PMMA …)。Z・A・密度・二次電子の 2 定数はそこから取る。

energy_kev : float

加速電圧 [keV] (0.1〜50)。

tol : float

信頼区間の半幅の目標。

batch, max_electrons : int

1 回に足す電子の数と上限。

seed : int

乱数の種(同じ種なら同じ結果)。

n_tracks : int

軌跡を返す電子の数(図用)。

depth_bins : int

深さ分布の区間の数(0〜1.2 R_KO)。

tilt_deg : float

試料の傾き [度] (0〜80)。ビームが法線から θ 傾いて入る。δ(θ)/δ(0) を sec θ と、

η(θ) を Arnal ほかの (1 + cos θ)^(−9/√Z) と比べるのに使う。

Returns

dict

eta / eta_ci95 / se_yield / se_yield_ci95 / n_electrons /

converged / range_ko_nm(Kanaya-Okayama)/ depth_max_nm・

depth_p95_nm・depth_p50_nm(電子ごとの最大の深さ)/ lateral_p95_nm

(沈着エネルギーの 95 % が入る半径)/ depth_dose(pairs: 深さ [nm] と

沈着エネルギーの割合)/ bse_energy(pairs: E/E0 と反射電子の割合)/

tracks(各 (K, 3) [nm]、z は下向きが正)。

Examples

>>> r = sem_electron_mc("SI", 5.0, tol=0.03, batch=400, max_electrons=800)

>>> 0.1 < r["eta"] < 0.3 and r["depth_max_nm"] < r["range_ko_nm"]

True

Detailed usage guide

• generative_art family guide

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_virtual_sem_kv_cd_bse — py -3.11 examples/poc_virtual_sem_kv_cd_bse.py

Ops the type connects to (they accept table as input)

perpetual_step · perpetual_render

Same category (sem)

sem_render · sem_se_universal_curve · sem_yield_curve · sem_line_profile · sem_cd_measure · sem_image · sem_se_escape_fraction · sem_charging_series


*Provenance: sem.py — GENERATIVE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

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