A Python library for Atom Probe Tomography analysis
Project description
APAV: Atom Probe Tomography for Python
APAV (Atom Probe Analysis and Visualization) is a Python package for analysis and visualization of atom probe tomography datasets, some features:
- File read support for traditional (*.pos, *.epos, *.ato, *.rng, *.rrng) or new (*.apt) formats
- File write support for *.pos and *.epos
- Mass spectrum quantification with configurable background correction
- Calculation and configuration of correlation histograms
- Roi primitive shapes for localized analysis
- Most analyses can be parameterized by multiple-detection events
- Fast generation of the compositional grid using conventional 1st/2nd pass delocalization
- Calculation of arbitrary molecular isotopic distributions
Basic usage
Essential APT analysis typically involves loading some data and doing some calculation(s). Import the core functions and classes:
>>> import apav as ap
Load an apt file from AP Suite or some other source, along with a suitable range file (or build one programtically):
>>> roi = ap.load_apt("data/NiTiHf.apt")
>>> rng = ap.load_rrng("data/NiTiHf_FWHM.rrng")
Now import the analysis components and compute the total (uncorrected) decomposed composition:
>>> import apav.analysis as anl
>>> mass = anl.RangedMassSpectrum(roi, rng, decompose=True)
>>> mass.print()
Ion Composition Counts
----- ------------- --------
Ti 0.307084 2381757
Ni 0.595634 4619772
Hf 0.0907196 703626
O 0.00656261 50900
Estimate the (uncorrected) composition of a grain in the upper part of the ROI using a sphere:
>>> precip_roi = ap.RoiSphere(roi, center=(-8.5, 2.1, -20), radius=20)
>>> precip_mass = anl.RangedMassSpectrum(precip_roi, rng, decompose=True)
>>> precip_mass.print()
Ion Composition Counts
----- ------------- --------
Ti 0.397016 261053
Ni 0.532445 350102
Hf 0.0665544 43762
O 0.00398457 2620
Check the documentation for more analyses and background corrections.
Documentation
Documentation is found at: https://apav.readthedocs.io/
Support
Post discussion to the GitLab issue tracker
FAQ
Why use this over IVAS/AP Suite or program X?
APAV is not intended to be an IVAS substitute or replacement. While much of the functionality may overlap, APAV fills feature gaps in IVAS/AP Suite that are lacking or otherwise non-existent. Specifically:
- Multiple-event analysis (i.e. correlation histograms, multiple event histograms, multiple event mass quantifications).
- Manual control over mass spectrum analysis (background models, fit regions, binning, etc).
- An API to easily interface into APT data for custom data analysis.
Why is there no GUI for APAV?
APAV is intended to be used as a python library. Perhaps a GUI will one day exist along side APAV (but not in replacement). For now, APAV includes some custom interactive plotting tools for certain computations.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for APAV-1.3.1-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e6f0f6675edf15f5c6ed76c06ce939ee48f2232c64b572676d14234acf616ed |
|
MD5 | 866b7de74c061fa69c92d88b2320a89f |
|
BLAKE2b-256 | 7490e41ba68967cb17c5708aee4263ab0ed2f1ab9bd6ecd578058f55cdd3369a |
Hashes for APAV-1.3.1-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c459205bd329ac97ad1c9c95426fcd57d11b591dcdd24911858287e754aab29e |
|
MD5 | 379f646859f765499135596ff362ff9b |
|
BLAKE2b-256 | bb9f36e24e988b064f8db6fbae75a5272d6b77ad95bea5f06059c653f46d8bf2 |
Hashes for APAV-1.3.1-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8569907d6cfed91a08fc5033b10b610b9f9604250da530b3c23f96f0a518af9 |
|
MD5 | e02940f2b558bbc86c0b6fce117f98a9 |
|
BLAKE2b-256 | 711d90e567b2945b5dc551324890008f48106092c10c774a16456193d7c67263 |
Hashes for APAV-1.3.1-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b45eae96452e1039a136b4768c889808beda6f5d042b5ba7bae343c7e83db29 |
|
MD5 | e5ab11a86821217514cc1fc2d335e63a |
|
BLAKE2b-256 | 8289a8d95290cfd0850aaa0073eba68bba96407dade057438594f7835b1049f6 |