I run an Ngspice Analysis, constructing a netlist and NgspiceRunner.

Class Variable details Set True to see what happens on STDIO between Python and Ngspice.
Method __init__ Undocumented
Method plot_AC Does an AC subplot of the circuit's frequency response.
Method plot_TRAN Does a time-domain subplot of the circuit's transient response to a step input. Places an annotation on the output ('load') node voltage at one total system time constant.
Method run Runs an AC analysis and a transient analysis in a non-blocking asynchronous manner and using two separate Ngspice processes running in parallel.
Method _run Undocumented
details =
Set True to see what happens on STDIO between Python and Ngspice.
def __init__(self):
Undocumented
def plot_AC(self, sp, V):

Does an AC subplot of the circuit's frequency response.

def plot_TRAN(self, sp, V):

Does a time-domain subplot of the circuit's transient response to a step input. Places an annotation on the output ('load') node voltage at one total system time constant.

@defer.inlineCallbacks
def _run(self):
Undocumented
def run(self):

Runs an AC analysis and a transient analysis in a non-blocking asynchronous manner and using two separate Ngspice processes running in parallel.

Does a subplot of each result and exits when the plot is closed.

This is all accomplished by calling my _run method, with an error callback added to the resulting Deferred object. This is good Twisted programming practice to deal with the inevitable errors that occurr during program development.

API Documentation for pingspice, generated by pydoctor at 2021-09-18 08:41:11.