refactors compute/3 to return force for both position
adds few comments