sem op• Data kinds: image2d → image2d
• Call: import fullseye as fs; fs.ledger.sem_image(height, material_map=None, *, materials=('SI',), substrate='SI', energy_kev: 'float' = 5.0, pixel_nm: 'float' = 2.0, beam_sigma_nm: 'float' = 1.0, electrons_per_pixel: 'int' = 30, detector: 'str' = 'inlens', layer_bottom_nm=0.0, buried=None, gain=None, seed: 'int' = 0, return_signals: 'bool' = False) (implementation को सीधे call करना हो तो import sem; sem.sem_image(height, material_map=None, *, materials=('SI',), substrate='SI', energy_kev: 'float' = 5.0, pixel_nm: 'float' = 2.0, beam_sigma_nm: 'float' = 1.0, electrons_per_pixel: 'int' = 30, detector: 'str' = 'inlens', layer_bottom_nm=0.0, buried=None, gain=None, seed: 'int' = 0, return_signals: 'bool' = False), registry से लेना हो तो opsgenerative.get("sem_image"))
height field और material map से हर pixel में electrons दागकर SEM image बनाना (direct Monte Carlo)।
> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।
各画素に electrons_per_pixel 個の一次電子(ビーム幅 beam_sigma_nm のガウシアン) を撃ち、検出器の信号を電子 1 個あたりで平均する。雑音は撃った電子の数そのもの (反射電子も二次電子も 1 個ずつの統計)なので、別のポアソン雑音は載せない。
height : array_like
(H, W) の高さ場 [nm] (上が正)。
material_map : array_like of int, optional
(H, W) の材料番号(materials の添字)。表面から layer_bottom_nm までの柱の
材料。それより深い所は substrate。None は全部 materials[0]。
materials : sequence of str
材料表の名前の列。
substrate : str
基板の材料。
energy_kev, pixel_nm, beam_sigma_nm : float
加速電圧 [keV]・画素の一辺 [nm]・ビームの σ [nm]。
electrons_per_pixel : int
画素あたりの一次電子の数(像の S/N を決める)。
detector : str
inlens(レンズ内の二次電子)/ everhart(側方の二次電子、+x 側、SE3 込み)/
bse(真上の環状の反射電子、エネルギー重み)/ se_total(検出器なしの全収率)。
layer_bottom_nm : float or array_like
材料の柱の下端の z [nm] (0 = 基板の上面。正は基板の中へ)。
buried : list, optional
埋もれた箱 [(材料名, (H, W) のマスク, 上端の深さ, 下端の深さ), ...] [nm]。
gain : float, optional
信号 → [0,1] の固定の倍率(既定は検出器ごとの定数。画像ごとに正規化しない)。
seed : int
乱数の種。
return_signals : bool
True なら像の代わりに dict(4 検出器の信号の地図と η の地図)を返す。
numpy.ndarray
(H, W) の float64、[0,1]。
>>> import numpy as np
>>> img = sem_image(np.zeros((6, 6)), energy_kev=1.0, electrons_per_pixel=5)
>>> img.shape, bool(0.0 <= img.min() and img.max() <= 1.0)
((6, 6), True)
• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।
• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।
• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।
• poc_virtual_sem_kv_cd_bse — py -3.11 examples/poc_virtual_sem_kv_cd_bse.py
image2d को input के रूप में लेते हैं)sem_render · sem_charging_series · pl_image_simulate
sem)sem_render · sem_electron_mc · sem_se_universal_curve · sem_yield_curve · sem_line_profile · sem_cd_measure · sem_se_escape_fraction · sem_charging_series
*Provenance: sem.py — GENERATIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.