Skip to main content

smpr3d is a toolkit for 3D reconstruction from scanning diffraction data

Project description

Welcome to Smpr3D!

Smpr3d (pronounced 'semper 3D', latin for 'always 3D', short for S-Matrix Phase Retrieval & 3D imaging) simplifies recovering 3D phase-contrast information from scanning diffraction measurements, such as those collected in 4D-Scanning Transmission Electron Microscopy (4D-STEM) experiments

🚨 Smpr3D is a research project at an early stage of development. Expect monstrous bugs and razor-sharp edges! A beta release is planned for M&M 2021.

CI

Installing

TODO - this project is not on pip or conda yet - install with python setup.py develop --user

You can use Smpr3d without any installation by using Google Colab. In fact, every page of this documentation is also available as an interactive notebook - click "Open in colab" at the top of any page to open it (be sure to change the Colab runtime to "GPU"!).

You can install Smpr3d on your own machines with conda (highly recommended - not working yet :)). If you're using Anaconda then run:

conda install -c smpr3d -c pytorch -c anaconda smpr3d 

To install with pip, use: pip install smpr3d. If you install with pip, you should install PyTorch first by following the PyTorch installation instructions.

Hackathon - How to use on the nesap cluster

git clone git@github.com:s-matrix/smpr3d.git

module purge

module load cgpu

module load pytorch/1.8.0-gpu

cd smpr3d

python setup.py develop --user

cd examples

sbatch slurm.sh

About Smpr3d

A fabulous idea

Acknowledgements

Hamish Brown (former NCEM) - theory and first demonstrations

Colin Ophus (NCEM) - theory and first demonstrations

Alex Rakowski (NCEM) - hpc

Jim Ciston (NCEM) - first demonstrations

Mary Scott (NCEM) - first demonstrations

Scott Findlay (Monash) - theory

Pierre Carrier (HPEnterprise) - performance profiling

Daniel Margala (NERSC) - performance profiling

References

Pelz, P. M. et al. Phase-contrast imaging of multiply-scattering extended objects at atomic resolution by reconstruction of the scattering matrix. (2021).

Brown, H. G. et al. A three-dimensional reconstruction algorithm for scanning transmission electron microscopy data from thick samples. doi <http://arxiv.org/abs/2011.07652>

How to contribute

Before committing, run

nbdev_build_lib && nbdev_clean_nbs && nbdev_build_docs

to compile the notebook into script files, clean the notebooks, and build the documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smpr3d-0.0.3.tar.gz (55.7 kB view details)

Uploaded Source

Built Distribution

smpr3d-0.0.3-py3-none-any.whl (54.7 kB view details)

Uploaded Python 3

File details

Details for the file smpr3d-0.0.3.tar.gz.

File metadata

  • Download URL: smpr3d-0.0.3.tar.gz
  • Upload date:
  • Size: 55.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.8

File hashes

Hashes for smpr3d-0.0.3.tar.gz
Algorithm Hash digest
SHA256 16990c561a8cf845fbab8d4bdac94e017d9447aef43732139737b64932ebf954
MD5 3e6f8f236e4e5796155b7ee9402412a4
BLAKE2b-256 bf2ccccdfa7cb9bb4084be82a0ca5ad70cc76f57af65e1238c6655de75540dce

See more details on using hashes here.

File details

Details for the file smpr3d-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: smpr3d-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 54.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.8

File hashes

Hashes for smpr3d-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b74c68e5b742c78acdb9561dc1c2cdc1509f8bd0ad1326a5a537ddc3474b743c
MD5 89b3688dc701d11b198724f262d3abbc
BLAKE2b-256 692f220e831f9f13aad0489623d1f06a33fa427946e0cec8b1540b519fa0a392

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page