All Projects → wojdyr → debyer

wojdyr / debyer

Licence: GPL-2.0 License
Debye's scattering equation & other analysis of atomistic models.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to debyer

pymicro
A Python package to work with material microstructures and 3d data sets
Stars: ✭ 28 (-12.5%)
Mutual labels:  crystallography
tilde
Materials informatics framework for ab initio data repositories
Stars: ✭ 19 (-40.62%)
Mutual labels:  crystallography
yamtbx
my crystallographic toolbox
Stars: ✭ 17 (-46.87%)
Mutual labels:  crystallography
uglymol
Macromolecular viewer for crystallographers (WebGL)
Stars: ✭ 28 (-12.5%)
Mutual labels:  crystallography
pdbtbx
A library to open/edit/save (crystallographic) Protein Data Bank (PDB) and mmCIF files in Rust.
Stars: ✭ 13 (-59.37%)
Mutual labels:  crystallography
PeakPo
X-ray diffraction data analysis for high pressure and high temperature experiments
Stars: ✭ 14 (-56.25%)
Mutual labels:  crystallography
reciprocalspaceship
Tools for exploring reciprocal space
Stars: ✭ 17 (-46.87%)
Mutual labels:  crystallography

Debyer and companion programs analyze and manipulate atomistic models. In particular, debyer can calculate powder diffraction pattern of virtual sample using the Debye scattering formula. This project used to be hosted at google code.

Travis Status Coverity Status

Documentation

is kept in doc/ and can be read at http://debyer.readthedocs.org/

Installation

When installing from git, you must have autoconf, automake and gengetopt, and run first:

autoreconf -i

The rest of the build procedure is:

./configure CFLAGS="-O3 -ffast-math" [MORE OPTIONS]
make
sudo make install

Zlib and bzlib libraries are optional prerequisites. If you don't have them installed, use --without-zlib or --without-bzlib options, respectively -- the programs will work fine, just won't be able to read .gz and .bz2 files.

The make command builds debyer and a few programs with names staring with dbr_.

make install copies the programs to PREFIX/bin (PREFIX is /usr/local unless set explicitly with configure --prefix=...)

A few configure options have been introduced to speed up Debyer. Defaults are: OpenMP, double precision and -O2 -g compiler flags. If your compiler has option -ffast-math, adding it to CFLAGS is safe and can make the program faster.

  • --disable-openmp builds serial version
  • --enable-mpi builds parallel version using MPI; it turns off OpenMP-based parallelization as a side effect
  • --enable-single uses single precision (double precision is default)
  • CFLAGS -- Debyer includes both C++ and C code. The computationally intensive part happens to be written in C, so CFLAGS matters more than CXXFLAGS. CFLAGS="-O3 -ffast-math -march=native" should give good results.

If Debyer is compiled with OpenMP, environment variable OMP_NUM_THREADS can be used to control the number of threads.

Alternatively,

you may compile Debyer without autotools and make, directly calling your compiler:

cd debyer

c++ -O3 -ffast-math -fopenmp -o debyer cmdline.c debyer.c atomtables.c \
    main.cc lineio.cc fileio.cc -lm

Other programs can also be compiled this way, for instance:

c++ -O3 -o dbr_conv conv.cc debyer.c lineio.cc fileio.cc atomtables.c -lm
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].