CRYSTAL¶
CRYSTAL is a general-purpose program for the study of crystalline solids, nanotubes, surfaces, molecules and polymers. The CRYSTAL program computes the electronic structure of periodic systems within Hartree-Fock, Density Functional Theory, or various hybrid approximations.
CRYSTAL is available as a module on Apocrita.
Usage¶
To run the default installed version of CRYSTAL, simply load the crystal17
module:
module load crystal17
Crystal should be run using temporary directories rather than shared storage as it concurrently generates a lot of small files which has an impact on the shared storage performance.
Input file naming
CRYSTAL requires that input files are named INPUT
otherwise you will see
the following error message:
ERROR **** INPUT **** END OF DATA IN INPUT DECK
.
Example job¶
Parallel job¶
Here is an example job running on 96 cores across 2 ddy nodes using MPI:
#!/bin/bash
#$ -cwd
#$ -j y
#$ -pe parallel 96
#$ -l infiniband=ddy-i
#$ -l h_rt=240:0:0
module load crystal17
# Copy the input file to the local temporary directory
# and change directory to TMPDIR
cp INPUT ${TMPDIR}
cd ${TMPDIR}
# Execute the Pcrystal binary and redirect all output to
# the OUTPUT file (may be renamed)
mpirun -np ${NSLOTS} Pcrystal > OUTPUT 2>&1
# Change to the original directory and copy the OUTPUT
# file from TMPDIR
cd -
cp ${TMPDIR}/OUTPUT .