Pypiezo
=======

Pypiezo is a Python module to control piezoelectric actuators.  It is
mostly a set of convenient wrappers around pycomedi_ calls for keeping
track of the relevant calibration constants.  To get a feel for an
"official" set of calibration constants, you can take a peek at
`veeco_header`, which is the beginning of a saved Veeco NanoScope
image file.  It lists the parameters used by the NanoScope during
imaging.


Installation
============

Packages
--------

Gentoo
~~~~~~

I've packaged pypiezo for Gentoo.  You need layman_ and my `wtk
overlay`_.  Install with::

    # emerge -av app-portage/layman
    # layman --add wtk
    # emerge -av sci-libs/pypiezo


Dependencies
------------

If you're installing by hand or packaging pypiezo for another
distribution, you'll need the following dependencies:

==========================  =================  =============================================
Package                     Debian_            Gentoo_
==========================  =================  =============================================
Numpy_                      python-numpy       dev-python/numpy
Scipy_                      python-scipy       sci-libs/scipy
Matplotlib_                 python-matplotlib  dev-python/matplotlib
H5config_                                      dev-python/h5config [#wtk]_
Curses-check-for-keypress_                     dev-python/curses-check-for-keypress [#wtk]_
Nose_                       python-nose        dev-python/nose
Pycomedi_                                      dev-python/pycomedi [#wtk]_
==========================  =================  =============================================

.. [#wtk] In the `wtk overlay`_.


Installing by hand
------------------

Pypiezo is available as a Git_ repository::

    $ git clone git://tremily.us/pypiezo.git

See the homepage_ for details.  To install the checkout, run the
standard::

    $ python setup.py install


Usage
=====

See the module docstrings for simple examples.


Testing
=======

Run internal unit tests with::

    $ nosetests --with-doctest --doctest-tests pypiezo


Licence
=======

This project is distributed under the `GNU General Public License
Version 3`_ or greater.


Author
======

W. Trevor King
wking@tremily.us


.. _layman: http://layman.sourceforge.net/
.. _wtk overlay: http://blog.tremily.us/posts/Gentoo_overlay/
.. _Debian: http://www.debian.org/
.. _Gentoo: http://www.gentoo.org/
.. _NumPy: http://numpy.scipy.org/
.. _SciPy: http://www.scipy.org/
.. _Matplotlib: http://matplotlib.sourceforge.net/
.. _H5config: http://blog.tremily.us/posts/h5config/
.. _Curses-check-for-keypress:
    http://blog.tremily.us/posts/curses-check-for-keypress/
.. _Nose: http://somethingaboutorange.com/mrl/projects/nose/
.. _Pycomedi: http://blog.tremily.us/posts/pycomedi/
.. _Git: http://git-scm.com/
.. _homepage: http://blog.tremily.us/posts/pypiezo/
.. _GNU General Public License Version 3: http://www.gnu.org/licenses/gpl.txt
