This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

Introduction

Magni is a Python package which provides functionality for increasing the speed of image acquisition using Atomic Force Microscopy (AFM). The image acquisition algorithms of Magni are based on the Compressed Sensing (CS) signal acquisition paradigm and include both sensing and reconstruction. The sensing part of the acquisition generates sensed data from regular images possibly acquired using AFM. This is done by AFM hardware simulation. The reconstruction part of the acquisition reconstructs images from sensed data. This is done by CS reconstruction using well-known CS reconstruction algorithms modified for the purpose. The Python implementation of the above functionality uses the standard library, a number of third-party libraries, and additional utility functionality designed and implemented specifically for Magni. The functionality provided by Magni can thus be divided into five groups:

  • Atomic Force Microscopy: AFM specific functionality including AFM image acquisition, AFM hardware simulation, and AFM data file handling.
  • Compressed Sensing: General CS functionality including signal reconstruction and phase transition determination.
  • Imaging: General imaging functionality including measurement matrix and dictionary construction in addition to visualisation and evaluation.
  • Reproducibility: Tools that may aid in increasing the reproducibility of results obtained using Magni.
  • Utilities: General Python utilities including multiprocessing, tracing, and validation.

Downloading

Magni can be downloaded in a number of ways:

Furthermore, all official releases of the magni package (without examples and documentation) are made available through PyPI and binstar. Both of these are considered unofficial channels and provided solely for your convenience.

Installation

To use Magni, extract the downloaded archive and include the extracted Magni folder in your PYTHONPATH.

Magni has been designed for use with Python 2 >= 2.7 or Python 3 >= 3.3.

The required thid party dependencies and optional third party dependencies for Magni are listed in the compiled documentation which can be found in the Magni folder under ‘/doc/build/html/index.html’. You may use the ‘dep_check.py’ script found in the Magni folder under ‘/magni/tests/’ to check for missing dependencies for Magni. Simply run the script to print a dependency report.

Documentation

The included subpackages, modules, classes and functions are documented through Python docstrings using the same format as the third-party library, numpy, i.e. using the numpydoc standard. A description of any entity can thus be found in the source code of Magni in the docstring of that entity. For readability, the documentation has been compiled using Sphinx to produce an HTML page which can be found in the Magni folder under ‘/doc/build/html/index.html’. The entire documentation is also available as a PDF file in the Magni folder under ‘doc/pdf/index.pdf’. Note, that neither the HTML version nor the PDF version of the documentation is provided through PyPI and Anaconda.org.

Tests

A test suite consisting of unittests, doctests, IPython notebook examples, and several style checks is included in Magni. The tests are organised in python modules found in the Magni folder under ‘/magni/tests/’. These may be invoked using any test runner that supports the unittest.TestCase classes. The entire test suite may be run by executing the convenience script ‘run_tests.py’. The code is this repository is continuously tested by Travis CI.

Examples

A large number of examples showing the capabilities of Magni are included. Some of these examples are in the form of doctests whereas the more elaborated examples are in the form of IPython notebook examples which can be found in the Magni folder under ‘/examples/’.

Citing Magni

A Magni software metapaper has been published:

C.S. Oxvig, P.S. Pedersen, T. Arildsen, J. Østergaard, and T. Larsen, “Magni: A Python Package for Compressive Sampling and Reconstruction of Atomic Force Microscopy Images”, Journal of Open Research Software, 2(1):e29, 2014 DOI: http://dx.doi.org/10.5334/jors.bk

Furthermore, the magni.utils.validation system is detailed in:

P.S. Pedersen, C.S. Oxvig, J. Østergaard, and T. Larsen, “Validating Function Arguments in Python Signal Processing Applications”, in Proceedings of the 15th Python in Science Conference, pp. 106-113, Austin, Texas, USA, July 11 - 17, 2016 URL: http://conference.scipy.org/proceedings/scipy2016/patrick_pedersen.html

And the magni.reproducibility sub-package is detailed in:

C.S. Oxvig, T. Arildsen, and T. Larsen, “Storing Reproducible Results from Computational Experiments using Scientific Python Packages”, in Proceedings of the 15th Python in Science Conference, pp. 45-50, Austin, Texas, USA, July 11 - 17, 2016 URL: http://conference.scipy.org/proceedings/scipy2016/christian_oxvig.html

Please consider citing one or more of these papers if you publish any work in which you have used Magni.

Release History

Release History

1.6.0

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.5.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.4.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.3.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.2.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.0.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
magni-1.6.0.tar.gz (185.3 kB) Copy SHA256 Checksum SHA256 Source Nov 3, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting