Exercises on basis set generation Control of the range: the energy shift Javier Junquera Most important reference followed in this lecture How to control the range of the orbitals in a balanced way: the energy shift Particle in a confinement potential: Imposing a finite + Continuous function and first derivative E is quantized (not all values allowed) Increasing E has a node and tends to - when x + Complement M III “Quantum Mechanics”, C. Cohen-Tannoudji et al. How to control de range of the orbitals in a balanced way: the energy shift Energy increase Energy shift PAO.EnergyShift (energy) Cutoff radius, rc, = position where each orbital has the node A single parameter for all cutoff radii The larger the Energy shift, the shorter the rc’s Typical values: 100-200 meV E. Artacho et al. Phys. Stat. Solidi (b) 215, 809 (1999) Bulk Al, a metal that crystallizes in the fcc structure Go to the directory with the exercise on the energy-shift Inspect the input file, Al.energy-shift.fdf More information at the Siesta web page http://www.icmab.es/siesta and follow the link Documentations, Manual As starting point, we assume the theoretical lattice constant of bulk Al FCC lattice Sampling in k in the first Brillouin zone to achieve self-consistency For each basis set, a relaxation of the unit cell is performed Variables to control the Conjugate Gradient minimization Two constraints in the minimization: - the position of the atom in the unit cell (fixed at the origin) - the shear stresses are nullified to fix the angles between the unit cell lattice vectors to 60°, typical of a fcc lattice The energy shift: Variables to control the range of the basis set The energy shift: Run SIESTA for different values of the PAO.EnergyShift Edit the input file and set up PAO.EnergyShift 0.002 Ry Then, run SIESTA $siesta < Al.energy-shift.fdf > Al.0.002.out For each energy shift, search for the range of the orbitals Edit each output file and search for: For each energy shift, search for the free energy Edit each output file and search for: We are interested in this number For each energy shift, search for the free energy Edit each output file and search for: We are interested in this number For each energy shift, search for the relaxed lattice constant Edit each output file and search for: The lattice constant in this particular case would be 2.108073 Å × 2 = 4.216146 Å For each energy shift, search for the timer per SCF step We are interested in this number The energy shift: Run SIESTA for different values of the PAO.EnergyShift Edit the input file and set up PAO.EnergyShift 0.002 Ry Then, run SIESTA $siesta < Al.energy-shift.fdf > Al.0.002.out Try different values of the PAO.EnergyShift PAO.EnergyShift 0.005 Ry $siesta < Al.energy-shift.fdf > Al.0.005.out PAO.EnergyShift 0.010 Ry $siesta < Al.energy-shift.fdf > Al.0.010.out PAO.EnergyShift 0.015 Ry $siesta < Al.energy-shift.fdf > Al.0.015.out PAO.EnergyShift 0.020 Ry $siesta < Al.energy-shift.fdf > Al.0.020.out PAO.EnergyShift 0.025 Ry $siesta < Al.energy-shift.fdf > Al.0.025.out PAO.EnergyShift 0.030 Ry $siesta < Al.energy-shift.fdf > Al.0.030.out PAO.EnergyShift 0.035 Ry $siesta < Al.energy-shift.fdf > Al.0.035.out PAO.EnergyShift 0.040 Ry $siesta < Al.energy-shift.fdf > Al.0.040.out Analyzing the results Edit in a file (called, for instance, cutoff-ef.dat) the previous values as a function of the Energy shift Analyzing the results: range of the orbitals as a function of the energy shift $ gnuplot $ gnuplot> plot "cutoff-ef.dat" u 1:2 w l, "cutoff-ef.dat" u 1:3 w l $ gnuplot> set terminal postscript color $ gnuplot> set output “range.ps” $ gnuplot> replot Analyzing the results: lattice constant as a function of the energy shift $ gnuplot $ gnuplot> plot "cutoff-ef.dat" u 1:4 w l $ gnuplot> set terminal postscript color $ gnuplot> set output “latcon.ps” $ gnuplot> replot Analyzing the results: free energy as a function of the energy shift $ gnuplot $ gnuplot> plot "cutoff-ef.dat" u 1:5 w l $ gnuplot> set terminal postscript color $ gnuplot> set output “freener.ps” $ gnuplot> replot Analyzing the results: time per SCF step as a function of the energy shift $ gnuplot $ gnuplot> plot "cutoff-ef.dat" u 1:6 w l $ gnuplot> set terminal postscript color $ gnuplot> set output “timer.ps” $ gnuplot> replot