Fortran Runtime Errors in VASP 5.4.4 NCL with Small Cells, SOC, and GW/PAW POTCARs

To share experience including discussions about scientific questions.


Moderators: Global Moderator, Moderator

Post Reply
Message
Author
nasir_ali
Newbie
Newbie
Posts: 1
Joined: Wed Aug 20, 2025 2:30 pm

Fortran Runtime Errors in VASP 5.4.4 NCL with Small Cells, SOC, and GW/PAW POTCARs

#1 Post by nasir_ali » Wed Aug 20, 2025 2:35 pm

Hello VASP community,

I am encountering consistent Fortran runtime errors when running noncollinear (NCL) or SOC calculations in VASP 5.4.4 for small supercells, both for Pt and Si systems. I would like guidance on how to resolve them or confirm whether this is a bug in the code.

System / Environment Details:

VASP version: 5.4.4.18Apr17-6-g9f103f2a35 (build Aug 20 2025)

Hardware: single-core test runs

Memory: ~94 GiB RAM, 8 GiB swap

Using PAW potentials:

Pt: Pt_pv

Si: Si_d_GW (GW-compatible, with semicore d-states)

INCAR parameters (key ones):

ISPIN = 2
LNONCOLLINEAR = .TRUE.
LSORBIT = .TRUE.
SAXIS = 0 0 1
ENCUT = 550 eV (Pt), 245-300 eV (Si_d_GW)
ISYM = 0
NSW = 0
LREAL = Auto

Using LWANNIER90 = .TRUE. in some runs.

Observed Errors:

Pt small cell (1 atom):

At line 1380 of file radial.f90
Fortran runtime error: Array bound mismatch for dimension 3 of array 'potxc' (2/4)

Occurs when using Pt_pv with SOC+NCL.

Increasing CACHE_SIZE or ENCUT did not resolve the problem.

DOS/NCL runs (Pt 1 atom):

At line 870 of file dos.f90
Fortran runtime error: Index '1' of dimension 1 of array 'dos' above upper bound of 0

Happens with small systems, even after adjusting NEDOS and LORBIT.

Si with Si_d_GW POTCAR (2 atoms):

At line 2025 of file paw.f90
Fortran runtime error: Array bound mismatch for dimension 3 of array 'ctmp' (2/1)

Using ENCUT slightly above ENMAX of POTCAR.

Occurs during electronic minimization (elmin_).

Attempts to Fix / Workarounds Tried:

Increasing -DCACHE_SIZE at compile time.

Ensuring ENCUT ≥ ENMAX for POTCAR.

Using LREAL = .FALSE. for small cells.

Increasing cell size (supercell 2x1x1 for Pt) partially helped.

Checked POTCAR consistency (ENMAX, LSORBIT keywords).

Tried both NEDOS > 0 and LORBIT = 11 for DOS/projection.

Observations / Hypotheses:

Errors consistently occur for small cells with SOC/NCL in VASP 5.4.4.

Likely array-size assumptions in radial.f90 / dos.f90 / paw.f90 trigger these bounds errors.

VASP 6.x reportedly fixes several array-bounds issues in SOC/NCL small cells.

Request for Advice:

Can anyone confirm that VASP 5.4.4 has known array bound issues for SOC/NCL in small supercells?

Are there specific POTCARs or INCAR tweaks that reliably avoid these errors?

For NCL + Wannier90 interface: any recommended settings to avoid legacy-mode failures for small cells?

Thank you for your time and guidance.


ferenc_karsai
Global Moderator
Global Moderator
Posts: 581
Joined: Mon Nov 04, 2019 12:44 pm

Re: Fortran Runtime Errors in VASP 5.4.4 NCL with Small Cells, SOC, and GW/PAW POTCARs

#2 Post by ferenc_karsai » Thu Aug 21, 2025 8:15 am

Please upload your calculation according to the forum guidelines so that we can try to reproduce your problems.


Post Reply