Pyspice is a Python-based pre-processor for SPICE, inspired by spicepp by John Sheahan.
This pre-processor is developed using Python 2.4 and employs a few features which were introduced in 2.4, and that are related to sorting and resorting the netlist lines. Here are some important key features of Pyspice:
- Every input "card" type has its corresponding object type.
- Netlists are transformed into an array of type instances.
- Netlist order is maintained for enhanced readability.
- Pyspice.py's prominent features: parallel capacitors are merged, parallel MOSFETs are combined, and small capacitors are omitted for faster simulation.
To use it, simply execute: chmod +x pyspice.py [options] [-i infile] [-o outfile]. The command "pyspice.py -h" lists all options. The latest version includes:
- Handling for all element types.
- NOTE: Combining applies a global node name scheme. Thus, the subcircuits, libraries, etc. are not in a separate node namespace as they should be, be cautious.
- A structure overhaul of classes (in LEO) - with base classes that store common features and element classes that identify specific features.
- This version is expected to work with any netlist and only modify M's and C's.
- Work is in progress on the class structure, and implementing the netlist hierarchy is an essential aspect.
Version 0.2: N/A