|
| 1 | +#################################################################################################### |
| 2 | + |
| 3 | +import matplotlib.pyplot as plt |
| 4 | + |
| 5 | +import PySpice.Logging.Logging as Logging |
| 6 | +logger = Logging.setup_logging() |
| 7 | + |
| 8 | +from PySpice.Doc.ExampleTools import find_libraries |
| 9 | +from PySpice.Spice.Library import SpiceLibrary |
| 10 | +from PySpice.Spice.Netlist import Circuit |
| 11 | +from PySpice.Unit import * |
| 12 | + |
| 13 | +#################################################################################################### |
| 14 | + |
| 15 | +libraries_path = find_libraries() |
| 16 | +spice_library = SpiceLibrary(libraries_path) |
| 17 | + |
| 18 | +#################################################################################################### |
| 19 | + |
| 20 | +circuit = Circuit('test') |
| 21 | + |
| 22 | +R1 = circuit.R(1, 'p1', 'p2', 4@u_kΩ) |
| 23 | +R2 = circuit.R(2, 'p2', 'p6', 1@u_kΩ) |
| 24 | +R3 = circuit.R(3, 'p1', 'p5', 1@u_kΩ) |
| 25 | +R4 = circuit.R(4, 'p5', 'p6', 1@u_kΩ) |
| 26 | +R5 = circuit.R(5, 'p6', 0, 1e-9@u_Ω) |
| 27 | + |
| 28 | +I1 = circuit.I(1, 0, 'p1', 1@u_A) |
| 29 | + |
| 30 | +V1 = circuit.V(1, 'p1', 'p4', -10@u_V) |
| 31 | +V2 = circuit.V(2, 'p2', 'p3', -10@u_V) |
| 32 | + |
| 33 | +print(str(circuit)) |
| 34 | + |
| 35 | +simulator = circuit.simulator(simulator='xyce-serial') |
| 36 | + |
| 37 | +analysis = simulator.operating_point() |
| 38 | + |
| 39 | +for node in analysis.nodes.values(): |
| 40 | + print('Node {}: {:5.2f} V'.format(str(node), float(node))) |
| 41 | +for node in analysis.branches.values(): |
| 42 | + print('Node {}: {:5.2f} A'.format(str(node), float(node))) |
0 commit comments