For a quaternion-vector, the scalar part for a unit quaternion is calculated incorrect. The existing code square roots (1 - the already square rooted np.linalg.norm(inQuat, axis=1) which is incorrect.