Skip to content

Sanjana679/Dragonfly

 
 

Repository files navigation

Dragonfly

Dragonfly is a software package to analyze single particle diffractive imaging data. The package has the following parts

  • An implementation of the EMC single-particle reconstruction algorithm using MPI and OpenMP to merge diffraction patterns of approximately identical particles in random orientations.
  • Data stream simulator, that generates noisy single-particle diffraction patterns from a PDB file
  • An experimental pattern-classification GUI using some machine learning tools to separate single particle diffraction patterns in experimental data.

More detailed documentation can be found in the Wiki pages.

If you are in a hurry, just clone the repository and follow the Quick start instructions.

Please cite the following publication if you use Dragonfly for your work:

Ayyer, K., Lan, T. Y., Elser, V., & Loh, N. D. (2016). Dragonfly: an implementation of the expand–maximize–compress algorithm for single-particle imaging. Journal of applied crystallography, 49(4), 1320-1335.

Get started on psana

git clone https://github.com/irischang020/Dragonfly.git
cd Dragonfly
source /reg/g/psdm/etc/psconda.sh # python2 (py2 environment is "frozen" so cannot get updated; py2 has been discontinued)
source /reg/g/psdm/etc/psconda.sh -py3 # python3
mkdir build
cd build
cmake ../
make install
export PATH=/cds/home/i/iris/.local/dragonfly/bin:$PATH
mkdir ~iris/test_recons
cd test_recons
dragonfly_init

Sanjana's commands

git clone https://github.com/irischang020/Dragonfly.git
cd Dragonfly
source /reg/g/psdm/etc/psconda.sh 
mkdir build
cd build
cmake ..
make install
export PATH=/cds/home/n/nand1234/.local/dragonfly/bin:$PATH
cd ..
dragonfly_init

Get started on Cori

Make sure to run this in the scratch folder

git clone https://github.com/irischang020/Dragonfly.git
cd Dragonfly
mkdir build
cd build
module load modules/3.2.11.4
module load intel/19.0.3.199
module load altd/2.0
module load darshan/3.2.1
module load craype/2.6.2 
module load craype-network-aries
module load cray-libsci/19.06.1
module load craype-haswell
module load ugni/6.0.14.0-7.0.1.1_7.59__ge78e5b0.ari         
module load cray-mpich/7.7.10
module load pmi/5.0.14
module load cmake/3.20.5
module load dmapp/7.1.1-7.0.1.1_4.68__g38cf134.ari           
module load gsl/2.5
module load gni-headers/5.0.12.0-7.0.1.1_6.44__g3b1768f.ari  
module load cray-hdf5/1.10.5.2
module load xpmem/2.2.20-7.0.1.1_4.26__g0475745.ari
module load python/3.8-anaconda-2020.11
module load cmake/3.20.5
module load gsl
module load cray-hdf5-parallel
# Be sure to include the following modules as well
![image](https://user-images.githubusercontent.com/25139826/135107198-e9d64b18-f644-4aa3-9388-4423a6593238.png)
cmake ..
make
make install
export PATH=/global/homes/n/nand1234/.local/dragonfly/bin:$PATH #add to .bashrc file
vim dragonfly_conda.yml
# Remove the following lines from dragonfly_conda.yml
# - future=0.16.0=py27_1
# - mpich2=1.4.1p1=0
conda env create -f dragonfly_conda.yml
module load openmpi
=======
module load cray-hdf5
module load job/2.2.4-7.0.1.1_3.53__g36b56f4.ari
module load dvs/2.12_2.2.167-7.0.1.1_17.9__ge473d3a2
module load alps/6.6.58-7.0.1.1_6.26__g437d88db.ari
module load rca/2.2.20-7.0.1.1_4.70__g8e3fb5b.ari
module load atp/2.1.3
module load PrgEnv-intel/6.0.5
module load craype-hugepages2M
module load atp/2.1.3
module load cray-libsci/19.06.1 
cmake ..
make
make install
export PATH=/global/homes/i/ihchang/.local/dragonfly/bin:$PATH #add to .bashrc file
#export PATH=/global/homes/n/nand1234/.local/dragonfly/bin:$PATH #add to .bashrc file
cd ..
dragonfly_init

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 45.5%
  • C 45.3%
  • Cython 7.8%
  • Other 1.4%