Phaser
: BCDI Phase retrieval in Python
Created by: Siddharth Maddali
Argonne National Laboratory
MOST RECENT UPDATES
- Genetic algorithms now properly parallelize on the GPU with MPI.
Look at new script
Guided_GPU.py
for GPU usage of genetic algorithms.
Full changelog
Core.ImageRestart
now automaticallyfftshift
s input arrays.- Now suppressing Tensorflow messages in the command line (comment
os.environ
statement inPhaser.py
to undo this). GPUModule_Core.ImageRestart
now shadows functionality ofCore.ImageRestart
.- Slight tweak to
Guided.py
logging. - New file
Guided_GPU.py
runs genetic algorithms using GPU +mpi4py
. - ASCII-art of new logo in
Phaser.py
PostProcessing.centerObject
now removes phase ramps.
# Introduction
-
Basic Python tutorial of module
Phaser
for BCDI phase retrieval. - Contains diffraction geometry modules for the 34-ID-C setup at the Advanced Photon Source.
- Can be easily adapted to other geometries, please open an issue as a feature request if you need this done for your beamline.
-
Modular, much simpler to use and modify than existing Matlab legacy code.
- Current dependencies (as determined by
pipreqs
)mmatplotlib==3.1.3 scikit_image==0.16.2 tensorflow==2.2.0 mpi4py==3.0.3 tqdm==4.42.1 numpy==1.18.1 scipy==1.4.1 pyfftw==0.12.0 pyvista==0.32.0 pyvistaqt==0.5.0 skimage==0.0 vtk==9.0.3
- These modules are based on my current Python environment.
- All modules can be installed in the usual way:
pip install <module>
. - The
tensorflow 1.x
-compatible library is available on branchtensorflow-1.x
of this repo.
Quick start
A full tutorial on using Phaser to reconstruct your BCDI data is available here.