Skip to content


CRYSTAL is a general-purpose program for the study of crystalline solids. The CRYSTAL program computes the electronic structure of periodic systems within Hartree Fock, density functional or various hybrid approximations (global, range-separated and double-hybrids). The Bloch functions of the periodic systems are expanded as linear combinations of atom centred Gaussian functions. Powerful screening techniques are used to exploit real space locality. Restricted (Closed Shell) and Unrestricted (Spin-polarized) calculations can be performed with all-electron and valence-only basis sets with effective core pseudo-potentials. The current release is CRYSTAL17.


CRYSTAL is only available to users who have a valid CRYSTAL license. You request access through SAFE:

Please have your license details to hand.

Running parallel CRYSTAL jobs

The following script will run a CRYSTAL job using 256 cores (2 nodes). it assumes that the input file is tio2.d12

#SBATCH --nodes=2
#SBATCH --ntasks-per-node=128
#SBATCH --cpus-per-task=1
#SBATCH --time=0:20:00

# Replace [budget code] below with your project code (e.g. e05)
#SBATCH --account=[budget code]
#SBATCH --partition=standard
#SBATCH --qos=standard
#SBATCH --export=none

module load epcc-job-env
module load other-software
module load crystal

# Change this to the name of your input file
cp tio2.d12 INPUT

srun --hint=nomultithread --distribution=block:block MPPcrystal