1 oscopy -- An interactive program to view electrical results
5 This is oscopy, a kind of oscilloscope in python, to view 2D electrical
6 simulation or measurement results.
7 It is designed to easily add new input data file formats and new types of plots.
9 * Post-processing: math expressions, fft, diffs
10 * View, examine: multiple windows, cursors
12 * Data export: gnucap, pictures
14 * D-Bus support: update recursively signals
15 * Run netlister and simulator
17 There are two interfaces:
18 * Command-line interface (CLI): oscopy_app.py
19 * Graphical user interface (GUI) fully integrating the CLI: oscopy_ui.py
20 Scripting is supported in both application, although in the GUI some commands are disabled since plots are displayed dynamically.
22 Support for mathematic with signals is implemented. Supported functions:
24 Support for (i)fft: fft(v1) + fft(v2) is possible, but please avoid things like ifft(fft(v1) + fft(v2))
25 First order diff is supported: diff(v1) or diff(v1, 1)
26 Access to X axis data is provided through Time and Freq, e.g. sin(Time(vsqu)*1e6)
28 In each plot window, horizontal and vertical cursors can be toggled by using keys '1', '2', '3' and '4'.
32 The source can be downloaded from repo.cz:
33 http://repo.or.cz/w/oscopy.git
36 $ git clone git://repo.or.cz/oscopy.git
40 Oscopy can work out of the box when downloaded, but it supports also installing on the system using autotools.
42 $ ./autogen.sh && ./configure && make
52 If you want to install oscopy on a system:
53 # ./autogen.sh && ./configure && make install
57 To run the program, just do ./oscopy_app or ./oscopy_ui.
59 To get any info on available commands, type 'help'.
61 A sample circuit is provided for demonstration purposes.
62 From oscopy directory, prepare the demo circuit files
64 $ gnetlist -g spice-sdb -s -o demo.net demo.sch
69 $ ./oscopy_app.py -b demo/demo.oscopy
73 then in the terminal window:
74 oscopy> exec demo/demo.oscopy
78 add SIG [, SIG [, SIG]...]
79 Add a graph to the current figure
81 create [SIG [, SIG [, SIG]...]]
82 Create a new figure, set_ it as current, add the signals
85 Delete a graph from the current figure
94 execute commands from file
97 set the scaling factor of the graph (in power of ten)
98 use 'auto' for automatic scaling factor
99 e.g. factor -3, 6 set the scale factor at 1e-3 and 10e6
102 Print the list of figures
104 freeze SIG [, SIG [, SIG]...]
105 Do not consider signal for subsequent updates
107 insert SIG [, SIG [, SIG]...]
108 Insert a list of signals into the current graph
110 layout horiz|vert|quad
111 Define the layout of the current figure
113 math destsig=mathexpr
114 Define a new signal destsig using mathematical expression
115 destsig=mathexpr is also valid.
118 Set the type of the current graph of the current figure
123 Wait for the user to press enter
126 Draw and show the figures (disabled in the GUI)
128 range [x|y min max]|[xmin xmax ymin ymax]|[reset]
129 Set the axis range of the current graph of the current figure
134 remove SIG [, SIG [, SIG]...]
135 Delete a list of signals into from current graph
137 scale [lin|logx|logy|loglog]
141 Select the current figure and the current graph
146 unfreeze SIG [, SIG [, SIG]...]
147 Consider signal for subsequent updates
150 Set the unit to be displayed on graph axis
155 write format [(OPTIONS)] FILE SIG [, SIG [, SIG]...]
156 Write signals to file