Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version...

16
1 2 2 3 3 8 8 8 9 11 11 14 14 16 Table of Contents Table of Contents Electronic structure of NiO with LDA+U Introduction The electronic structure of NiO calculated with LSDA Setting up the calculation Performing the calculation Analysing the results Mulliken Population Projected density of states LDA+U calculation for the NiO crystal Calculations Analyzing the results Comparing the LSDA and LSDA+U projected DOS References

Transcript of Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version...

Page 1: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

122338889

11111414

16

Table of Contents

Table of ContentsElectronic structure of NiO with LDA+U

IntroductionThe electronic structure of NiO calculated with LSDA

Setting up the calculationPerforming the calculationAnalysing the results

Mulliken PopulationProjected density of states

LDA+U calculation for the NiO crystalCalculationsAnalyzing the results

Comparing the LSDA and LSDA+U projected DOS

References

Page 2: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Downloads & Links

PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial

Docs » Tutorials » Spintronics » Electronic structure of NiO with LDA+U

Electronic structure of NiO with LDA+U

Version: 2016.3

By tuning the empirical Hubbard parameter U, one can obtain the correct band gap forsemiconductors even with LDA or GGA. This tutorial shows how to approach this type of calculationsby taking NiO as an example, and at the same time it also introduces the density of states (DOS)functionality in ATK.

Introduction

The LDA and GGA approximations to the exchange-correlation energy has a number ofshortcomings, where the most important are

Self interaction, an electron interacts with itself and this prevents electrons from localizing.Poor approximation for excited states, band gaps are often too low.

The mean-field Hubbard correction, popularly called LDA+U, DFT+U, or XC+U, is a semi-empiricalcorrection which tries to improve on these deficiencies of the LDA and GGA functionals.

In the DFT+U an additional energy term,

is added to the Exchange-correlation energy [CdG05]. In this equation, is the projection onto an atomic shell and is the “Hubbard U” for that shell. The energy term is zero for a fully occupied or unoccupied shell, while positive for a fractionally

occupied shell.

QuantumWise

TRY IT!

COMPANY

CONTACT

EU =∑

μ Uμ (nμ − n2μ)

12

EU

Page 3: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

The energy is thereby lowered if states become fully occupied. This may happen if the energy levelsmove away from the Fermi Level, i.e. increasing the band gap, or if the broadening of the states isdecreased, i.e. the electrons are localized. Thus, the Hubbard U improves on the deficiencies of theexchange-correlation energies.

The NiO crystal has a too low band gap in LDA and is one of the standard examples of how theLDA+U approximation can be used to improve the description of the electronic structure of solids[SLP99]. In this tutorial you will compare the LDA and LDA+U model for this system.

Further details of the Hubbard U implementation in ATK can be found in the ATK Reference Manual,particularly the section XC+U mean-field Hubbard term.

The electronic structure of NiO calculated with LSDA

NiO has a fcc crystal structure with two atoms in the unit cell. The Ni atoms spin polarize and forman anti-ferromagnetic arrangement in the (111) direction of the fcc cell. The structure can bedescribed by a rhombohedral unit cell with 4 atoms in the basis [CdG05]. The structure is givenbelow in the ATK NanoLanguage format:

# Set up latticelattice = Rhombohedral(5.138*Angstrom, 33.5573*Degrees)

# Define elementselements = [Nickel, Oxygen, Nickel, Oxygen]

# Define coordinatesfractional_coordinates = [[ 0. , 0. , 0. ], [ 0.25, 0.25, 0.25], [ 0.5 , 0.5 , 0.5 ], [ 0.75, 0.75, 0.75]]

# Set up configurationbulk_configuration = BulkConfiguration( bravais_lattice=lattice, elements=elements, fractional_coordinates=fractional_coordinates )

Copy the script and save it as NiO.py , or download it directly: NiO.py.

Note

The rhombohedral unit cell vectors are given as, where

is the fcc lattice constant. The length of the rhombohedral unit cell vectors are therefore givenby

, and are in accordance with the experimental fcc lattice constant of 4.19 Å.

Setting up the calculation

You will in this section set up a spin polarized DFT calculation using the local spin-densityapproximation (LSDA) for the NiO electronic struature and calculate the Mulliken population anddensity of states. If you are not familiar with the work flow of VNL and ATK you are recommended tofirst go through the Basic VNL and ATK Tutorial.

(1, , )a12

12

a

√ a32

Page 4: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Start up VNL and drag the script NiO.py onto the Builder. The NiO crystal will be added to theBuilder Stash.

Next, click the the button and select the Script Generator.

Tip

Alternatively you can drag the script NiO.py directly onto the Scripter from the VNL ProjectFiles list.

Change the default output file name to NiO_lsda.nc and add the following blocks to the script:

New Calculator. Initial State. Analysis and select DensityOfStates. Analysis and select MullikenPopulation.

Page 5: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Now double-click the New Calculator to open the calculator widget.

Select a 6x6x6 k-point sampling and LSDA exchange-correlation.

Page 6: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

The next step is to set up the anti-ferromagnetic NiO spin arrangement. For this purpose, open the Initial State block.

Select User spin – this will allow you to individually set the spin on each atom. Set opposite spins onthe two nickel atoms and no spin on the oxygens as illustrated below.

Page 7: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Important

The initial spin on each atom is given relative to the atomic spin of the element as obtained byHund’s rule. For nickel the electronic configuration of the atom is [Ar]3d 4s (see periodic table inthe ATK Reference Manual.). The 3d shell is fractionally occupied, and only this shell willcontribute to the spin of the atom. According to Hund’s rule the 3d shell has 5 electrons in the updirection and 3 electrons in the down direction, giving a total atomic spin of 2

for nickel (in units of Bohr magnetons).

Finally, open the DensityOfStates block and set the k-point sampling to 10x10x10. It is in generalwise to choose a quite dense k-point grid for DOS analyses; otherwise it may not capture theaccurate variation of the density of states with energy.

8 2

μB

Page 8: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

You now finished setting up the script defining the ATK calculations. Save the script as NiO_lsda.py .Do not close the Scripter window – you will need it again later.

Performing the calculation

To start the calculations, send the script to the Job Manager by using the button.

Choose a Local machine for executing the job and click start. The job will finish after 1-2 minutesand you can inspect the results.

Analysing the results

Mulliken Population

To inspect the Mulliken population reported in the calculation log file, scroll down to the end of thelog file and you will find a report as shown below.

Page 9: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Tip

The Mulliken population can also be inspected by selecting the Mulliken Population item

on the VNL LabFloor. Use the Text Representation tool in the right-hand panel to see theresults.

The Mulliken population reports the numbers of electrons per spin and orbital, as well as the orbitalsum for each atom. Note that oxygen is non-polarized while the two nickel atoms are polarized indifferent directions, thus forming an anti-ferromagnetic arrangement. The polarization can be readof as the difference between the number of electrons in each spin direction (5.339) and (4.033). Theresulting value of 1.34

is in good agreement with other LSDA calculations [SLP99].

Projected density of states

To investigate the NiO density of states (PDOS), select the DensityOfStates item on the VNL

μB

Page 10: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

LabFloor, click the 2D Plot tool in the right-hand panel. You may need to zoom in a little on the plot;use the left mouse button for this.

Tip

The plot shows the total density of states of the spin up channel with a black line and minus theresult for the spin down channel with a red line. If you de-select Flip spin-down in the Optionsmenu you will obtain a positive axis for the spin down channel.

The total DOS shows no difference between the two spin channels. However, you saw from theMulliken population that the nickel atoms are spin polarized!

To inspect the projected DOS corresponding to just one Ni atom, select a nickel atom with the left-mouse, as illustrated below.

Page 11: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

The PDOS is simply the total DOS projected onto the selected Ni atom. The expected differencebetween the spin-up and spin-down DOS channels is now apparent.

Tip

By selecting multiple atoms (using Ctrl+left-mouse) and several shells you can make combinedprojections.

The calculation predicts a band gap of ~0.4 eV, which is much smaller than the experimental value of4.0 eV [AAL97]. In the next chapter you will see how the description of the band gap is improved withthe LSDA+U approximation.

LDA+U calculation for the NiO crystal

You will now perform a LSDA+U calculation of the NiO crystal, using U = 4.6 eV for the nickel d-states,as proposed in [CdG05].

Calculations

You will need to modify the script generated above for the LSDA calculation. Open the Scripterused in the previous chapter and make the following modifications:

Change the default output file name to NiO_lsda_u.nc .Change the Script detail to Show defaults.

Page 12: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Open the New Calculator:

Switch to the Basis set/exchange correlation tab.Change the option Hubbard U from Disabled to Onsite.In the Bottom Basis set section, click Set in the right-hand end of the row corresponding tonickel, and set the Hubbard U parameter for the 3d orbital to 4.6 eV.

Page 13: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Next transfer the script to the Editor using the send to button, in order to check that all theparameters are properly set.

In the editor locate the line where the nickel basis is defined and check that the hubbard Uparameter is set to 4.6 eV for the nickel_3d and nickel_3d_split orbitals.

Page 14: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Tip

Hubbard U calculations can have different self-consistent states, and the state that is obtainedfrom the self-consistent iteration may depend on the initial density matrix. The defaultAnisotropic filling method is sometimes needed in order to end up in the correct ground state.The filling method SphericalSymmetric is an alternative.

Now save the script as NiO_lsda_u.py and execute the job using the Job Manager.

Analyzing the results

First inspect the Mulliken population in the log file. You should find a magnetic moment of 1.72 on a nickel atom, which is in good agreement with the experimental result of 1.64 – 1.70 [AAL97].

To determine the band gap, inspect the printed density of states in the log file. You should find thatthe DOS is zero in the range -0.67 to +2.36 eV, corresponding to a band gap of 3.03 eV. This is muchhigher than the LSDA value of 0.4 eV, and in better agreement with the experimental value of 4.0 eV[AAL97] and in accordance with [CdG05].

Comparing the LSDA and LSDA+U projected DOS

The final step is to compare the nickel PDOS obtained with LSDA and LSDA+U. You will here usePython scripting to perform the analysis. The plotting is based on the matplotlib package which ispart of ATK NanoLanguage, see Plotting using pylab for more information.

The script dos-comparision.py performs the analysis. It is shown below:

μB

μB

Page 15: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

#read in the dos objectdos = nlread('NiO_lsda.nc',DensityOfStates)[0]#generate some energiesenergies = numpy.linspace(-5,5,400)*eV#calculate the spectrumn0_up = dos.tetrahedronSpectrum(energies=energies, spin=Spin.Up, projection_list = ProjectionList([0]))

n0_down = dos.tetrahedronSpectrum(energies=energies, spin=Spin.Down, projection_list = ProjectionList([0]))e = dos.energies()

#do the same for LSDA+Udos_u = nlread('NiO_lsda_u.nc',DensityOfStates)[0]n0_up_u = dos_u.tetrahedronSpectrum(energies=energies, spin=Spin.Up, projection_list = ProjectionList([0]))

n0_down_u = dos_u.tetrahedronSpectrum(energies=energies, spin=Spin.Down, projection_list = ProjectionList([0]))

#plot the spectrum using pylabimport pylab#first plot the up component with dotspylab.plot(e.inUnitsOf(eV), n0_up.inUnitsOf(eV**-1), 'k:',label = 'LSDA')#now plot the down component with negative values and dotspylab.plot(e.inUnitsOf(eV), -1.*n0_down.inUnitsOf(eV**-1), 'k:')#now plot the LSDA+U up components with solidpylab.plot(e.inUnitsOf(eV), n0_up_u.inUnitsOf(eV**-1),'k',label = 'LSDA+U')#now plot the LSDA+U down component with negative values and solidpylab.plot(e.inUnitsOf(eV), -1.*n0_down_u.inUnitsOf(eV**-1),'k')#show legendspylab.legend()pylab.xlabel("Energy (eV)")pylab.ylabel("DOS (1/eV)")pylab.show()

Download the script and execute it using the Job Manager. The following plot is produced,illustrating the LSDA and LSDA+U projected DOS for the nickel atom. Notice the large difference inband gap between the two calculations (region of zero DOS around the Fermi level, at 0 eV energy).

Page 16: Electronic structure of NiO with LDA+U | QuantumWise 2016 ... fileDownloads & Links PDF version NiO.py ATK Reference Manual Basic VNL and ATK Tutorial Docs » Tutorials » Spintronics

Next

References

[AAL97] (1, 2, 3) Vladimir I Anisimov, F Aryasetiawan, and A I Lichtenstein. First-principles calculations of theelectronic structure and spectra of strongly correlated systems: the lda + u method. Journal of Physics:Condensed Matter, 9(4):767, 1997.

[CdG05] (1, 2, 3, 4) M. Cococcioni and S. de Gironcoli. Linear response approach to the calculation of theeffective interaction parameters in the LDA+U method. Phys. Rev. B, 71:035105, Jan 2005.doi:10.1103/PhysRevB.71.035105.

[SLP99] (1, 2) A. B. Shick, A. I. Liechtenstein, and W. E. Pickett. Implementation of the LDA+U method using thefull-potential linearized augmented plane-wave basis. Phys. Rev. B, 60:10763–10769, Oct 1999.doi:10.1103/PhysRevB.60.10763.

Previous

© Copyright 2016, QuantumWise.