exercises:2017_uzh_cp2k-tutorial:gw
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
exercises:2017_uzh_cp2k-tutorial:gw [2017/07/03 14:47] – [2. Basis set extrapolation] jwilhelm | exercises:2017_uzh_cp2k-tutorial:gw [2022/10/31 14:33] (current) – oschuett | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <note warning> | ||
+ | |||
====== GW method for computing electronic levels ====== | ====== GW method for computing electronic levels ====== | ||
- | The purpose of this section is to explain how to compute the energy of a molecular orbital from GW for molecules and condensed phase systems with CP2K. In DFT, the energy of a molecular orbital corresponds to an eigenvalue of the Kohn-Sham matrix. In GW, the procedure for getting the level energies is to first perform a DFT calculation (commonly with the PBE or PBE0 functional) to get the molecular orbital wavefunctions and then compute a new GW energy for the molecular orbitals of interest. For an introduction into the concept of GW, please read Sec. II and the introduction to Sec. III in [[doi> | + | The purpose of this section is to explain how to compute the energy of a molecular orbital from GW for molecules and condensed phase systems with CP2K. In DFT, the energy of a molecular orbital corresponds to an eigenvalue of the Kohn-Sham matrix. In GW, the procedure for getting the level energies is to first perform a DFT calculation (commonly with the PBE or PBE0 functional) to get the molecular orbital wavefunctions and then compute a new GW energy for the molecular orbitals of interest. For an introduction into the concept of GW, please read Sec. II and the introduction to Sec. III in [[doi> |
- | The GW implementation in CP2K is based on the developments described in [[doi> | + | The GW implementation in CP2K is based on the developments described in [[doi> |
- | In this tutorial, GW values from the GW100 benchmark set [[doi> | + | In this tutorial, GW values from the GW100 benchmark set [[doi> |
- | Since the calculations are rather small, please use a single MPI rank for the calculation | + | Since the calculations are rather small, please use a single MPI rank for the calculation: |
< | < | ||
Line 14: | Line 16: | ||
===== 1. Reproducing values from the GW100 set ===== | ===== 1. Reproducing values from the GW100 set ===== | ||
- | See below the input for a G0W0@PBE calculation of the water molecule in a def2-QZVP basis: A PBE calculation is used for computing the molecular orbitals which can be seen from the keyword " | + | See below the input for a G0W0@PBE calculation of the water molecule in a def2-QZVP basis: A PBE calculation is used for computing the molecular orbitals which can be seen from the keyword " |
- | The G0W0@PBE HOMO value is not in good agreement with the experimental ionization potential of water (12.62 eV). A possible explanation is that PBE may not be a good starting point for G0W0 calculations for molecules in the gas phase, see e.g. [[doi> | + | The G0W0@PBE HOMO value is not in good agreement with the experimental ionization potential of water (12.62 eV). A possible explanation is that PBE may not be a good starting point for G0W0 calculations for molecules in the gas phase, see e.g. [[doi> |
- | < | + | < |
& | & | ||
METHOD Quickstep | METHOD Quickstep | ||
Line 123: | Line 125: | ||
In this section, the slow basis set convergence of GW calculations is examined. | In this section, the slow basis set convergence of GW calculations is examined. | ||
We compute the G0W0@PBE HOMO and LUMO level of the water molecule with Dunning' | We compute the G0W0@PBE HOMO and LUMO level of the water molecule with Dunning' | ||
- | To do so, download the cc basis sets {{exercises: | + | To do so, download the cc basis sets {{exercises: |
+ | < | ||
+ | BASIS_SET_FILE_NAME BASIS_def2_QZVP_RI_ALL | ||
+ | BASIS_SET_FILE_NAME | ||
+ | </ | ||
+ | < | ||
+ | &KIND H | ||
+ | BASIS_SET cc-DZVP-all | ||
+ | RI_AUX_BASIS RI-5Z | ||
+ | POTENTIAL ALL | ||
+ | &END KIND | ||
+ | &KIND O | ||
+ | BASIS_SET cc-DZVP-all | ||
+ | RI_AUX_BASIS RI-5Z | ||
+ | POTENTIAL ALL | ||
+ | &END KIND | ||
+ | </ | ||
Employ the RI-5Z basis set as RI-basis which ensures excellent convergence for the RI basis. | Employ the RI-5Z basis set as RI-basis which ensures excellent convergence for the RI basis. | ||
In practice, smaller RI basis sets can be used from the EMSL database (just check the convergence with respect to the RI basis by using smaller and larger RI basis sets). | In practice, smaller RI basis sets can be used from the EMSL database (just check the convergence with respect to the RI basis by using smaller and larger RI basis sets). | ||
Line 142: | Line 161: | ||
</ | </ | ||
- | For the extrapolation, | + | For the extrapolation, |
- | The first scheme | + | The first scheme |
You can check the extrapolation from the table above with your tool of choice. | You can check the extrapolation from the table above with your tool of choice. | ||
- | The basis set extrapolated values from the table above deviate from the values reported in the GW100 paper [[doi> | + | The basis set extrapolated values from the table above deviate from the values reported in the GW100 paper [[doi> |
- | Often, the HOMO-LUMO gap is of interest. In this case, augmented basis sets (e.g. from the EMSL database) can offer an alternative for very fast basis set convergence, | + | Often, the HOMO-LUMO gap is of interest. In this case, augmented basis sets (e.g. from the EMSL database) can offer an alternative for very fast basis set convergence, |
===== 3. Input for large-scale calculations ===== | ===== 3. Input for large-scale calculations ===== | ||
- | An exemplary input for a parallel calculation can be found in the supporting information of [[doi> | + | An exemplary input for a parallel calculation can be found in the supporting information of [[doi> |
===== 4. Periodic GW calculations ===== | ===== 4. Periodic GW calculations ===== | ||
- | For periodic GW calculations, | + | For periodic GW calculations, |
- | The basis can be found in {{exercises: | + | The basis can be found in {{exercises: |
- | < | + | < |
& | & | ||
METHOD Quickstep | METHOD Quickstep | ||
Line 253: | Line 272: | ||
Cubic-scaling GW calculations could be a more efficient alternative for large systems. See below an exemplary input for one water molecule. Compare the results to the ones from Sec. 1. In general, small deviations (< 0.05 eV) for GW levels can be expected from cubic-scaling GW calculations compared to canonical GW calculations due to additional approximations in cubic-scaling GW. | Cubic-scaling GW calculations could be a more efficient alternative for large systems. See below an exemplary input for one water molecule. Compare the results to the ones from Sec. 1. In general, small deviations (< 0.05 eV) for GW levels can be expected from cubic-scaling GW calculations compared to canonical GW calculations due to additional approximations in cubic-scaling GW. | ||
- | Please observe that the input below is much slower than the input for canonical GW. Therefore, it can be benefitial | + | Please observe that the input below is much slower than the input for canonical GW. Therefore, it can be beneficial |
- | < | + | < |
& | & | ||
METHOD Quickstep | METHOD Quickstep | ||
&DFT | &DFT | ||
! retrieve basis set from the CP2K trunk version | ! retrieve basis set from the CP2K trunk version | ||
- | BASIS_SET_FILE_NAME | + | BASIS_SET_FILE_NAME |
POTENTIAL_FILE_NAME POTENTIAL | POTENTIAL_FILE_NAME POTENTIAL | ||
&MGRID | &MGRID | ||
Line 299: | Line 318: | ||
! in imag. time and frequency | ! in imag. time and frequency | ||
MINIMAX | MINIMAX | ||
- | ! If the HOMO-LUMO gap of the system is small, | + | ! If the HOMO-LUMO gap of the system is small, |
- | ! points for the time/ | + | ! points for the time/ |
! (flag RPA_NUM_QUAD_POINTS). The time and frequency grid | ! (flag RPA_NUM_QUAD_POINTS). The time and frequency grid | ||
! are equally large. The maximum grid size is 20. | ! are equally large. The maximum grid size is 20. | ||
- | ! In principle, the grid size is a convergence parameter | + | ! For large-gap systems (as the water molecule), |
- | ! but for many large-gap systems (as the water molecule), | + | ! should be sufficient |
- | ! convergence of this grid is hard to achieve due to | + | |
- | ! numerical instabilities. | + | |
RPA_NUM_QUAD_POINTS | RPA_NUM_QUAD_POINTS | ||
! imaginary time flag enables cubic-scaling RPA or | ! imaginary time flag enables cubic-scaling RPA or | ||
Line 312: | Line 329: | ||
IM_TIME | IM_TIME | ||
& | & | ||
+ | ! EPS_FILTER_IM_TIME should be tuned for the specific | ||
+ | ! application: | ||
+ | ! depends on EPS_FILTER | ||
EPS_FILTER_IM_TIME 1.0E-12 | EPS_FILTER_IM_TIME 1.0E-12 | ||
- | ! for large systems, increase GROUP_SIZE_3C | + | ! for large systems, increase GROUP_SIZE_3C |
- | ! to run out of memory (OOM) | + | ! to prevent |
GROUP_SIZE_3C 1 | GROUP_SIZE_3C 1 | ||
! for extremely large systems, increase GROUP_SIZE_P | ! for extremely large systems, increase GROUP_SIZE_P | ||
- | ! not to run OOM | + | ! to prevent |
! for very large systems, it is also recommended | ! for very large systems, it is also recommended | ||
- | ! to use OMP threads | + | ! to use OMP threads to prevent |
GROUP_SIZE_P 1 | GROUP_SIZE_P 1 | ||
+ | ! for larger systems, MEMORY_CUT must be increased | ||
+ | ! to prevent out of memory (OOM) | ||
+ | MEMORY_CUT | ||
GW | GW | ||
&END IM_TIME | &END IM_TIME |
exercises/2017_uzh_cp2k-tutorial/gw.1499093264.txt.gz · Last modified: 2020/08/21 10:15 (external edit)