It seems that there is a bug in the fix_neb.cpp of NEB code. I am not quite sure about it and would like to discuss this point with you.
In the last segment of this fix_neb.cpp file, you have calculated the updated atomic force f[i], f[i], f[i]. For example, f[i]+=prefactortagent[i]. In the regular NEB, the prefactor = -dot + kspring(nlen-plen). The dot is calculated previously by using the tangent once. So the whole process have tangent calculation twice. However, it seems that the calculation is not consistent with Eqs. (3)-(4) in Henkelman & Jonsson 2000 paper, where the tangent is used once.
Would you have a check of this point please? Thanks.