Page 1 of 1

Extracting static macroscopic W(ω=0) from GW

Posted: Fri Oct 10, 2025 3:04 pm
by masoud_mansouri2

Dear VASP community,
I've done a set of GW calculations on a 2D material using VASP 5.4.4 with HSE as the starting point. For the smallest system, INCAR includes the following keys:
NBANDS = 1120
NELM = 1
ALGO = GW0
NOMEGA = 100
LASPH = .TRUE.
LSPECTRAL = .TRUE.
LWANNIER90 = True
With a 6x6x1 KPOINTS and POTCAR includes PAW_PBE *_sv_GW

I could safely accomplish this calculation and the following GW band plots using wannier and solving BSE. For a postprocessing analysis, I am interested in extracting the static, macroscopic screened Coulomb interaction, W(r, ω→0), or at least W(G=G′=0, ω=0). My attempts to read WFULL0001.tmp using Python and Fortran fail due to either memory or I/O errors.
Since I already have WAVEDER, WAVECAR.chi, CHGCAR and WAVECAR file from this GW+LOPTICS run, my question is:

What is the recommended workflow in VASP 5.4.4 to obtain macroscopic W(ω=0) safely for large systems?
Is there a way to extract only W(G=G′=0, ω=0) without reading the entire WFULL files?
Are there existing post-processing tools or scripts compatible with VASP 5.4.4 for this purpose?

Any guidance, example scripts, post-processing tools, or pointers compatible with VASP 5.4.4 would be highly appreciated.
Thank you very much for your help.

Best regards,
Masoud


Re: Extracting static macroscopic W(ω=0) from GW

Posted: Fri Oct 10, 2025 4:20 pm
by martin.schlipf

We wrote an extensive documentation on how to conduct GW calculations. For larger systems, you can also make use of the low-scaling GWR code that evaluates expressions in real space.

For reading the W*.tmp files you can look at the routine in src/wpot.F. The head of the matrix is written write near the beginning of the file so you do not need to read the whole file to get it.

As post processing tools, we recommend using py4vasp in combination with compiling VASP with HDF5 support. This allows you to access many quantities with a very short Python script.

Unfortunately, you will need to explore for yourself how to translate these recommendations to older versions of VASP. The user guide aims to support the most recent version.