Fortran Runtime Errors in VASP 5.4.4 NCL with Small Cells, SOC, and GW/PAW POTCARs
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.