Why set ISIF after seting IBRION=-1?

I am trying to read the input file downloaded from the following link:
https://materialsproject.org/tasks/mp-2657#mp-1440865
https://nomad-lab.eu/prod/rae/gui/entry/id/6CF1q7AJShyUgv4Wxx7fxA/-kOIt51AhId3pGg5CVra1o0VYQhV/raw

It set ISIF=3 after setting IBRION=-1, I think IBRION=-1 means the ions are fixed, so what is the point to set ISIF?
How are these input files generated?


ADDGRID = .TRUE.
ALGO = Normal
EDIFF = 0.00030000000000000003
ENCUT = 520
IBRION = -1
ICHARG = 0
ISIF = 3
ISMEAR = -5
ISPIN = 2
LAECHG = True
LASPH = .TRUE.
LCHARG = True
LELF = True
LORBIT = 11
LREAL = Auto
LVHAR = True
LWAVE = False
MAGMOM = 6*0.6
NELM = 100
NSW = 0
PREC = Accurate
SIGMA = 0.05

Hi @Alma. The short answer is that since NSW = 0, it does not matter than ISIF is set. VASP will not adjust the positions or cell shape/volume.

The input files are generated using Atomate, and in this particular case, it is a static calculation with INCAR settings found in pymatgen.io.vasp.sets.MPStaticSet. You can see here that the static calculation takes the prior relaxation’s INCAR settings and “updates” them, including changing NSW to 0 and IBRION to -1. It does not alter ISIF, so the ISIF value from the prior relaxation job is still present in the INCAR. Not to worry though – ISIF has no effect here.

1 Like