spin polarized case ADV - Chengcheng-Xiao/VASP2WAN90_v2_fix GitHub Wiki
This page describes the advanced workflow of using the VASP2WANNIER90 interface to generate Wannier functions. Please make sure you have already read the basic one.
Wannierization step
Write UNK files
unformatted UNK files
- keywords needed:
ISTART = 1
ISPIN = 2
ICHARG = 2
LWANNIER90 = .TRUE.
LWRITE_UNK = .TRUE.
LUNK_FMTED = .FALSE.
- files needed:
- wannier90.up.win
- wannier90.dn.win
- WAVECAR
- CHGCAR
- INCAR
- KPOINTS
- POSCAR
- POTCAR
The wannier90.up.win
and wannier90.dn.win
file should at least contain:
num_wann = ??
begin projections
??
end projections
ISTART=1
and ICHARG=2
tell VASP to read in the Bloch wavefunctions and charge density files.
LWANNIER90=.TRUE.
tells VASP to run the interface with default specs.
LWRITE_UNK = .TRUE.
tells VASP to write periodic part of the wavefunctions (UNK files)
LUNK_FMTED = .FALSE.
tells VASP to write unformatted UNK files.
formatted UNK files
- keywords needed:
ISTART = 1
ISPIN = 2
ICHARG = 2
LWANNIER90 = .TRUE.
LWRITE_UNK = .TRUE.
LUNK_FMTED = .TRUE.
- files needed:
- wannier90.up.win
- wannier90.dn.win
- WAVECAR
- CHGCAR
- INCAR
- KPOINTS
- POSCAR
- POTCAR
The wannier90.up.win
and wannier90.dn.win
files should at least contain:
num_wann = ??
begin projections
??
end projections
ISTART=1
and ICHARG=1
tell VASP to read in the Bloch wavefunctions and charge density files.
LWANNIER90=.TRUE.
tells VASP to run the interface with default specs.
LWRITE_UNK = .TRUE.
tells VASP to write periodic part of the wavefunctions (UNK files)
LUNK_FMTED = .TRUE.
tells VASP to write formatted UNK files.
After the job is done, there should be a block in the stdout
look like:
*---------------------------------------*
* VASP2WANNIER90 *
*---------------------------------------*
* Collinear spin -> 'up' *
* MMN calculated. *
* Projection 1 done. *
* Projection 2 done. *
* Projection 3 done. *
* Projection 4 done. *
* Projection 5 done. *
* Projection 6 done. *
* Projection 7 done. *
* Projection 8 done. *
* Projection 9 done. *
* Projection 10 done. *
* Projection 11 done. *
* Projection 12 done. *
* AMN calculated. *
* EIG written. *
* UNK written. *
*---------------------------------------*
* Collinear spin -> 'dn' *
* MMN calculated. *
* Projection 1 done. *
* Projection 2 done. *
* Projection 3 done. *
* Projection 4 done. *
* Projection 5 done. *
* Projection 6 done. *
* Projection 7 done. *
* Projection 8 done. *
* Projection 9 done. *
* Projection 10 done. *
* Projection 11 done. *
* Projection 12 done. *
* AMN calculated. *
* EIG written. *
* UNK written. *
*---------------------------------------*
And you should have:
- UNKxxxxx.1
- UNKxxxxx.2 in your directory.
Control AMN and MMN
- keywords needed:
ISTART = 1
ISPIN = 2
ICHARG = 2
LWANNIER90 = .TRUE.
LCALC_MMN = .FALSE.
LCALC_AMN = .FALSE.
LWRITE_MMN = .FALSE.
LWRITE_AMN = .FALSE.
- files needed:
- wannier90.up.win
- wannier90.dn.win
- WAVECAR
- CHGCAR
- INCAR
- KPOINTS
- POSCAR
- POTCAR
The wannier90.up.win
and wannier90.dn.win
files should at least contain:
num_wann = ??
begin projections
??
end projections
ISTART=1
and ICHARG=2
tell VASP to read in the Bloch wavefunctions and charge density files.
LWANNIER90=.TRUE.
tells VASP to run the interface with default specs.
LCALC_MMN = .FALSE.
tells VASP to NOT to compute the MMN matrix
LCALC_AMN = .FALSE.
tells VASP to NOT to write the MMN matrix
LWRITE_MMN = .FALSE.
tells VASP to NOT tocompute the AMN matrix
LWRITE_AMN = .FALSE.
tells VASP to NOT towrite the AMN matrix
After the job is done, there should be a block in the stdout
look like:
*---------------------------------------*
* VASP2WANNIER90 *
*---------------------------------------*
* Collinear spin -> 'up' *
*---------------------------------------*
* Collinear spin -> 'dn' *
*---------------------------------------*
and you should have NO new files in you directory.
Control spin channel
For example, we want to compute the "up" channel.
- keywords needed:
ISTART = 1
ISPIN = 2
ICHARG = 2
LWANNIER90 = .TRUE.
W90_SPIN = 1
- files needed:
- wannier90.up.win
- WAVECAR
- CHGCAR
- INCAR
- KPOINTS
- POSCAR
- POTCAR
The wannier90.up.win
file should at least contain:
num_wann = ??
begin projections
??
end projections
ISTART=1
and ICHARG=2
tell VASP to read in the Bloch wavefunctions and charge density files.
LWANNIER90=.TRUE.
tells VASP to run the interface with default specs.
W90_SPIN=1
tells VASP to only compute the up spin channel.
After the job is done, there should be a block in the stdout
look like:
*---------------------------------------*
* VASP2WANNIER90 *
*---------------------------------------*
* Collinear spin -> 'up' *
* MMN calculated. *
* Projection 1 done. *
* Projection 2 done. *
* Projection 3 done. *
* Projection 4 done. *
* Projection 5 done. *
* Projection 6 done. *
* Projection 7 done. *
* Projection 8 done. *
* Projection 9 done. *
* Projection 10 done. *
* Projection 11 done. *
* Projection 12 done. *
* AMN calculated. *
* EIG written. *
* UNK written. *
*---------------------------------------*