Example: CO absorption on a MgO slab: fragment option, PEDA and PEDANOCV¶
This example shall illustrate the use of the Fragment
keywords in combination with the PEDA
and PEDANOCV
keywords to perform the PEDANOCV calculation. For this example two fragment calculations are necessary to calculate the unperturbed eigensystems of the MgO slab and CO fragment. Here, the sampling of the reciprocal space is restricted to \(\Gamma\) point.
Fragment calculations¶
!------------------------------ MgO slab ------------------------
$ADFBIN/band << eor
Title MgO fragment
KSpace
Grid 1 1
end
BeckeGrid
quality basic
End
relativistic zora
XC
GGA PBE
End
Units
length angstrom
end
Atoms
Mg 0.00000000 0.00000000 0.00000000
Mg 1.50260191 -1.50260191 -2.12400000
Mg 0.00000000 0.00000000 -4.24800000
Mg 3.00520382 0.00000000 0.00000000
Mg 1.50260191 1.50260191 -2.12400000
Mg 3.00520382 0.00000000 -4.24800000
O 1.50260191 -1.50260191 0.00200000
O 0.00000000 0.00000000 -2.12400000
O 1.50260191 -1.50260191 -4.25000000
O 1.50260191 1.50260191 0.00200000
O 3.00520382 0.00000000 -2.12400000
O 1.50260191 1.50260191 -4.25000000
End
Lattice
3.00520382 -3.00520382 0.00000000
3.00520382 3.00520382 0.00000000
End
BasisDefaults
BasisType TZP
Core none
End
END INPUT
eor
mv RUNKF MgO.runkf
!------------------------------ CO fragment ------------------------
$ADFBIN/band << eor
Title CO fragment
KSpace
Grid 1 1
End
BeckeGrid
quality basic
End
relativistic zora
XC
GGA PBE
End
Units
length angstrom
end
Atoms
C 0.00000000 0.00000000 2.61000000
O 0.00000000 0.00000000 3.73700000
End
Lattice
3.00520382 -3.00520382 0.00000000
3.00520382 3.00520382 0.00000000
End
BasisDefaults
BasisType TZP
Core none
End
END INPUT
eor
mv RUNKF CO.runkf
PEDANOCV calculation¶
The two result files, MgO.runkf and CO.runkf, can now be used to perform the PEDANOCV. Here, the mapping of the atoms of the PEDA calculation and the fragment calculations is necessary. And the used grid points in reciprocal space have to be identical in all three calculations.
!------------------------------ PEDANOCV calculation ------------------------
$ADFBIN/band << eor
Title H-H chain
KSpace
Grid 1 1
End
BeckeGrid
quality basic
End
relativistic zora
XC
GGA PBE
End
fragment MgO.runkf
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
end
fragment CO.runkf
2 13
1 14
end
PEDA
PEDANOCV
EigvalThresh 0.001
End
units
length angstrom
end
Atoms
Mg 0.00000000 0.00000000 0.00000000
Mg 1.50260191 -1.50260191 -2.12400000
Mg 0.00000000 0.00000000 -4.24800000
Mg 3.00520382 0.00000000 0.00000000
Mg 1.50260191 1.50260191 -2.12400000
Mg 3.00520382 0.00000000 -4.24800000
O 1.50260191 -1.50260191 0.00200000
O 0.00000000 0.00000000 -2.12400000
O 1.50260191 -1.50260191 -4.25000000
O 1.50260191 1.50260191 0.00200000
O 3.00520382 0.00000000 -2.12400000
O 1.50260191 1.50260191 -4.25000000
O 0.00000000 0.00000000 3.73700000 ! BAND will automatically block
C 0.00000000 0.00000000 2.61000000 ! atoms of same type together!!!!!!
End
Lattice
3.00520382 -3.00520382 0.00000000
3.00520382 3.00520382 0.00000000
End
BasisDefaults
BasisType TZP
Core none
End
END INPUT
eor
mv RUNKF decomp.runkf
In the output file the results can be found in the PEDANOCV block after the Energy Analysis and PEDA block.
The NOCV orbitals and NOCV deformation densities can be visualized using adfview or by a restart calculation. In the latter case, one adds the Restart
block key with the options File decomp.runkf
and the NOCVdRhoPlot
and NOCVOrbsPlot
keys. These will trigger the calculation of the plot properties. To specifiy which NOCV deformation densities and NOCV orbitals are plotted, one adds the NOCVdRhoPlot
and NOCVOrbsPlot
block key. In both blocks the line 1 Band 1 5
means, that for k-point 1 the densities/orbitals 1 to 5 are calculated.
$ADFBIN/band << eor
Title Restart Calculation
Restart
File decomp.runkf
NOCVdRhoPlot
NOCVOrbsPlot
End
NOCVdRhoPlot
1 Band 1 5
End
NOCVOrbsPlot
1 Band 1 5
End
Grid
Type coarse
End
KSpace
Grid 1 1
End
BeckeGrid
quality basic
End
relativistic zora
XC
GGA PBE
End
units
length angstrom
end
Atoms
Mg 0.00000000 0.00000000 0.00000000
Mg 1.50260191 -1.50260191 -2.12400000
Mg 0.00000000 0.00000000 -4.24800000
Mg 3.00520382 0.00000000 0.00000000
Mg 1.50260191 1.50260191 -2.12400000
Mg 3.00520382 0.00000000 -4.24800000
O 1.50260191 -1.50260191 0.00200000
O 0.00000000 0.00000000 -2.12400000
O 1.50260191 -1.50260191 -4.25000000
O 1.50260191 1.50260191 0.00200000
O 3.00520382 0.00000000 -2.12400000
O 1.50260191 1.50260191 -4.25000000
O 0.00000000 0.00000000 3.73700000
C 0.00000000 0.00000000 2.61000000
End
Lattice
3.00520382 -3.00520382 0.00000000
3.00520382 3.00520382 0.00000000
End
BasisDefaults
BasisType TZP
Core none
End
debug BlockPropertyModule
END INPUT
eor
The important output of this calculation is the TAPE41 file. Renaming it to foobar.t41 will allow adfview to read and interpret the data stored on this file.