VASP CNSI workshop2016 FINALcsc.cnsi.ucsb.edu/.../docs/vasp_cnsi_workshop2016_final.pdfN POTCAR...

Preview:

Citation preview

VASPWorkshopHartwin Peelaers &Darshana Wickramaratne

November29,2016

• Densityfunctionaltheory

• ViennaAb-initioSimulationPackage(VASP)

• SettingupaVASPcalculation

• Tutorial1:Structureoptimization

• Tutorial2:Electronic structure

• Parallelizationschemes

• Post-processingtips

Outline

Densityfunctionaltheory

KineticenergyElectron-electron

Exchange-correlationpotential

Electron-ionpotential

Surf. Sci. 541, 101 (2003) Phys. Rev. B 89, 035204 (2014) Phys. Rev. B 76, 205322 (2007)

l Different approaches to the exchange-correlation potential are implemented− LDA: Local density approximation− GGA: Generalized gradient approximation− Hybrids, such as HSE− Meta-GGAs− VdW-functionals: Grimme D2 and D3, Tkatchenko-

Scheffler, vdW-DF− …

l But also more advanced methods− GW− ACFDT in RPA (adiabatic connection fluctuation

dissipation theorem in the random phase approximation)− MP2 (2nd order Møller-Plesset)

ApproximationsofVXC

l DensityFunctionalTheory(DFT)

l Usesaplane-wavebasis− Numberofplanewavesisdeterminedbyacutoffenergy→

controlsaccuracyofbasisandcanbesystematicallyincreased

l Usesperiodicboundaryconditions− Simulatinglower-dimensionalsystemsrequiresaddingvacuum

l UsesPAWpseudopotentials− Projected-augmentedWavepseudopotentials− Notall-electron:Coreelectronsare“frozen”andreplacedbya

pseudopotential

ViennaAb-initioSimulationPackage(VASP)

− Totalenergies,forces&relaxedstructures

− Bandstructures

− DOSandprojectedDOS(densityofstates)

− Magneticproperties

− Responsetoelectricfieldsorionicdisplacement(dielectric

constants,Berryphase,phonons(Gammaonly),elastic

constants,…)

− Opticalproperties(absorptionspectra,dielectricfunction,...)

WhatquantitiescanVASPcalculate

VASPrequires4inputfilestorunacalculation

1. POSCAR2. POTCAR3. KPOINTS4. INCAR

ForfurtherdetailsrefertoVASPmanualhttp://cms.mpi.univie.ac.at/vasp/vasp/vasp.htmlhttps://cms.mpi.univie.ac.at/wiki/index.php/The_VASP_Manual

SettingupaVASPcalculation

Definethestructureofyourmaterial,i.eBravaislatticeandbasis.

POSCAR

GaN wurtzite3.1890.50246-0.870290.000000.502460.870290.000000.000000.000001.63140Ga N22Direct0.333330.666670.000000.666670.333330.500000.333330.666670.376480.666670.333330.87648

VisualizestructureswithVESTA- http://jp-minerals.org/vesta/en/

#Header#Lattice constant

#Latticevectors

#Elements#No.Atomsperelement#Coordinate system

#Coordinates

www.materialsproject.org

StructuresareobtainedfromtheInorganicCrystalStructureDatabase(ICSD)

POSCARs&theMaterialsProject

• ContainsthePAWpotentialsforallelementsdefinedinthePOSCAR.

• POTCARdatasetsstartwithadescriptionof:• Elementnameandatomicmass• Numberofvalenceelectrons• Defaultenergycutoff• ParameterusedtogeneratethePAWdataset

POTCAR

NPOTCARPAW_PBEN08Apr20025.00000000000000parametersfromPSCTRare:VRHFIN=N:s2p3LEXCH=PEEATOM=264.5486eV,19.4438Ry

TITEL=PAW_PBEN08Apr2002LULTRA=FuseultrasoftPP?IUNSCR=1unscreen:0-lin1-nonlin2-noRPACOR=1.200partialcoreradiusPOMASS=14.001;ZVAL=5.000massandvalenzRCORE=1.500outmostcutoffradiusRWIGS=1.400;RWIGS=0.741wigner-seitzradius(auA)ENMAX=400.000;ENMIN=300.000eV

#Header#No.ofvalenceelectrons#valenceorbitals#Recommendedplanewavecutoffenergies

• DefinethepointsVASPusestosamplethefirstBrillouin zoneinreciprocalspace.

KPOINTS

Automaticgeneration- MPscheme0Monkhorst-Pack886000

• Definethepathofk-pointsalongwhichbandstructuresarecalculated.

TheINCARfilecontainsalloftheinputparametersthatcontrolthecalculation.

Definesettingstospecify:1. Typeofcalculation;eg.self-consistentfield(SCF),

structureoptimization,densityofstates,bandstructure,dielectricproperties,etc.

2. Inputsregardingprecision,requiredlevelofconvergence,choiceofnumericalalgorithms.

ForallINCARtagsref:http://cms.mpi.univie.ac.at/wiki/index.php/Category:INCAR

INCAR

1. DefineinitialPOSCARandKPOINTgrid2. CreatePOTCARforGaN

catGa/POTCARN/POTCAR>>POTCAR3.DefineoptimizationparametersinINCAR

Example1:GaN Structureoptimization

SYSTEM=GaNLWAVE=.True.LREAL=.FALSE.#ParametersISMEAR=0SIGMA=0.05ENCUT=400PREC=Accurate

#CellOptimisationEDIFFG=-0.005EDIFF=1E-5ISIF=3IBRION=2

Example1:Structureoptimizationoutput

NEdEdepsncgrmsortSDA:1-0.115016930235E+030.25406E+010.00000E+005120.176E+020.000E+00CGA:2-0.117416954127E+03 -0.24000E+01-0.24655E+015120.118E+01-0.225E+00CGA:3-0.117803679652E+03 -0.38673E+00-0.38703E+005120.302E+00-0.392E-02CGA:4-0.117912013796E+03 -0.10833E+00-0.10837E+005120.510E-01-0.358E-03CGA:5-0.117924142175E+03 -0.12128E-01-0.12125E-015120.219E-01-0.233E-04CGA:6-0.117931700856E+03 -0.75587E-02-0.75631E-025120.753E-02-0.634E-04CGA:7-0.117935095864E+03 -0.33950E-02-0.33988E-025120.175E-02-0.190E-04CGA:8-0.117935693145E+03 -0.59728E-03-0.59788E-035120.662E-03-0.117E-04CGA:9-0.117935831345E+03 -0.13820E-03-0.13836E-035120.135E-030.209E-05CGA:10-0.117935876522E+03-0.45178E-04-0.45331E-045120.283E-04-0.352E-053F=-.11793588E+03E0=-.11793588E+03dE=-.109175E+00mag=0.0000

TotalenergyfollowingstructureoptimizationisoutputatendofOSZICAR file

FinaloptimizedstructureisoutputtoCONTCAR

1. Useoptimizedstructuretorunaself-consistentfield(SCF)calculation.SetNSW=0(1stepscf)cp CONTCARPOSCAR

2. DefineINCARfornon-SCFcalculationusingCHGCARfromStep1.

Example2:GGAbandstructureworkflow

SYSTEM=GaNICHARG=11#usechargedensityfromfile;donotupdateLWAVE=.True.LREAL=.FALSE.

#ParametersISMEAR=0SIGMA=0.05ENCUT=400PREC=Accurate

#CellOptimisationEDIFF=1E-5

Example2:GGAbandstructureworkflow

3. SetuppathofKPOINTSforbandstructurecalculationandsubmitsimulation.

Kpoint pathGaN15!15intersectionsLine-modeReciprocal0.0000.0000.0!Gamma0.5000.0000.0!M

0.5000.0000.0!M0.6660.3330.0!K

0.6660.3330.0!K0.0000.0000.0!G

0.0000.0000.0!G0.0000.0000.5!A

#Numberofkpoints tointerpolatebetween#InstructVASP tointerpolatebetweenpairsofkpoints#kpoint coordinatesystem

44110.1156815E+020.3204707E-090.3204707E-090.5202551E-090.5000000E-151.000000000000000E-004CARGaN10 30 10

0.0000000E+000.0000000E+000.0000000E+00 0.6944444E-021-15.7839472-13.3191513-5.63754240.76061250.76092261.85231171.86845081.86879195.343214107.858293

Example2:EIGENVALformat

#kpoint coordinates#Bandindex&eigenenergy

#numberofbands#numberofkpoints

Same information can be found in OUTCAR and vasprun.xml

GaN GGAbandstructure

Eg =1.98eV(Experiment3.5eV)

1.GGAcalculationfirsttogetagoodstartingwavefunction.2.HSEself-consistentcalculationrestartingfromGGAWAVECAR.

Example3:HSEbandstructure

SYSTEM=GaNISTART=1LWAVE=.True.LREAL=.FALSE.PREC=Accurate

#ParametersISMEAR=0SIGMA=0.05ENCUT=400

#SCFEDIFF=1E-5

#HybridfunctionalHSEflagsLHFCALC=.TRUE.#doahybrid calculationAEXX=0.25#use25%exactexchangeHFSCREEN=0.2#defaultHSE06screeninglength(inÅ-1)PRECFOCK=Fast#precision tousefortheFFTgridsforHartree-Fock.Otheroptions areNormaland

Accurate.FastissufficienttodorelaxationsandmostothercalculationsALGO=All#thescf algorithmtouse.3options forhybrids: All,Normal,andDamped

l Non-selfconsistentcalculationsnotpossible:needwavefunctionsl Method

1. Convergewavefunction,withHSEandastandardk-pointgrid2. CopycontentsofIBZKPTfiletotheKPOINTSfile

cpIBZKPTKPOINTS3. EdittheKPOINTSfileandaddthepointsforthebandstructureatthe

end,using0asweight4. INCAR:

• setNELMINtoatleast5(zeroweightk-pointsdonotentertheconvergencecriterion).

• SetALGO=Normal(correctorderingunoccupiedbands)5. PlottheEIGENVALfile,omittingthenon-zeroweightk-points(asthese

arenotpartofthebandstructure)l Forcomputationalefficiency(toavoidmemoryproblems):splittheband

structurecalculationsinsegments,runseparately,andmergebeforeplotting

Example3:HSEbandstructure

Example3:HSEbandstructureKPOINTSKPOINT path21Reciprocal lattice

0.12500000000000 0.12500000000000 0.12500000000000 20.37500000000000 0.12500000000000 0.12500000000000 6-0.37500000000000 0.12500000000000 0.12500000000000 6-0.12500000000000 0.12500000000000 0.12500000000000 60.37500000000000 0.37500000000000 0.12500000000000 6-0.37500000000000 0.37500000000000 0.12500000000000 12-0.12500000000000 0.37500000000000 0.12500000000000 12-0.37500000000000 -0.37500000000000 0.12500000000000 60.37500000000000 0.37500000000000 0.37500000000000 2-0.37500000000000 0.37500000000000 0.37500000000000 60.00000000000000 0.00000000000000 0.00000000000000 00.05000000000000 0.00000000000000 0.00000000000000 00.10000000000000 0.00000000000000 0.00000000000000 00.15000000000000 0.00000000000000 0.00000000000000 00.20000000000000 0.00000000000000 0.00000000000000 00.25000000000000 0.00000000000000 0.00000000000000 00.30000000000000 0.00000000000000 0.00000000000000 00.35000000000000 0.00000000000000 0.00000000000000 00.40000000000000 0.00000000000000 0.00000000000000 00.45000000000000 0.00000000000000 0.00000000000000 00.50000000000000 0.00000000000000 0.00000000000000 0

#totalnumberofkpoints

#kpoints fromIBZKPT

#kpointpathfromzone-centertoMforbandstructure

GaN HSEbandstructure

Eg =3.48eV(Experiment3.5eV)

l VASPisahighlyparallelizedcodecapableofrunningsimulationsonlargestructures.

l ThreedifferentvariablesforparallelizationinVASP:− KPAR− NPAR− NCORE

RunningVASPjobsefficiently

l Mostefficientmethod toparallelizel Onlyabletoparallelizeoverk-pointsinIBZKPTfile!NOT thoselistedin

theHFroutineofVASP(ifusinghybrids)l SetKPARtonumberthatdividesthenumberofk-pointsinIBZKPTfilel VASPdoesnotcheckifthenumberisactuallyefficient(orusable)l RemainderofcoreswillbeusedforNPAR

KPAR

l Parallelizationoverbands.DefaultinVASPl GGA:NPAR=SQRT(NBANDS)l HSE:NPARshoulddividethenumberofbands(NBANDS),ifnot,VASPwill

adjustthenumberofbandsup(notefficient,wasteofcpu time)l Maximumparallelization:NPAR=NBANDS,butNOT efficientl Besttoonlyuse1or2nodes;HSE:NPAR=NBANDS/4

NPAR

KPAR(near)linearscaling! NPARalwayslessefficient

NPARvs.KPAR

l Numberofcores“sharingworkonindividualorbital”l IntendedforGGA,HSEisexperimentall HSE:Worstefficiencyofthethreemethodsl NCORE=#cores/NPARl NCORE=1isnotthesameasnotsettingit!l IfNPARispresent:NPARisused

NCORE

l Ifpossible:useKPAR− Onlyk-pointsinIBZKPT

l Nextbestoption:NPAR− GGA:SQRT(NBANDS)− HSE:ShoulddivideNBANDS− Ruleofthumb:

l 1or2nodes:okl HSE:NBANDS/4:maxnumberofNPAR

SummaryofVASPparallelization

• Anypackagethatallowsyoutoreadintextfilesandplot2Dor3Ddata,e.g.,Gnuplot,Python,MATLAB.

• Output(repeated)inseveralfiles:OUTCAR,vasprun.xml,OSZICAR,EIGENVAL

• SeveralrecentPythonpackagesthatparseVASPoutputfiles,andthatcanbeusedtosetupandcontrolthecalculations

www.pymatgen.org

https://wiki.fysik.dtu.dk/ase/

Postprocessingtips

Questions?

Recommended