Force's potential_energy Output dispatches to virtual computePotentialEnergy() that has a default implementation that returns 0.0
Only a handful of Forces implement it so the rest are returning 0.0, which is wrong for any type of energy accounting.
An immediate fix is to have it return NaN which would make energy book keeping invalid, which is preferable over being wrong. Users of OpenSim have no idea why it would be wrong.
Force's potential_energy Output dispatches to virtual computePotentialEnergy() that has a default implementation that returns 0.0 Only a handful of Forces implement it so the rest are returning 0.0, which is wrong for any type of energy accounting.
An immediate fix is to have it return NaN which would make energy book keeping invalid, which is preferable over being wrong. Users of OpenSim have no idea why it would be wrong.