Time Evolution: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
Line 1: Line 1:


Description: {{TAG|ALGO}} = TIMEEV calculates the frequency-dependent dielectric function after the electronic ground state has been determined using the time evolution algorithm (only available in VASP v6).  
Description: {{TAG|ALGO}} = TIMEEV calculates the frequency-dependent dielectric function using the time evolution algorithm (only available in VASP v6). A standard DFT ground state calculation
should be performed before selecting  {{TAG|ALGO}} = TIMEEV.
----
----


The time evolution algorithm applies a short Dirac delta pulse of electric field and then follows the evolution of the dipole moments. The Green-Kubo relation allows calculating the frequency dependent dielectric response function from the time evolution of the dipole moments <ref name="kubo:57"/>.
The time evolution algorithm applies a short Dirac delta pulse of electric field and then follows the evolution of the dipole moments. The Green-Kubo relation allows calculating the frequency dependent dielectric response function from the time evolution of the dipole moments <ref name="kubo:57"/>.


Details of the implementation are explained in Ref. <ref name="sander:prb:2015"/>. The time evolution algorithm in VASP uses relatively large time steps by projecting, after each time step, onto a specific number of occupied and unoccupied bands. The number of occupied and unoccupied bands are controlled by the tags {{TAG|NBANDSO}}, {{TAG|NBANDSV}}, and OMEGAMAX in the same way as for Casida and BSE calculations. This has the advantage that the time evolution results are strictly compatible to the results of the BSE calculations. The disadvantage is that a sufficient number of unoccupied orbitals needs to be calculated in the preceding ground state calculation. Note, however, that unoccupied orbitals are not propagated, which saves the computation time.
Details of the implementation are explained in Ref. <ref name="sander:prb:2015"/>. The time evolution algorithm in VASP uses relatively large time steps by projecting, after each time step, onto a specific number of occupied and unoccupied bands. The number of occupied and unoccupied bands are controlled by the tags {{TAG|NBANDSO}}, {{TAG|NBANDSV}}, and {{TAG|OMEGAMAX}} in the same way as for Casida and BSE calculations. This has the advantage that the time evolution results are strictly compatible to the results of the BSE calculations. The disadvantage is that a sufficient number of unoccupied orbitals needs to be calculated in the preceding ground state calculation. Note, however, that unoccupied orbitals are not propagated, which saves computational time.


By default, the time propagation code includes the Hartree and local-field effects ({{TAG|LHARTREE}}=.TRUE. and {{TAG|LFXC}}=.TRUE.). Results in the independent particle approximation can be calculated by setting {{TAG|LHARTREE}}=.FALSE. and {{TAG|LFXC}}=.FALSE. Two other combinations of these settings ({{TAG|LHARTREE}}=.TRUE. and {{TAG|LFXC}}=.FALSE., or {{TAG|LHARTREE}}=.FALSE. and {{TAG|LFXC}}=.TRUE.) are currently not supported.
By default, the time propagation code includes the Hartree and local-field effects ({{TAG|LHARTREE}}=.TRUE. and {{TAG|LFXC}}=.TRUE.). Results in the independent particle approximation can be calculated by setting {{TAG|LHARTREE}}=.FALSE. and {{TAG|LFXC}}=.FALSE. Two other combinations of these settings ({{TAG|LHARTREE}}=.TRUE. and {{TAG|LFXC}}=.FALSE., or {{TAG|LHARTREE}}=.FALSE. and {{TAG|LFXC}}=.TRUE.) are currently not supported.


The number of time steps performed in the propagation is usually inversely proportional to the value of {{TAG|CSHIFT}}. That is, a large {{TAG|CSHIFT}} requires less time steps (but yield a more strongly broadened spectrum), whereas a small shift {{TAG|CSHIFT}} requires more steps. Typically, the values {{TAG|CSHIFT}} = 0.1 result in physically meaningful spectra. Alternatively, the number of time steps can be set directly by the tag {{TAG|NELM}}. In this case, the user-defined number of steps needs to be > 100. Otherwise, the value of {{TAG|NELM}} will be discarded, and the actual number of time steps will be determined by the tag {{TAG|CSHIFT}}.  
The number of time steps performed in the propagation is usually inversely proportional to the value of {{TAG|CSHIFT}}. That is, a large {{TAG|CSHIFT}} requires less time steps (but yields a more strongly broadened spectrum), whereas a small shift {{TAG|CSHIFT}} requires more steps. Typically, values of {{TAG|CSHIFT}} = 0.1 result in physically meaningful spectra. Alternatively, the number of time steps can be set directly by the tag {{TAG|NELM}}. In this case, the user-defined number of steps needs to be large than 100. Otherwise, the value of {{TAG|NELM}} will be discarded, and the actual number of time steps will be determined by the tag {{TAG|CSHIFT}}.  


Finally, the tag {{TAG|IEPSILON}} controls the Cartesian direction, along which the Dirac delta pulse is applied. {{TAG|IEPSILON}} = 4 (default) performs three independent calculations for an electric field in x, y and z direction, and thus is the most expensive.
Finally, the tag {{TAG|IEPSILON}} controls the Cartesian direction, along which the Dirac delta pulse is applied. {{TAG|IEPSILON}} = 4 (default) performs three independent calculations for an electric field in x, y and z direction, and thus is the most expensive.


VASP provides a number of other routines to calculate the frequency-dependent dielectric function. The simplest approach uses the independent particle approximation ({{TAG|LOPTICS}} = .TRUE). Furthermore, one can use {{TAG|ALGO}} = TDHF (Casida/BSE calculations), {{TAG|ALGO}} = GW (GW calculations). For standard DFT, the time propagation algorithm ({{TAG|ALGO}} = TIMEEV) is usually the fastest, whereas for hybrid functionals {{TAG|ALGO}} = TDHF is usually faster. Results of time propagation are strictly identical to {{TAG|ALGO}} = TDHF; {{TAG|ANTIRES}} = 2, if the tags {{TAG|CSHIFT}}, {{TAG|OMEGAMAX}}, {{TAG|NBANDSV}}, and {{TAG|NBANDSO}} are chosen identical ({{TAG|ANTIRES}} = 2 is required, since time propagation does not rely on the Tamm-Dancoff approximation).  
VASP provides a number of other routines to calculate the frequency-dependent dielectric function. The simplest approach uses the independent particle approximation ({{TAG|LOPTICS}} = .TRUE). Furthermore, one can use {{TAG|ALGO}} = TDHF (Casida/BSE calculations), {{TAG|ALGO}} = GW (GW calculations). For standard DFT, the time propagation algorithm ({{TAG|ALGO}} = TIMEEV) is usually the fastest, whereas for hybrid functionals {{TAG|ALGO}} = TDHF is usually faster. Results of time propagation are strictly identical to {{TAG|ALGO}} = TDHF; {{TAG|ANTIRES}} = 2, if the tags {{TAG|CSHIFT}}, {{TAG|OMEGAMAX}}, {{TAG|NBANDSV}}, and {{TAG|NBANDSO}} are chosen identical ({{TAG|ANTIRES}} = 2 is required, since time propagation does not apply the Tamm-Dancoff approximation).  


== Example ==
== Example ==

Revision as of 12:54, 29 March 2018

Description: ALGO = TIMEEV calculates the frequency-dependent dielectric function using the time evolution algorithm (only available in VASP v6). A standard DFT ground state calculation should be performed before selecting ALGO = TIMEEV.


The time evolution algorithm applies a short Dirac delta pulse of electric field and then follows the evolution of the dipole moments. The Green-Kubo relation allows calculating the frequency dependent dielectric response function from the time evolution of the dipole moments [1].

Details of the implementation are explained in Ref. [2]. The time evolution algorithm in VASP uses relatively large time steps by projecting, after each time step, onto a specific number of occupied and unoccupied bands. The number of occupied and unoccupied bands are controlled by the tags NBANDSO, NBANDSV, and OMEGAMAX in the same way as for Casida and BSE calculations. This has the advantage that the time evolution results are strictly compatible to the results of the BSE calculations. The disadvantage is that a sufficient number of unoccupied orbitals needs to be calculated in the preceding ground state calculation. Note, however, that unoccupied orbitals are not propagated, which saves computational time.

By default, the time propagation code includes the Hartree and local-field effects (LHARTREE=.TRUE. and LFXC=.TRUE.). Results in the independent particle approximation can be calculated by setting LHARTREE=.FALSE. and LFXC=.FALSE. Two other combinations of these settings (LHARTREE=.TRUE. and LFXC=.FALSE., or LHARTREE=.FALSE. and LFXC=.TRUE.) are currently not supported.

The number of time steps performed in the propagation is usually inversely proportional to the value of CSHIFT. That is, a large CSHIFT requires less time steps (but yields a more strongly broadened spectrum), whereas a small shift CSHIFT requires more steps. Typically, values of CSHIFT = 0.1 result in physically meaningful spectra. Alternatively, the number of time steps can be set directly by the tag NELM. In this case, the user-defined number of steps needs to be large than 100. Otherwise, the value of NELM will be discarded, and the actual number of time steps will be determined by the tag CSHIFT.

Finally, the tag IEPSILON controls the Cartesian direction, along which the Dirac delta pulse is applied. IEPSILON = 4 (default) performs three independent calculations for an electric field in x, y and z direction, and thus is the most expensive.

VASP provides a number of other routines to calculate the frequency-dependent dielectric function. The simplest approach uses the independent particle approximation (LOPTICS = .TRUE). Furthermore, one can use ALGO = TDHF (Casida/BSE calculations), ALGO = GW (GW calculations). For standard DFT, the time propagation algorithm (ALGO = TIMEEV) is usually the fastest, whereas for hybrid functionals ALGO = TDHF is usually faster. Results of time propagation are strictly identical to ALGO = TDHF; ANTIRES = 2, if the tags CSHIFT, OMEGAMAX, NBANDSV, and NBANDSO are chosen identical (ANTIRES = 2 is required, since time propagation does not apply the Tamm-Dancoff approximation).

Example

A typical calculation requires two steps. First, a ground state calculation:

SYSTEM = Si
NBANDS = 12 ! even 8 bands suffice for Si
ISMEAR = 0 ; SIGMA = 0.05
ALGO = N
LOPTICS = .TRUE.
KPAR = 4     ! assuming we run on 4 cores, this will be the fastest


Second, the actual time propagation:

SYSTEM = Si
NBANDS = 12  ! even 8 bands suffice for Si
ISMEAR = 0 ; SIGMA = 0.05
ALGO = TIMEEV
IEPSILON = 1 ! cubic system, so response in x direction suffices
NBANDSO = 4  ; NBANDSV = 8  ;  CSHIFT = 0.1
KPAR = 4     ! assuming we run on 4 cores, this will be the fastest

In this case, OMEGAMAX is set automatically to the maximal transition energy (about 25 eV in this example). Reducing the number of considered transitions, and thus reducing OMEGAMAX will increase both the duration of time steps and their number.

For standard DFT calculations, the time propagation code is so fast that very dense k-point grids can often be used.

Related Tags and Sections

ALGO, CSHIFT, LHARTREE, LFXC, NBANDSV, NBANDSO, OMEGAMAX

see also BSE calculations

References


Contents