Add autogen.sh and some other files
[oscopy/ivan.git] / README
blob8dd4878ecda788133d6a5be8f45e16b46e1c830f
1 oscopy -- An interactive program to view electrical results
3 ABOUT OSCOPY
4 ------------
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.
8 Features highlight:
9   * Post-processing: math expressions, fft, diffs
10   * View, examine: multiple windows, cursors
11   * Data import: gnucap
12   * Data export: gnucap, pictures
13   * Scripting
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:
23 trig, sqrt, log... 
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'.
30 GETTING THE SOURCE
31 ------------------
32 The source can be downloaded from repo.cz:
33 http://repo.or.cz/w/oscopy.git
35 To download it:
36 $ git clone git://repo.or.cz/oscopy.git 
38 BUILDING FROM SOURCE
39 --------------------
40 Oscopy can work out of the box when downloaded, but it supports also installing on the system using autotools.
41 In the latter case:
42 $ ./autogen.sh && ./configure && make
44 Dependencies:
45   * python
46   * python-numpy
47   * python-matplotlib
48   * python-dbus
50 INSTALLING
51 ----------
52 If you want to install oscopy on a system:
53 # ./autogen.sh && ./configure && make install
55 QUICKSTART
56 ----------
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
63 $ cd demo
64 $ gnetlist -g spice-sdb -s -o demo.net demo.sch
65 $ gnucap -b demo.net
66 $ cd ..
68 Using the CLI:
69 $ ./oscopy_app.py -b demo/demo.oscopy
71 Using the GUI:
72 $ ./oscopy_ui.py &
73 then in the terminal window:
74 oscopy> exec demo/demo.oscopy
76 COMMAND REFERENCE
77 -----------------
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
84 delete GRAPH#
85    Delete a graph from the current figure
87 destroy FIG#
88    Destroy a figure
90 echo [TEXT]
91    Print text
93 exec FILENAME
94    execute commands from file
96 factors X, Y
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
101 figlist
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.
117 mode MODE
118    Set the type of the current graph of the current figure
119    Available modes :
120    lin      Linear graph
122 pause
123    Wait for the user to press enter
125 plot
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
131 read DATAFILE
132    read signal file
134 remove SIG [, SIG [, SIG]...]
135    Delete a list of signals into from current graph
137 scale [lin|logx|logy|loglog]
138    Set the axis scale
140 select FIG#-GRAPH#
141    Select the current figure and the current graph
143 siglist
144    List loaded signals
146 unfreeze SIG [, SIG [, SIG]...]
147    Consider signal for subsequent updates
149 unit [XUNIT,] YUNIT
150    Set the unit to be displayed on graph axis
152 update
153    Reread data files
155 write format [(OPTIONS)] FILE SIG [, SIG [, SIG]...]
156    Write signals to file