This project is a fork of the oscopy.git project. If you have that one already cloned locally, you can use
git clone --reference /path/to/your/oscopy.git/incarnation mirror_URL
to save bandwidth during cloning.
 
descriptionnone
ownerpokemon@fly.srk.fer.hr
last changeFri, 19 Mar 2010 21:29:36 +0000 (19 22:29 +0100)
content tags
add:
README
oscopy -- An interactive program to view electrical results

ABOUT OSCOPY
------------
This is oscopy, a kind of oscilloscope in python, to view 2D electrical
simulation or measurement results.
It is designed to easily add new input data file formats and new types of plots.
Features highlight:
  * Post-processing: math expressions, fft, diffs
  * View, examine: multiple windows, cursors
  * Data import: gnucap
  * Data export: gnucap, pictures
  * Scripting
  * D-Bus support: update recursively signals
  * Run netlister and simulator

There are two interfaces:
  * Command-line interface (CLI): oscopy_app.py
  * Graphical user interface (GUI) fully integrating the CLI: oscopy_ui.py
Scripting is supported in both application, although in the GUI some commands are disabled since plots are displayed dynamically.

Support for mathematic with signals is implemented. Supported functions:
trig, sqrt, log... 
Support for (i)fft: fft(v1) + fft(v2) is possible, but please avoid things like ifft(fft(v1) + fft(v2))
First order diff is supported: diff(v1) or diff(v1, 1)
Access to X axis data is provided through Time and Freq, e.g. sin(Time(vsqu)*1e6)

In each plot window, horizontal and vertical cursors can be toggled by using keys '1', '2', '3' and '4'.

GETTING THE SOURCE
------------------
The source can be downloaded from repo.cz:
http://repo.or.cz/w/oscopy.git

To download it:
$ git clone git://repo.or.cz/oscopy.git 

BUILDING FROM SOURCE
--------------------
Oscopy can work out of the box when downloaded, but it supports also installing on the system using autotools.
In the latter case:
$ ./autogen.sh && ./configure && make

Dependencies:
  * python
  * python-numpy
  * python-matplotlib
  * python-dbus

INSTALLING
----------
If you want to install oscopy on a system:
# ./autogen.sh && ./configure && make install
Note that you might need to update your PYTHONPATH, for example if you install it in ${HOME}/geda, to launch oscopy you might need the following line:
PYTHONPATH=${HOME}/geda/lib/python2.5/site-packages:$PYTHONPATH

QUICKSTART
----------
To run the program, just do ./oscopy_app or ./oscopy_ui.

To get any info on available commands, type 'help'.

A sample circuit is provided for demonstration purposes.
From oscopy directory, prepare the demo circuit files
$ cd demo
$ gnetlist -g spice-sdb -s -o demo.net demo.sch
$ gnucap -b demo.net
$ cd ..

Using the CLI:
$ ./oscopy_app.py -b demo/demo.oscopy

Using the GUI:
$ ./oscopy_ui.py &
then in the terminal window:
oscopy> exec demo/demo.oscopy

COMMAND REFERENCE
-----------------
add SIG [, SIG [, SIG]...]
   Add a graph to the current figure

create [SIG [, SIG [, SIG]...]]
   Create a new figure, set_ it as current, add the signals

delete GRAPH#
   Delete a graph from the current figure

destroy FIG#
   Destroy a figure

echo [TEXT]
   Print text

exec FILENAME
   execute commands from file

factors X, Y
   set the scaling factor of the graph (in power of ten)
   use 'auto' for automatic scaling factor
   e.g. factor -3, 6 set the scale factor at 1e-3 and 10e6

figlist
   Print the list of figures

freeze SIG [, SIG [, SIG]...]
   Do not consider signal for subsequent updates

insert SIG [, SIG [, SIG]...]
   Insert a list of signals into the current graph

layout horiz|vert|quad
   Define the layout of the current figure

math destsig=mathexpr
   Define a new signal destsig using mathematical expression
   destsig=mathexpr is also valid.

mode MODE
   Set the type of the current graph of the current figure
   Available modes :
   lin      Linear graph

pause
   Wait for the user to press enter

plot
   Draw and show the figures (disabled in the GUI)

range [x|y min max]|[xmin xmax ymin ymax]|[reset]
   Set the axis range of the current graph of the current figure

read DATAFILE
   read signal file

remove SIG [, SIG [, SIG]...]
   Delete a list of signals into from current graph

scale [lin|logx|logy|loglog]
   Set the axis scale

select FIG#-GRAPH#
   Select the current figure and the current graph

siglist
   List loaded signals

unfreeze SIG [, SIG [, SIG]...]
   Consider signal for subsequent updates

unit [XUNIT,] YUNIT
   Set the unit to be displayed on graph axis

update
   Reread data files

write format [(OPTIONS)] FILE SIG [, SIG [, SIG]...]
   Write signals to file
shortlog
2010-03-19 Ivan Stankovicadd test for arithmetic operations and iterationmaster
2010-03-19 Ivan StankovicSignal: support arithmetic and iteration
2010-03-19 Ivan StankovicSignal: remove __str__
2010-03-19 Ivan StankovicSignal: show parts of data in __repr__
2010-03-17 Ivan Stankovicremove unnecessary imports
2010-03-17 Ivan Stankovicconfigure.ac: add checks for pygtk and pyvte
2010-03-17 Ivan StankovicSignal: add meaningful __repr__
2010-03-14 Ivan Stankovicoscopy_ui: use save_config_path instead of load_first_c...
2010-03-13 Ivan Stankovicinstall oscopy.scm into gEDA scheme dir
2010-03-10 Arnaud Gardeleinreadme update
2010-03-10 Arnaud GardeleinAdd autogen.sh and some other files
2010-03-10 Arnaud GardeleinRemove autogenerated files
2010-03-10 Arnaud GardeleinRemove gschem-plugin
2010-03-07 Arnaud Gardeleinreadme: info on cursors activation and minor corrections
2010-02-28 Arnaud GardeleinDocumentation update: readme, hacking
2010-02-14 Arnaud Gardeleinapp: more tests in do_select
...
heads
14 years ago master