Skip to main content

Spice Raw Parser (spr)

A tiny Python package to parse spice raw data files.

Getting Started

These instructions will get you a copy of the package up and running on your local machine.

Note: at the moment only ascii raw spice format is supported!

Installation

From PyPI

pip install spr

From source code

pip install git+https://github.com/goncalo-godwitlabs/spr.git

or

git clone git@github.com:goncalo-godwitlabs/spr.git
cd spr/
make install

Usage

Just run:

from spr import load_raw
data = load_raw("/path/to/rawspice.raw")

Data structure

A properly parsed raw spice file by load_raw() returns a dictionary with the following structure:

{
    "title": <str>,
    "date:": <str>,
    "plotname:": <str>,
    "flags:": <str>,
    "no_vars:": <str>,
    "no_points:": <str>,
    "vars": [
        { "idx": <int>, "name": <str>, "type": <str> },
        { "idx": <int>, "name": <str>, "type": <str> }
        ...
        { "idx": <int>, "name": <str>, "type": <str> }
    ]
    "values": {
        "var1": <numpy.ndarray>,
        "var2": <numpy.ndarray>,
        ...
        "varN": <numpy.ndarray>
    }
}

Where values values is a numpy structured array with the actual data.

Examples

The following examples make use of ngspice to run the spice simulations, so please ensure it is installed. On ubuntu that would be:

sudo apt install ngspice

Inverting amplifier with an opamp LM741

Check the directory examples/amplifier/ for details on the cirtcuit and the simulation files.

The schematic:

Run the simulation with:

git clone git@github.com:goncalo-godwitlabs/spr.git
cd spr
make run-example-amplifier

which will fire ngspice generating output.log and rawspice.raw files and also plots the voltages vin and vout.

Second order low pass filter with an opamp LM741

Check the directory examples/lp_filter/ for details on the cirtcuit and the simulation files.

The schematic:

Run the simulation with:

git clone git@github.com:goncalo-godwitlabs/spr.git
cd spr
make run-example-lp_filter

which will fire ngspice generating output.log and rawspice.raw files and also plots the gain vout/vin in dB.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Metadata

Release files for spr 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for spr 0.2.1
File Size Uploaded
spr-0.2.1.tar.gz 3.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for spr 0.2.1
File Interpreter ABI Platform
spr-0.2.1-py2-none-any.whl Python 2 none any Details

Total release size: 7.2 kB

Release files / spr-0.2.1.tar.gz

Download URL spr-0.2.1.tar.gz
Size 3.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9699478ab712c4c40a050824aecc642885e902d5f004131229d53906b21be44e
BLAKE2b-256 checksum
How to use checksums
172d985d639ea5663e6bff8222f0f1c4d736df31d719e5f2b9681a03b11912ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / spr-0.2.1-py2-none-any.whl

Download URL spr-0.2.1-py2-none-any.whl
Size 3.8 kB
Tags Python 2
SHA-256 checksum
How to use checksums
ae44021c85638fd0b6b3447368e8f8ce38737b109db418bf902de581a7fcc4dc
BLAKE2b-256 checksum
How to use checksums
73a0163d79c601883ed53da9d665318fcd5418ea48f68bfdc4885b817f6b1037
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page