We need 3 files

si2-dos.cell

%BLOCK LATTICE_CART
2.73 2.73 0.00
2.73 0.00 2.73
0.00 2.73 2.73
%ENDBLOCK LATTICE_CART

%BLOCK POSITIONS_FRAC
Si 0.0 0.0 0.0
Si 0.25 0.25 0.25
%ENDBLOCK POSITIONS_FRAC

SYMMETRY_GENERATE

KPOINTS_MP_GRID 10 10 10
SPECTRAL_KPOINTS_MP_GRID 10 10 10


si2-dos.param

TASK                   : SPECTRAL
SPECTRAL_TASK : DOS
PDOS_CALCULATE_WEIGHTS : TRUE
SPIN_POLARIZED : TRUE
CUT_OFF_ENERGY : 200
IPRINT : 1

 

si2-dos.odi

###########################################################
# OptaDOS example file -- AJ Morris 18/V/11
###########################################################
# Choose the task to perform
TASK : dos

# Recalculate the Fermi energy using the new DOS
# (discasrd the CASTEP efermi)
EFERMI : optados

# Sample the DOS at 0.1 eV intervals
DOS_SPACING : 0.001

###########################################################
# A D V A N C E D K E Y W O R D S
###########################################################

# The keywords below are all at their default value
# They are presented here to indicate the internal
# workings of OptaDOS and allow you to tweak the
# output

# The broadening used, (also try linear, or fixed)
BROADENING : adaptive # Default

# The broadening parameter, A, when using adaptive smearing,
# set by eye to be similar to the linear smearing method
ADAPTIVE_SMEARING : 0.4 # Default

# The Gaussian broadening parameter for fixed smearing,
# in electron Volts
FIXED_SMEARING : 0.3 # Default

# Set the Fermi energy to zero on the output plots
SET_EFERMI_ZERO : true # Default

# Normalise the DOS with the volume of the simulation
# cell
DOS_PER_VOLUME : false # Default


###########################################################
# C O M P A T I B I L I T Y
###########################################################

# Perform numerical integration of the DOS, instead of
# semi-analytic (useful to compare with LinDOS)
NUMERICAL_INTDOS : false # Default

# When performing numerical integration of the DOS make
# sure that no Gaussians are smaller than the dos_spacing.
# (Should always be true, but useful for comparison with
# LinDOS)
FINITE_BIN_CORRECTION : true # Default

Note

There are 2 ways to use the pseudopotentials:

- Using an external pseudopotential with extention .usp

- Using an internal pseudopotential created by the code during the execution according to type mentioned  in the param file which we will do it in this tutorial.


Execution

For serial calculation

/Si2-dos$ castep.serial si2-dos
/Si2-dos$ optados si2-dos 

For parallel calculation

/Si2-dos$ mpirun -np 4 castep.mpi si2-dos

/Si2-dos$ optados.mpi si2-dos

 

We will get the following files

/Si-dos$ ls
Si2-dos.0001.spec  Si2-dos.0003.spec  Si2-dos.adaptive.agr  Si2-dos.adaptive.png  Si2-dos.bib
Si2-dos.castep_bin  Si2-dos.check    Si2-dos.dome_bin  Si2-dos.odo       Si2-dos.param 
Si_C19_LDA_OTF.usp Si2-dos.0002.spec  Si2-dos.0004.spec  Si2-dos.adaptive.dat  Si2-dos.bands         Si2-dos.castep  Si2-dos.cell        Si2-dos.cst_esp  Si2-dos.odi       Si2-dos-out.cell  Si2-dos.pdos_bin  

 

Plotting

/Si2-dos$ xmgrace Si2-dos.adaptive.agr Si2.fixed.agr

 We will get the following picture

 


 For more information check this file OPTADOS