Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
Moderators: Moderator, Global Moderator
-
- Newbie
- Posts: 4
- Joined: Thu Oct 22, 2020 12:58 am
Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
I am following a paper from VASP developers (PRL, 121, 195701, (2018)) to compute the anharmonic contribution to the free energy from the harmonic crystal to the fully infracting crystal at the DFT level using the Thermodynamic Integration method turned on with the SCALEE flag.
I am getting the following error (vasp.6.4.2 20Jul23) after the first SCF step and after the DYNMATFULL file was read sucessfully, generated in the previous run using IBRION = 6.
FIO-F-212/list-directed write/unit=-1/invalid unit number.
In source file finite_diff.F, at line number 2354
The INCAR file is reproduced below.
The full set of input files including the DYNMATFULL is attached.
Please let me know how to overcome this error.
Perhaps, VASP 6.4.2 would need to be compiled with nondefault settings.
Please advise,
Thank you,
Vyacheslav Bryantsev, ORNL.
ISTART = 0 # startjob: no WAVECAR file, change to 1 when restarting
ICHARG = 2 # charge: from atoms, change to 1 when restarting
INIWAV = 1 # random initialization for wf.
NELM = 80
NELMIN = 2
NELMDL = 3
EDIFF = 1.0E-6
LWAVE = .TRUE.
LCHARG = .TRUE.
ALGO = NORMAL
PREC = Accurate
ENCUT = 650.0
LREAL = .FALSE.
GGA = PE
IVDW = 11
ISMEAR = 0
SIGMA = 0.05
KPAR = 1
NSIM = 32
ISYM = 0
IBRION = 0 # -1:SPE 0:MD 1:OPT-DIIS 2:OPT-CG
NSW = 10000 # number of steps
POTIM = 1 # MD time step
TEBEG = 850
### Nose-Hoover thermostat (NVT)
MDALGO = 2
SMASS = 0.5
### DFT-TI method
SCALEE = 0.9000 # specify value between 0 and 1
I am getting the following error (vasp.6.4.2 20Jul23) after the first SCF step and after the DYNMATFULL file was read sucessfully, generated in the previous run using IBRION = 6.
FIO-F-212/list-directed write/unit=-1/invalid unit number.
In source file finite_diff.F, at line number 2354
The INCAR file is reproduced below.
The full set of input files including the DYNMATFULL is attached.
Please let me know how to overcome this error.
Perhaps, VASP 6.4.2 would need to be compiled with nondefault settings.
Please advise,
Thank you,
Vyacheslav Bryantsev, ORNL.
ISTART = 0 # startjob: no WAVECAR file, change to 1 when restarting
ICHARG = 2 # charge: from atoms, change to 1 when restarting
INIWAV = 1 # random initialization for wf.
NELM = 80
NELMIN = 2
NELMDL = 3
EDIFF = 1.0E-6
LWAVE = .TRUE.
LCHARG = .TRUE.
ALGO = NORMAL
PREC = Accurate
ENCUT = 650.0
LREAL = .FALSE.
GGA = PE
IVDW = 11
ISMEAR = 0
SIGMA = 0.05
KPAR = 1
NSIM = 32
ISYM = 0
IBRION = 0 # -1:SPE 0:MD 1:OPT-DIIS 2:OPT-CG
NSW = 10000 # number of steps
POTIM = 1 # MD time step
TEBEG = 850
### Nose-Hoover thermostat (NVT)
MDALGO = 2
SMASS = 0.5
### DFT-TI method
SCALEE = 0.9000 # specify value between 0 and 1
You do not have the required permissions to view the files attached to this post.
-
- Global Moderator
- Posts: 377
- Joined: Mon Sep 13, 2021 11:02 am
Re: Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
Hi,
I can not reproduce the error (after a few iterations the calculation is still running). Could you please provide more information: compiler (and which version), how was the calculation executed (number of cores, OMP_NUM_THREADS), ...
I can not reproduce the error (after a few iterations the calculation is still running). Could you please provide more information: compiler (and which version), how was the calculation executed (number of cores, OMP_NUM_THREADS), ...
-
- Newbie
- Posts: 4
- Joined: Thu Oct 22, 2020 12:58 am
Re: Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
Thank you for a quick response, Fabien!
The job fails consistently after the first full SCF cycle of 23 steps (not after a single iteration).
We ran it using multiple versions of VASP on NERSC Perlmutter and I will provide the specific detail soon. Would you please confirm that the jobs survived several MD step?
Thank you,
Vyacheslav Bryantsev
The job fails consistently after the first full SCF cycle of 23 steps (not after a single iteration).
We ran it using multiple versions of VASP on NERSC Perlmutter and I will provide the specific detail soon. Would you please confirm that the jobs survived several MD step?
Thank you,
Vyacheslav Bryantsev
-
- Newbie
- Posts: 4
- Joined: Thu Oct 22, 2020 12:58 am
Re: Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
Here are some details of how the VASP was run on NERSC Perlmutter:
module load vasp/6.4.1-cpu
export OMP_NUM_THREADS=4
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
srun -n64 -c8 --cpu-bind=cores vasp_gam > vasp.out
Again, the job is failing after completing the first energy calculation step and reading the DYNMATFULL file. Exactly the same problem was noticed when running on the GPU nodes.
FIO-F-212/list-directed write/unit=-1/invalid unit number.
In source file finite_diff.F, at line number 2354
If you are able to run the provided examples for multiple MD steps, please provide details of your run.
Thank you,
Vyacheslav Bryantsev
module load vasp/6.4.1-cpu
export OMP_NUM_THREADS=4
export OMP_PLACES=cores
export OMP_PROC_BIND=spread
srun -n64 -c8 --cpu-bind=cores vasp_gam > vasp.out
Again, the job is failing after completing the first energy calculation step and reading the DYNMATFULL file. Exactly the same problem was noticed when running on the GPU nodes.
FIO-F-212/list-directed write/unit=-1/invalid unit number.
In source file finite_diff.F, at line number 2354
If you are able to run the provided examples for multiple MD steps, please provide details of your run.
Thank you,
Vyacheslav Bryantsev
-
- Global Moderator
- Posts: 377
- Joined: Mon Sep 13, 2021 11:02 am
Re: Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
I can confirm the problem. The calculation is crashing at the end of the first ionic step (and not the first SCF step as I thought). This is due to a bug in the subroutine READ_DYNMATFULL in finite_diff.F. The fix is the following:
At line 2354, replace
by
Similarly, at line 2405, replace
by
Then, recompile the code. Thank you for having reported the problem.
At line 2354, replace
Code: Select all
WRITE(OUT,*) 'reading now DYNMATFULL'
Code: Select all
IF (OUT>=0) WRITE(OUT,*) 'reading now DYNMATFULL'
Code: Select all
WRITE(OUT,*) 'the DYNMATFULL file was read sucessfully'
Code: Select all
IF (OUT>=0) WRITE(OUT,*) 'the DYNMATFULL file was read sucessfully'
-
- Newbie
- Posts: 4
- Joined: Thu Oct 22, 2020 12:58 am
Re: Computing anharmonic contributions using Thermodynamic Integration and DYNMATFULL file
Thank you, Fabien!
We will recompile, test, and report back to VASP forum.
Vyacheslav Bryantsev
We will recompile, test, and report back to VASP forum.
Vyacheslav Bryantsev