QALCS 5 involves attempting swaps in the current neighbourhood ranked by
approximate swap loss, and then accepting the first (quenched) swap that
reduces the energy. The algorithm terminates when none of the (quenched) swaps
in the current neighbourhood lead to a reduction in energy.

I've commented out QALCS_SURF, because surface refinement doesn't seem to help
in this case. You can try uncommenting it to check...  

I don't think you need to use atom_label_swaps.f90, because that file contains
just one routine "USWAPS", which should be called only when the LSWAPS keyword
is used. LSWAPS is not surface refinement but an alternative to QALCS. Surface
refinement is triggered by QALCS_SURF. Which ones did you uncomment in the data
file?

You can cut corners with QALCS 5 by truncating the local neighbourhood, e.g.
QALCS 5 80 will scan just the first 80 swaps in the end. The maximum for that
particular system is 116 swaps. 
