Physics Stack Exchange is a question and answer site for active researchers, academics and students of physics. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Assuming I rotate a disk, I want to know how long it takes to completely stop, and the number of revolutions it made since I removed my fingers off the disk.

Lets say a DVD I rotate with my fingers. I only know the radians per second (velocity) of the last moment I touched the disc.

Can you guys tell me where to start?

Im trying to implement this on an iPhone app. So it would be nice if you mention equations. It should not be exact.

share|cite|improve this question
Hi Jose - I'm putting the homework tag on this because it sounds like a homework-type question, but could you confirm whether it is or not? What's the context of this question? – David Z Aug 3 '11 at 22:00
It is not homework. Im trying to implement a simulation of what I mentioned on the question into an iOS app (iPhone, iPod Touch, iPad application). – Jose Garcia Aug 3 '11 at 22:05
Should the iPhone measure the rotation of a real disk or do you want to display something that kind of resembles a disk? – whoplisp Aug 3 '11 at 22:13
User is going to rotate with his fingers a object (could be a bottle of Coke, a dvd, a vynil, etc...) and I want it rotate and decelerate on a "natural" way. – Jose Garcia Aug 3 '11 at 22:16

Lets say the disk originally rotated with angular frequency $\omega_0$ in Hz.

Then due to friction you will have $\omega(t)=\omega_0-d t$. Where $d$ is the deceleration in Hz/s and $t$ is the time in seconds. Note that the disk won't start turning in the opposite direction $\omega(t)>0$.

Then you get a rotation angle $\alpha(t)$: $$\alpha(t)=\int_0^t \omega(t')\textrm{d}t'= \omega_0t - dt^2/2$$

(let ((omega0 50)
      (d .2)
      (start 0)
      (old-alpha 0))
  (defun start-turning (omega)
    (setf omega0 omega
          start (get-internal-real-time)))
  (defun draw ()
    (let* ((time (- (get-internal-real-time start)))
           (alpha (if (< 0 (- omega0 (* d time)))
                      (- (* omega0 time) (* d (/ 2) (expt time 2)))
      (rotate alpha 0 0 1)
      (setf old-alpha alpha))
share|cite|improve this answer
I have not anything of what you mentioned before. I want an approximation or expected behaviour of it, as it will be implemented on an iPhone app as a simulation. Nothing fancy. Just the correct feeling of natural deceleration. – Jose Garcia Aug 3 '11 at 22:12
Then just go with linear deceleration. – whoplisp Aug 3 '11 at 22:15
I only know Initial Velocity and Final Velocity. – Jose Garcia Aug 3 '11 at 22:19
I give up. I don't know what you want to do with this app. However, I don't think physics will help you here. I'll just write some OpenGL drawing code that would describe how the disc would slowly come to a stop. – whoplisp Aug 3 '11 at 22:26
Ohh, ok. Thank you for your time anyway. – Jose Garcia Aug 3 '11 at 22:29

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.