CRYSTAL

From HPC users
Revision as of 09:51, 16 November 2020 by Harfst (talk | contribs) (→‎Using CRYSTAL on the HPC cluster)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Introduction

The CRYSTAL package performs ab initio calculations of the ground state energy, energy gradient, electronic wave function and properties of periodic systems. Hartree-Fock or Kohn- Sham Hamiltonians (that adopt an Exchange-Correlation potential following the postulates of Density-Functional Theory) can be used. Systems periodic in 0 (molecules, 0D), 1 (polymers, 1D), 2 (slabs, 2D), and 3 dimensions (crystals, 3D) are treated on an equal footing.

License

CRYSTAL is licensed software. To use CRYSTAL you need to be in a corresponding group. Contact {sc} if you would like to use the software (in case you are entitled to).

Installed versions

To find installed versions use

module spider crystal17

To load the default version

module load hpc-env/6.4
module load crystal17

This version is currently installed on environment hpc-uniol-env:

crystal17/1.0.2-iompi-2018a

Using CRYSTAL on the HPC cluster

The following job script serves as an example (it requires an input file Test.d12.zip):

#!/bin/bash

#SBATCH -p carl.p
#SBATCH -n 24
#SBATCH -t 00:10:00
#SBACTH --mem-per-cpu 5000M

module load hpc-env/6.4
module load crystal17/1.0.2-iompi-2018a

# name of input file (without .d12 suffix)
INPUT=test

# set scratch dir
CRY17_SCRDIR=$TMPDIR

# create work directory
WORKDIR=$WORK/crystal17/${INPUT}_${SLURM_JOB_ID}
mkdir -pv $WORKDIR
cp $INPUT.d12 $WORKDIR || (echo Error: cannot copy input file; exit 1)
# uncommenent the next line if you are using an EXTERNAL geometry file
# cp $INPUT.gui $WORKDIR || (echo Error: cannot copy geometry file; exit 1)
cd $WORKDIR || (echo Error: cannot change to WORKDIR; exit 1)

# create files with used nodes
export CRY17P_MACH=$(pwd) 
rm -f machines.LINUX nodes.par
srun hostname > machines.LINUX
sort -u machines.LINUX > nodes.par

# run crystal
runmpi17 24 $INPUT > $INPUT.log

rm -f machines.LINUX nodes.par

Documentation

You can find more information, including the user documentation for CRYSTAL, here.