BSEPREC: Difference between revisions
m (Tal moved page Construction:BSEPREC to BSEPREC) |
No edit summary |
||
| Line 1: | Line 1: | ||
{{TAGDEF|BSEPREC|Low {{!}} Medium {{!}} High {{!}} Accurate | Medium}} | {{TAGDEF|BSEPREC|Low {{!}} Medium {{!}} High {{!}} Accurate | Medium}} | ||
Description: {{TAG|BSEPREC}} determines the precision of the time-evolution | Description: {{TAG|BSEPREC}} determines the precision of the time-evolution and Lanczos algorithms for solving the Bethe-Salpeter or Casida equations. For the former it controls the timestep and the number of steps, while for the latter it controls the convergence threshold for the dielectric function. | ||
- | ==Time-evolution algorithm== | ||
The timestep in the time-evolution calculation is inversely proportional to the maximum transition energy {{TAG|OMEGAMAX}} and the number of steps is inversely proportional to the broadening {{TAG|CSHIFT}}. Depending on the {{TAG|BSEPREC}} stable these parameters are scaled depending on the precision tag {{TAG|BSEPREC}}. | The timestep in the time-evolution calculation is inversely proportional to the maximum transition energy {{TAG|OMEGAMAX}} and the number of steps is inversely proportional to the broadening {{TAG|CSHIFT}}. Depending on the {{TAG|BSEPREC}} stable these parameters are scaled depending on the precision tag {{TAG|BSEPREC}}. | ||
| Line 19: | Line 19: | ||
For example, the number of steps <math>N_{\rm steps}</math> for {{TAG|BSEPREC}} = Low can be found via <math>N_{\rm steps}=\frac{{\rm OMEGAMAX}\times 2}{{\rm CSHIFT}/5}</math> | For example, the number of steps <math>N_{\rm steps}</math> for {{TAG|BSEPREC}} = Low can be found via <math>N_{\rm steps}=\frac{{\rm OMEGAMAX}\times 2}{{\rm CSHIFT}/5}</math> | ||
==Lanczos algorithm== | |||
The Lanczos algorithm stops once the imaginary part of the dielectric function computed in two consecutive iterations differs bellow a certain threshold for the root-mean-square, i.e. once after <math>n</math> iterations the value of | |||
<math> | |||
\mathrm{RMS}[\epsilon_n] = \sqrt{\frac{1}{N_\omega}\sum_{i=1}^{N_\omega}\left(\Im[\epsilon_n(\omega_i)]-\Im[\epsilon_{n-1}(\omega_i)]\right)^2} | |||
</math> | |||
is below a certain value defined by '''BSEPREC'''. | |||
{| cellpadding="5" cellspacing="0" border="1" | |||
! BSEPREC !! <math>\mathrm{RMS}[\epsilon_n]</math> | |||
|- | |||
| Accurate (a) || <math>10^{-5}</math> | |||
|- | |||
| High (h) || <math>10^{-4}</math> | |||
|- | |||
| Medium (m) || <math>10^{-3}</math> | |||
|- | |||
| Low (l) || <math>10^{-2}</math> | |||
|} | |||
To prevent the algorithm from being too slow, the number of frequencies during the convergence loop is set to <math>N_\omega</math> = INT(SQRT(NOMEGA)), where {{TAG|NOMEGA}} is set in the {{TAG|INCAR}}. | |||
== Related tag and articles == | == Related tag and articles == | ||
{{TAG|IBSE}}, | {{TAG|IBSE}}, | ||
Revision as of 14:18, 15 October 2025
BSEPREC = Low | Medium | High | Accurate
Default: BSEPREC = Medium
Description: BSEPREC determines the precision of the time-evolution and Lanczos algorithms for solving the Bethe-Salpeter or Casida equations. For the former it controls the timestep and the number of steps, while for the latter it controls the convergence threshold for the dielectric function.
Time-evolution algorithm
The timestep in the time-evolution calculation is inversely proportional to the maximum transition energy OMEGAMAX and the number of steps is inversely proportional to the broadening CSHIFT. Depending on the BSEPREC stable these parameters are scaled depending on the precision tag BSEPREC.
| BSEPREC | OMEGAMAX | CSHIFT |
|---|---|---|
| Accurate (a) | [math]\displaystyle{ \times 4 }[/math] | [math]\displaystyle{ \times 1/10 }[/math] |
| High (h) | [math]\displaystyle{ \times 3 }[/math] | [math]\displaystyle{ \times 1/7.5 }[/math] |
| Medium (m) | [math]\displaystyle{ \times 2.5 }[/math] | [math]\displaystyle{ \times1/6.25 }[/math] |
| Low (l) | [math]\displaystyle{ \times 2 }[/math] | [math]\displaystyle{ \times1/5 }[/math] |
For example, the number of steps [math]\displaystyle{ N_{\rm steps} }[/math] for BSEPREC = Low can be found via [math]\displaystyle{ N_{\rm steps}=\frac{{\rm OMEGAMAX}\times 2}{{\rm CSHIFT}/5} }[/math]
Lanczos algorithm
The Lanczos algorithm stops once the imaginary part of the dielectric function computed in two consecutive iterations differs bellow a certain threshold for the root-mean-square, i.e. once after [math]\displaystyle{ n }[/math] iterations the value of
[math]\displaystyle{ \mathrm{RMS}[\epsilon_n] = \sqrt{\frac{1}{N_\omega}\sum_{i=1}^{N_\omega}\left(\Im[\epsilon_n(\omega_i)]-\Im[\epsilon_{n-1}(\omega_i)]\right)^2} }[/math]
is below a certain value defined by BSEPREC.
| BSEPREC | [math]\displaystyle{ \mathrm{RMS}[\epsilon_n] }[/math] |
|---|---|
| Accurate (a) | [math]\displaystyle{ 10^{-5} }[/math] |
| High (h) | [math]\displaystyle{ 10^{-4} }[/math] |
| Medium (m) | [math]\displaystyle{ 10^{-3} }[/math] |
| Low (l) | [math]\displaystyle{ 10^{-2} }[/math] |
To prevent the algorithm from being too slow, the number of frequencies during the convergence loop is set to [math]\displaystyle{ N_\omega }[/math] = INT(SQRT(NOMEGA)), where NOMEGA is set in the INCAR.
Related tag and articles
IBSE, NBANDSV, NBANDSO, CSHIFT, OMEGAMAX, BSE calculations, Time-dependent density-functional theory calculations, Bethe-Salpeter equations