rizer.boulder_plugin.scope#

Boulder “Scope” output pane: electrical signals (V & I) of the stage group.

An oscilloscope-style tab, available for every simulation that contains rizer stages (PlasmaReactor2T, HybridDischarge2T, SpiceCircuit). With a rizer node selected it scopes that node; otherwise it scopes every rizer stage in the run (the “default” stage group view), prefixing trace names with the node id when several are shown.

One combined interactive Plotly figure (stacked subplots share the x-axis, so zooming stays synchronized), one quantity per panel:

  • Voltages — every voltage signal on shared axes so they are directly comparable (e.g. the generator waveform V_gen vs the plasma voltage V_plasma with its cable reflections; a spice circuit’s u_mes/u_c).

  • Currents — I_gen, recorded I, or the derived I_plasma = V_plasma / R_p.

  • Plasma resistance — when the model provides R_p (log scale).

Time base: the experimenter’s (lab-frame) timescale. The NRP circuit model works in retarded time — the direct wave reaches the plasma at t = 0+ — so plasma-end signals (V_plasma, currents, R_p) are shifted by the one-way cable propagation delay L/c while generator-side signals (V_gen, u_mes, u_c) stay at emission time. The plasma voltage can therefore never precede the generator ramp, as on a real oscilloscope.

Classes#

RizerScopePane

The Scope results tab: comparable V & I traces on a shared time axis.

Module Contents#

class rizer.boulder_plugin.scope.RizerScopePane#

Bases: boulder.output_pane_plugins.OutputPanePlugin

The Scope results tab: comparable V & I traces on a shared time axis.

property plugin_id: str#

Unique identifier for this plugin.

property tab_label: str#

Label to display on the tab.

property tab_icon: str | None#

Optional icon for the tab (Bootstrap icon class).

property requires_selection: bool#

Whether this plugin requires a reactor/element to be selected.

property supported_element_types: List[str]#

List of element types this plugin supports.

is_available(context: boulder.output_pane_plugins.OutputPaneContext) → bool#

Check if this plugin should be available given the current context.

Parameters:

context – Current context information.

Returns:

True if the plugin should be shown, False otherwise.

Return type:

bool

create_content_data(context: boulder.output_pane_plugins.OutputPaneContext) → Dict[str, Any]#

Create JSON-serialisable content data for this output pane.

The returned dictionary should describe the content to render. Common shapes:

  • {"type": "image", "src": "data:image/png;base64,...", "alt": "..."}

  • {"type": "text", "content": "..."}

  • {"type": "error", "title": "...", "message": "..."}

Parameters:

context – Current context information.

Returns:

JSON-serialisable content descriptor.

Return type:

dict