Package: expectra
IntroductionExpectra is program to simulate EXAFS from the outputs of molecular
dynamics simulations. It also has the ability to to sample structures
based on a harmonic potential generated from a normal modes calculation.The EXAFS multiple scattering calculations are performed usingFEFF6-lite, which was written at the
University of Washington by J.J. Rehr and co-workers.1J.J. Rehr, S.I. Zabinsky and R.C. Albers, “High-order multiple
scattering calculations of x-ray-absorption fine structure”,Phys.
Rev. Lett.69, 3397 (1992).RequirementsgfortranMPI (e.g. OpenMPI or MPICH)Pythonnumpympi4pyASEInstallationThis program is distributed as a Python package. It requires a Fortran
compiler (e.g. gfortran) to build the FEFF6-lite program that is
redistributed with the code. A MPI library (e.g. OpenMPI) is also
required.The first step is to install Python, GFortran, and MPICH. On Ubuntu this
can be accomplished like so:$ sudo apt-get install build-essential gfortran mpich python python-pipOnce the dependencies are installed expectra (and the Python packages it
depends on) can be installed using pip:$ pip install --user expectraUsageusage: expectra [-h] [--first-shell] [--neighbor-cutoff DISTANCE]
                [--multiple-scattering] [--rmax DISTANCE] [--S02 FACTOR]
                [--energy-shift ENERGY] [--absorber ELEMENT]
                [--ignore-elements ELEMENTS] [--edge EDGE] [--skip SKIP]
                [--every EVERY]
                TRAJ [TRAJ ...]

positional arguments:
  TRAJ                  trajectory file (POSCAR, con, xyz)

optional arguments:
  -h, --help            show this help message and exit
  --first-shell         a single scattering calculation that uses an
                        automatically calculated reference path (default:
                        True)
  --neighbor-cutoff DISTANCE
                        1st neighbor cutoff distance (default: 3.4)
  --multiple-scattering
  --rmax DISTANCE       maximum scattering half-path length
  --S02 FACTOR          amplitude reduction factor
  --energy-shift ENERGY
                        energy shift to apply in eV
  --absorber ELEMENT    atomic symbol of the xray absorber
  --ignore-elements ELEMENTS
                        comma delimited list of elements to ignore in the
                        scattering calculation
  --edge EDGE           one of K, L1, L2, L3
  --skip SKIP           number of frames to skip at the beginning
  --every EVERY         number of frames to between each stepInstalling from sourceIf installing Expectra from source instead ofpip, clone the source
code fromGitHub:git clone https://github.com/SamChill/expectra.gitAfter all the dependency requirements have been satisfied, build thefeffbinary, and move it toexpectra/expectra/:cd expectra/feff

# To use ifort instead of gfortran, set FC=ifort in ./Makefile

make clean
make  # should create the feff binary

mv ./feff ../expectraFinally, set relevant environmental variables (assuming Expectra was
installed at$HOME):# consider including these in ~/.bash_profile, ~/.profile, or ~/.bashrc
export PATH=$HOME/expectra/bin:$PATH
export PYTHONPATH=$HOME/expectra:$PYTHONPATHNote from developersExpectra was recently migrated from Python2 to Python3. Please report
any bugs tosunghjung3@utexas.edu.