sem_charging_series — GENERATIVE sem op

• Data kinds: image2d → video

• Call: import fullseye as fs; fs.ledger.sem_charging_series(height, material_map=None, *, materials=('PMMA',), substrate='SI', energy_kev: 'float' = 1.0, pixel_nm: 'float' = 2.0, beam_sigma_nm: 'float' = 1.0, electrons_per_pixel: 'int' = 30, detector: 'str' = 'inlens', frames: 'int' = 12, layer_bottom_nm=0.0, volts_per_electron: 'float' = 0.05, leak_frames: 'float' = 0.0, spread_px: 'float' = 1.0, phi_ev: 'float' = 2.0, gain=None, seed: 'int' = 0, return_potential: 'bool' = False) (implementation को सीधे call करना हो तो import sem; sem.sem_charging_series(height, material_map=None, *, materials=('PMMA',), substrate='SI', energy_kev: 'float' = 1.0, pixel_nm: 'float' = 2.0, beam_sigma_nm: 'float' = 1.0, electrons_per_pixel: 'int' = 30, detector: 'str' = 'inlens', frames: 'int' = 12, layer_bottom_nm=0.0, volts_per_electron: 'float' = 0.05, leak_frames: 'float' = 0.0, spread_px: 'float' = 1.0, phi_ev: 'float' = 2.0, gain=None, seed: 'int' = 0, return_potential: 'bool' = False), registry से लेना हो तो opsgenerative.get("sem_charging_series"))

उपयोग

scan के हर frame के साथ insulator की charging आगे बढ़ाकर image का समय-परिवर्तन लौटाना (video, (T, H, W))।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

1 コマで画素あたり electrons_per_pixel 個の電子が入り、η + δ·F(V) 個が出ていく。差し引き 1 − η − δ·F(V) 個が絶縁物の面に溜まり、電位を volts_per_electron [V/個] ずつ動かす(負の電子が溜まれば V は下がる)。電位は spread_px で横に広がり、leak_frames(> 0 なら)の時定数で抜ける。導体の面は接地(V = 0)。

• 正の帯電(η + δ > 1、低加速で多い): 二次電子が面に引き戻され(F(V)、sem_se_escape_fraction)、像は暗くなる。放出が減ると正味の流れも 0 に近づくので、電位は η + δ·F(V*) = 1 の V* で止まる(自己調整)。

• 負の帯電(η + δ < 1、高加速): 面の負の電位が二次電子を押し出し、像は 1 + |V| / (|V| + 20 V) 倍に明るくなる(★現象論の式で、2 定数は固定 —— _NEG_GAIN・_NEG_SCALE_V。着地エネルギーの低下とビームの曲がりは入れない)。

η と δ は sem_image のモンテカルロ(return_signals)で 1 回だけ求め、コマごとの雑音は検出された電子の数のポアソンで載せる。

Returns

numpy.ndarray

(frames, H, W) の float64、[0,1] (sem_image と同じ固定の倍率)。

return_potential なら dict(video と、コマごとの電位 potential_v (T, H, W)、

絶縁物の面のマスク insulator)。

Examples

>>> import numpy as np

>>> v = sem_charging_series(np.zeros((4, 4)), materials=("PMMA",), substrate="PMMA",

... electrons_per_pixel=5, frames=3)

>>> v.shape

(3, 4, 4)

उपयोग की विस्तृत guide

• generative_art family guide

संदर्भ (sample data, साहित्य)

• 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 में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_virtual_sem_kv_cd_bse — py -3.11 examples/poc_virtual_sem_kv_cd_bse.py

वे अगले ops जिनसे type जुड़ता है (video को input के रूप में लेते हैं)

—

इसी category के (sem)

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


*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.