Skip to content

ENH: Critical damping for RigidObjectController

Andrew Wilson requested to merge andrew.wilson/iMSTK:CriticalDamping into master

This introduces critical damping. It is default on. It automatically computes the ideal critical damping, kd = 2 * sqrt(mass * ks). A critically damped spring is one that converges fastest without oscillation. In most cases this is always preferable so I have defaulted it on.

  • This is given through an analytical solution. Oscillation can still occur through numerical error of the integration method, given by timestep size.
  • I don't believe underdamped is ever desirable. But overdamped could be useful for stability when other factors are present (ie: collision).

Here's some notes: https://galileo.phys.virginia.edu/classes/152.mf1i.spring02/Oscillations3.htm

Ultimately this makes springs easier to tune as there is only one value, stiffness, to worry about.

Edited by Andrew Wilson

Merge request reports