forces and structure relaxation · optimizations in siesta(2) by default optimisations are for a...

26
Emilio Artacho Nanogune, Ikerbasque & DIPC, San Sebastian, Spain Cavendish Laboratory, University of Cambridge Forces and Structure Relaxation

Upload: others

Post on 16-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Emilio ArtachoNanogune, Ikerbasque & DIPC, San Sebastian, Spain

Cavendish Laboratory, University of Cambridge

Forces and Structure Relaxation

Page 2: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Adiabatic decoupling

(1) (2)

⇒Nuclei are much slower than electrons

F =gradient of E: used tofind minimum

!

mn

me

>>1

Quantum mechanicsMany electron problem:

Density Functional Theory

Page 3: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Potential Energy Surface (PES)

Optimizations and Phonons:Optimizations and Phonons:

-- We move We move onon the PES the PES-- Local Local vs vs global minimaglobal minima-- PES is harmonic close to minima PES is harmonic close to minima

MDMD

-- We move We move overover the PES the PES-- Good Sampling is required!! Good Sampling is required!!

Page 4: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

The Hellman-Feynman theorem

Forces on atoms:

Page 5: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Forces on the atoms

Hellman-Feynmann theorem:

!

FI = "# $ H$#RI

= "#$#RI

H$ " $ H#$#RI

" $#H#RI

$

Using an atomic-like basis:

!

" r( ) = cµ#µ r( )µ

$

FI = %& " H"&RI

= %&&RI

cµc' #µ H #'µ'

$

= %&cµ

&RI

c' + cµ

&c'&RI

(

) *

+

, -

µ'

$ #µ H #' % cµc' #µ

&H&RI

#'µ'

$ %

% cµc'&#µ

&RI

H #' + #µ H&#'&RI

(

) *

+

, -

µ'

$ Pulay forces

Page 6: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress
Page 7: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:minimum E vs atomic positions

Follow forces on atoms (gradient of function)

Page 8: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:minimum E vs atomic positions

Follow forces on atoms (gradient of function)

Page 9: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Theory for (local) geometry optimization

Gradients Hessian

αα = 1 for quadratic region

Energy minimisation within a basin

Page 10: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Conditioning

It converges on the firstiteration If all ω are equal

Condition number: Determines convergence

Given eigenvalues of Hessian

Page 11: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:minimum E vs atomic positions

Follow forces on atoms (gradient of function)

Page 12: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Optimization (and MD) general basic Step

Page 13: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Optimization in SIESTA(1)• Set runtype to conjugate gradients:

MD.TypeOfRun CG, Broyden

• Set maximum number of iterative steps:MD.NumCGsteps 100

• Optionally set force tolerance:MD.MaxForceTol 0.04 eV/Ang

• Optionally set maximum displacement:MD.MaxCGDispl 0.2 Bohr

Page 14: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:minimum E vs atomic positions

Follow forces on atoms (gradient of function)

Page 15: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:global minimum E vs atomic positions

Follow forces on atoms (gradient of function)

MD

Page 16: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:Variable cell

Page 17: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Stress tensor and pressure

!

r" # $"% r%%

& ",% = x,y,z{ }

ui" # $"%ui%%

&

'"% (1)

*E*$"%

P = +13

'"""

&

Pmol = P +1)

RIFII&

Strain tensor

Stress tensor (Siesta)

Hydrostatic pressure

Corrected pressure

Page 18: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Structural optimisation:Variable cell

Page 19: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Optimizations in SIESTA(2)By default optimisations are for a fixed cell

• To allow unit cell to vary:MD.VariableCell true

• Optionally set stress tolerance:MD.MaxStressTol 0.1 Gpa

• Optionally set cell preconditioning:MD.PreconditionVariableCell 5.0 Ang

• Set an applied pressure:MD.TargetPressure 5.0 GPa

Page 20: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

• Internal coordinates: Moleculesrepresented by :– Bond lengths χi

– Bending angles φi

– Dihedral angles ξi

Z-Matrix coordinate format

φ

ξ

Page 21: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Z-Matrix• Allows for mixing of generalised and Cartesian

coordinates: Useful for constrained relaxations

Explore the PES by usingA relevant coordinate:Useful for estimating barriers

Page 22: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Advice on optimizations in SIESTA(I)Make sure that your MeshCutoff is high enough:

- Mesh leads to space rippling- If oscillations are large convergence is slow- May get trapped in wrong local minimum

Page 23: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Eggbox ….

Page 24: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Advice on Optimizations in SIESTA(II)

Ill-conditioned systems (soft modes) can slow down optimizations, very sensitive to mesh cutoff.

Use constraints when relevant.

Fixed to Fixed to Si Si BulkBulk

Page 25: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress

Advice on Optimizations in SIESTA(III) Decouple Degrees of freedom (relax

separately different parts of the system).Look at the evolution of relevant physics quantities(band structure, Ef).

No constraints

Fix the Fix the ZeoliteZeolite,,Its relaxation is noIts relaxation is noLonger relevant.Longer relevant.FFtubetube<0.04 <0.04 eV/AeV/AFFzeolzeol>0.1 >0.1 eV/AeV/A

Page 26: Forces and Structure Relaxation · Optimizations in SIESTA(2) By default optimisations are for a fixed cell •To allow unit cell to vary: MD.VariableCell true •Optionally set stress