howto:gw
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
howto:gw [2023/10/18 16:10] – [5. GW for 2D materials: Example MoS2] jwilhelm | howto:gw [2024/01/03 13:23] – oschuett | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== GW method for computing electronic levels ====== | + | This page has been moved to: https:// |
- | + | ||
- | The purpose of this section is to explain how to compute the energy of molecular orbitals/ | + | |
- | + | ||
- | The GW implementation in CP2K is based on the developments described in [[doi> | + | |
- | + | ||
- | Since the calculations are rather small, please use a single MPI rank for the calculation: | + | |
- | + | ||
- | < | + | |
- | mpirun -n 1 cp2k.popt H2O_GW100.inp | tee cp2k.out | + | |
- | </ | + | |
- | + | ||
- | ===== 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 " | + | |
- | + | ||
- | For checking the basis set convergence, | + | |
- | <code - H2O_GW100.inp> | + | |
- | & | + | |
- | METHOD Quickstep | + | |
- | &DFT | + | |
- | BASIS_SET_FILE_NAME BASIS_def2_QZVP_RI_ALL | + | |
- | POTENTIAL_FILE_NAME POTENTIAL | + | |
- | & | + | |
- | CUTOFF 400 | + | |
- | REL_CUTOFF 50 | + | |
- | &END MGRID | + | |
- | &QS | + | |
- | ! all electron calculation since GW100 is all-electron test | + | |
- | METHOD GAPW | + | |
- | &END QS | + | |
- | & | + | |
- | PERIODIC NONE | + | |
- | PSOLVER MT | + | |
- | &END | + | |
- | &SCF | + | |
- | EPS_SCF 1.0E-6 | + | |
- | SCF_GUESS ATOMIC | + | |
- | MAX_SCF 200 | + | |
- | &END SCF | + | |
- | &XC | + | |
- | & | + | |
- | &END XC_FUNCTIONAL | + | |
- | ! GW is part of the WF_CORRELATION section | + | |
- | & | + | |
- | & | + | |
- | ! use 100 points to perform the frequency integration in GW | + | |
- | QUADRATURE_POINTS 100 | + | |
- | ! SIZE_FREQ_INTEG_GROUP is a group size for parallelization and | + | |
- | ! should be increased for large calculations to prevent out of memory. | + | |
- | ! maximum for SIZE_FREQ_INTEG_GROUP is the number of MPI tasks | + | |
- | &GW | + | |
- | ! compute the G0W0@PBE energy of HOMO-9, | + | |
- | ! HOMO-8, ... , HOMO-1, HOMO | + | |
- | | + | |
- | ! compute the G0W0@PBE energy of LUMO, | + | |
- | ! LUMO+1, ... , LUMO+20 | + | |
- | | + | |
- | ! use the RI approximation for the exchange part of the self-energy | + | |
- | | + | |
- | &END GW | + | |
- | &END RI_RPA | + | |
- | &END | + | |
- | &END XC | + | |
- | &END DFT | + | |
- | & | + | |
- | &CELL | + | |
- | ABC 10.0 10.0 10.0 | + | |
- | PERIODIC NONE | + | |
- | &END CELL | + | |
- | & | + | |
- | O 0.0000 0.0000 0.0000 | + | |
- | H 0.7571 0.0000 0.5861 | + | |
- | H -0.7571 0.0000 0.5861 | + | |
- | &END COORD | + | |
- | & | + | |
- | & | + | |
- | &END | + | |
- | &END TOPOLOGY | + | |
- | &KIND H | + | |
- | ! def2-QZVP is the basis which has been used in the GW100 paper | + | |
- | BASIS_SET | + | |
- | ! just use a very large RI basis to ensure excellent | + | |
- | ! convergence with respect to the RI basis | + | |
- | BASIS_SET RI_AUX RI-5Z | + | |
- | POTENTIAL ALL | + | |
- | &END KIND | + | |
- | &KIND O | + | |
- | BASIS_SET | + | |
- | BASIS_SET RI_AUX RI-5Z | + | |
- | POTENTIAL ALL | + | |
- | &END KIND | + | |
- | &END SUBSYS | + | |
- | &END FORCE_EVAL | + | |
- | & | + | |
- | RUN_TYPE | + | |
- | PROJECT | + | |
- | PRINT_LEVEL | + | |
- | &END GLOBAL | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | ===== 2. Basis set extrapolation ===== | + | |
- | + | ||
- | 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' | + | |
- | To do so, download the cc basis sets {{exercises:2017_uzh_cp2k-tutorial: | + | |
- | < | + | |
- | BASIS_SET_FILE_NAME BASIS_def2_QZVP_RI_ALL | + | |
- | BASIS_SET_FILE_NAME ./ | + | |
- | </ | + | |
- | < | + | |
- | &KIND H | + | |
- | BASIS_SET | + | |
- | BASIS_SET RI_AUX RI-5Z | + | |
- | POTENTIAL ALL | + | |
- | &END KIND | + | |
- | &KIND O | + | |
- | BASIS_SET | + | |
- | BASIS_SET RI_AUX RI-5Z | + | |
- | POTENTIAL ALL | + | |
- | &END KIND | + | |
- | </ | + | |
- | + | ||
- | 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). | + | |
- | + | ||
- | The results for the G0W0@PBE HOMO and LUMO from CP2K should be as follows: | + | |
- | + | ||
- | < | + | |
- | Basis set | + | |
- | cc-DZVP | + | |
- | cc-TZVP | + | |
- | cc-QZVP | + | |
- | cc-5ZVP | + | |
- | + | ||
- | Extrapolation using cc-TZVP to cc-5ZVP | + | |
- | with 1/ | + | |
- | with 1/ | + | |
- | GW100 -12.05 | + | |
- | </ | + | |
- | + | ||
- | For the extrapolation, | + | |
- | The first scheme employs a linear fit on the HOMO or LUMO values when they are plotted against the inverse cardinal number $N_\text{card}$ of the basis set while the second scheme extrapolates versus the inverse number of basis functions $N_\text{basis}$ which can be computed as sum of the number of occupied orbitals and the number of virtual orbitals as printed in RI_INFO in the output. | + | |
- | 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> | + | |
- | + | ||
- | 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 ===== | + | |
- | An exemplary input for a parallel calculation can be found in the supporting information of [[doi> | + | |
- | + | ||
- | ===== 4. Self-consistent GW calculations and DFT starting point ===== | + | |
- | + | ||
- | The G0W0@PBE HOMO value of the H2O molecule (~ -12.0 eV) is not in good agreement with the experimental ionization potential (12.62 eV). Benchmarks on molecules and solids indicate that self-consistency of eigenvalues in the Green' | + | |
- | + | ||
- | You can run GW0 calculations in CP2K by putting | + | |
- | < | + | |
- | &GW | + | |
- | SC_GW0_ITER | + | |
- | CORR_OCC | + | |
- | CORR_VIRT | + | |
- | RI_SIGMA_X | + | |
- | &END GW | + | |
- | </ | + | |
- | " | + | |
- | + | ||
- | ===== 5. GW for 2D materials: Example MoS2 ===== | + | |
- | There is also a periodic GW implementation [[doi> | + | |
- | + | ||
- | + | ||
- | For computing the G0W0@LDA quasiparticle energy levels of monolayer MoS2, please use the input file | + | |
- | < | + | |
- | & | + | |
- | PROJECT | + | |
- | RUN_TYPE ENERGY | + | |
- | &END GLOBAL | + | |
- | & | + | |
- | METHOD Quickstep | + | |
- | &DFT | + | |
- | BASIS_SET_FILE_NAME | + | |
- | POTENTIAL_FILE_NAME | + | |
- | SORT_BASIS EXP | + | |
- | & | + | |
- | CUTOFF | + | |
- | REL_CUTOFF | + | |
- | &END MGRID | + | |
- | &QS | + | |
- | METHOD GPW | + | |
- | EPS_DEFAULT 1.0E-12 | + | |
- | EPS_PGF_ORB 1.0E-12 | + | |
- | &END QS | + | |
- | &SCF | + | |
- | SCF_GUESS RESTART | + | |
- | EPS_SCF 1.0E-9 | + | |
- | MAX_SCF 100 | + | |
- | & | + | |
- | METHOD BROYDEN_MIXING | + | |
- | ALPHA 0.1 | + | |
- | BETA 1.5 | + | |
- | NBROYDEN 8 | + | |
- | &END | + | |
- | &END SCF | + | |
- | &XC | + | |
- | & | + | |
- | &END XC_FUNCTIONAL | + | |
- | &END XC | + | |
- | &END DFT | + | |
- | & | + | |
- | & | + | |
- | &DOS | + | |
- | KPOINTS 2 2 1 | + | |
- | &END | + | |
- | &GW | + | |
- | ! for details on parameters, please consult | + | |
- | ! manual.cp2k.org/ | + | |
- | NUM_TIME_FREQ_POINTS | + | |
- | MEMORY_PER_PROC | + | |
- | EPS_FILTER | + | |
- | &END | + | |
- | &SOC | + | |
- | &END | + | |
- | &END | + | |
- | &END PROPERTIES | + | |
- | & | + | |
- | &CELL | + | |
- | ABC 3.15 3.15 15.0 | + | |
- | ALPHA_BETA_GAMMA | + | |
- | PERIODIC XY | + | |
- | ! the calculation is on a 9x9 supercell with 243 and | + | |
- | ! the band structure will be computed by backfolding | + | |
- | MULTIPLE_UNIT_CELL 9 9 1 | + | |
- | &END CELL | + | |
- | & | + | |
- | MULTIPLE_UNIT_CELL 9 9 1 | + | |
- | &END TOPOLOGY | + | |
- | + | ||
- | &KIND S | + | |
- | BASIS_SET ORB TZVP-MOLOPT-GTH_upscaled | + | |
- | BASIS_SET RI_AUX RI | + | |
- | POTENTIAL | + | |
- | &END KIND | + | |
- | + | ||
- | &KIND Se | + | |
- | BASIS_SET ORB TZVP-MOLOPT-GTH_upscaled | + | |
- | BASIS_SET RI_AUX RI | + | |
- | POTENTIAL | + | |
- | &END KIND | + | |
- | + | ||
- | &KIND Mo | + | |
- | BASIS_SET ORB TZVP-MOLOPT-GTH_upscaled | + | |
- | BASIS_SET RI_AUX RI | + | |
- | POTENTIAL | + | |
- | &END KIND | + | |
- | + | ||
- | &KIND W | + | |
- | BASIS_SET ORB TZVP-MOLOPT-GTH_upscaled | + | |
- | BASIS_SET RI_AUX RI | + | |
- | POTENTIAL | + | |
- | &END KIND | + | |
- | + | ||
- | & | + | |
- | Mo | + | |
- | S 0.00000 | + | |
- | S 0.00000 | + | |
- | &END COORD | + | |
- | &END SUBSYS | + | |
- | &END FORCE_EVAL | + | |
- | </ | + | |
- | Running the input file requires access to a large computer (the calculation took 2.5 hours on 32 nodes on Noctua2 cluster in Paderborn). You find the input and output files here: | + | |
- | + | ||
- | https:// | + | |
- | + | ||
- | The quasiparticle levels are contained in the files SCF_and_G0W0_band_structure_for_kpoint_xyz. | + | |
- | + | ||
- | Some remarks: | + | |
- | + | ||
- | * For adjusting the keywords NUM_TIME_FREQ_POINTS, | + | |
- | * The code also outputs SOC splittings of the levels based on the SOC parameters from Hartwigsen-Goedecker-Hutter pseudopotentials [[doi> | + | |
- | + | ||
- | In case anything does not work, please feel free to contact jan.wilhelm (at) ur.de. | + |
howto/gw.txt · Last modified: 2024/01/14 12:15 by oschuett