Skip to main content
https://travis-ci.org/marohngroup/kpfm.svg?branch=master Documentation Status

Kelvin Probe Force Microscopy (KPFM) data analysis.

Motiviation

Collect useful code for custom Kelvin probe force microscopy experiments into a single repository. The motivation for using a single repository is prior experience and this article.

Structure

A tentative structure for the repository is

kpfm
├── __init__.py
├── _version.py
├── experiment
│   └── __init__.py
├── tests
│   ├── __init__.py
│   └── test_kpfm.py
├── scratch
│   ├── __init__.py
│   └── temporary_code.py
└── util
    ├── __init__.py
    └── plot.py

Each experiment is contained in its own module. The util module collects useful functions and decorators that are useful across a range of modules. Tests are placed in the tests module. Scratch contains a place for code that will not be maintained. If a particular experiment or procedure is useful over a longer period, it can be moved to its own experiment module.

Development life cycle of new code

  1. Workup data and write provisional code in an IPython notebook

  2. If many data files are going to be processed in this way, move the routine to a new module in scratch.
    • Workups in scratch come with no guarantees that they will not break.

    • In practice, it would be useful to create a new copy of the temporary code if there is likely to be significant breakage.

  3. If the experiment is useful enough, copy / edit the scratch code and move it to its own experiment folder. In doing so, we commit to leave the experiment in a usable, backward compatible state, which means consistent LabView code for collecting the data, as well as consistent, backward-compatible routines for working up the data.

The idea would be that with a powerful set of utility, signal processing, and data analysis tools in the kpfm package, many analyses could be performed quickly at (1) or (2). Even having a file in scratch (perhaps copied occasionally as the data analysis or LabView code changes significantly) is a significant improvement over code copied between IPython notebooks. The other consideration is that it is a large investment of time to maintain code, so that code related to a “one-off” experiment should be saved, but not maintained.

Features

  • TODO

Documentation

The full documentation is at http://kpfm.rtfd.org.

History

0.1.0 (2017-03-28)

  • First release on GitHub.

Release files for kpfm 0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for kpfm 0.3
File Interpreter ABI Platform
kpfm-0.3-py2.py3-none-any.whl Python 2, Python 3 none any Details

Release files / kpfm-0.3-py2.py3-none-any.whl

Download URL kpfm-0.3-py2.py3-none-any.whl
Size 29.1 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
dc9eb1b3581580cafbdca5963b0a85db9ebfc70f2577a8a4bb3671168cba1fe6
BLAKE2b-256 checksum
How to use checksums
853af1b4c5badc1ba9f5d3e458a5ff1fa99c9b089e2e744c3574faa88850758f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.3 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page