Skip to main content

Module spice

Module spice 

Source
Expand description

ngspice integration for golden reference generation.

This module provides functions to run ngspice simulations and extract output for comparison with WDF results.

§Requirements

ngspice must be installed and available in PATH:

  • macOS: brew install ngspice
  • Ubuntu/Debian: apt install ngspice
  • Windows: Download from ngspice.sourceforge.io

§Example

ⓘ
use pedalkernel_validate::spice::{SpiceRunner, SpiceConfig};
use pedalkernel_validate::signals;

let config = SpiceConfig {
    sample_rate: 96000,
    oversample: 4,
};

let runner = SpiceRunner::new(config);

// Generate input signal
let input = signals::sine(config.internal_rate(), 1000.0, 0.1, 1.0);

// Run SPICE simulation
let output = runner.simulate(
    "circuits/nonlinear/diode_clipper.spice",
    &input,
    "v_out"
).unwrap();

Structs§

SpiceConfig
Configuration for SPICE simulations.
SpiceDeviceOp
One device’s DC operating point as reported by ngspice’s .op / show.
SpiceOpSnapshot
A full ngspice .op snapshot: per-device operating points plus node voltages.
SpiceRunner
Runner for ngspice simulations.

Enums§

SpiceError

Functions§

generate_golden
Generate golden references for a test circuit.