Coder Social home page Coder Social logo

dragonfly's Introduction

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

dragonfly's People

Watchers

 avatar

Forkers

sanjana679

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.