# Crystalline silicon : computation of the total energy using PBE0 functional
# PAW.

ndtset 2         #  First LDA, then PBE0 from LibXC, then native ABINIT PBE0
gpu_option 2

#Definition of the unit cell
acell 3*10.217         # Data from PRB 48, 5058
rprim  0.0  0.5  0.5   # In tutorials 1 and 2, these primitive vectors
       0.5  0.0  0.5   # (to be scaled by acell) were 1 0 0  0 1 0  0 0 1
       0.5  0.5  0.0   # that is, the default.

#Definition of the atom types
ntypat 1          # There is only one type of atom
znucl 14          # The keyword "znucl" refers to the atomic number of the
                  # possible type(s) of atom. The pseudopotential(s)
                  # mentioned in the "files" file must correspond
                  # to the type(s) of atom. Here, the only type is Silicon.


#Definition of the atoms
natom 2           # There are two atoms
typat 1 1         # They both are of type 1, that is, Silicon.
xred              # This keyword indicate that the location of the atoms
                  # will follow, one triplet of number for each atom
   0.0  0.0  0.0  # Triplet giving the REDUCED coordinate of atom 1.
   1/4  1/4  1/4  # Triplet giving the REDUCED coordinate of atom 2.
                  # Note the use of fractions (remember the limited
                  # interpreter capabilities of ABINIT)
istwfk *1

#Definition of the planewave basis set
ecut  6.0         # Maximal kinetic energy cut-off, in Hartree
pawecutdg 10.0

#Definition of the k-point grid
kptopt 1          # Option for the automatic generation of k points, taking
                  # into account the symmetry
ngkpt 3 3 3       # This is a 2x2x2 grid based on the primitive vectors
nshiftk 1         # of the reciprocal space
shiftk 0.0 0.0 0.0

#Definition of the SCF procedure
nstep 13          # Maximal number of SCF cycles
tolwfr1 1.0d-18
toldfe2 1.0d-7    # Will stop when, twice in a row, the difference
                  # between two consecutive evaluations of total energy
                  # differ by less than toldfe (in Hartree)
toldfe3 1.0d-7
diemac 12.0

#Definition of the Hartree-Fock calculation
ixc2 -406           # Calculation with PBE0 functional
ixc3 41             # Calculation with PBE0 functional
getwfk -1        # Start from previous wavefunctions to ease convergence

#Additional (and facultative) variables for Hartree-Fock
nkpthf  27          # number of k-point in the full-BZ
nbandhf  4         # number of occupied states
nblock_lobpcg 1

 pp_dirpath "$ABI_PSPDIR"
 pseudos "Si.LDA_PW-JTH.xml"

#%%<BEGIN TEST_INFO>
#%% [setup]
#%% executable = abinit
#%% [files]
#%% files_to_test = t27.abo, tolnlines=15, tolabs=1.000e-08, tolrel=5.000e-04
#%% [paral_info]
#%% max_nprocs = 2
#%% [extra_info]
#%% authors = M. Sarraute
#%% keywords = HF, PBE0
#%% description = Test of PBE0 with GPU, PAW, from LibXC
#%%<END TEST_INFO>
