truncated newton: changed checks that used a division to a multiplication when possible and added a check to make method more robust