1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Homework Help: Deriving Position WRT time of ball travelling on curve

  1. May 13, 2015 #1
    1. The problem statement, all variables and given/known data

    I'm trying to write a program in matlab which demonstrates a tautochrone curve and how the starting point of a ball is irrelevant as to the time it takes to get to the lowest point in the curve (without friction).

    At the moment I'm just trying to model it using a simple parabola of y = x2 rather than a cycloid. My idea is that I can plot the ball's position for a specific time, then plot it again 0.1 seconds later after pausing the program for 0.1 seconds which would effectively simulate the ball going down the curve in real time.

    2. Relevant equations

    E = K + U

    3. The attempt at a solution

    I've used the conservation of energy and the fact that the potential energy at the top will be equal to the kinetic energy at the bottom though I wasn't sure if this would work since it is travelling on a pre-defined path rather than just falling naturally.

    So mgh = (1/2)mv2

    and solving for v = sqrt(2gh)

    and h is the displacement in the y direction so h = ynaught - y

    Given that v = dx/dt,

    I separate the variables so sqrt(2g)*dt = 1/(sqrt(ynaught - x2)) *dx

    (given that y = x2 )

    integrating both sides and solving for x(t) I end up with:

    x = sin(sqrt(2g)*t + sin-1 (xnaught/sqrt(ynaught))) *sqrt(ynaught)

    for this specific equation the square root of ynaught should just be xnaught anyway

    At first glance and plotting it in matlab it seems to work but I don't know if it is just a visual effect but my ball appears to slow down slightly as it reaches the lowermost point of the parabola. Not to mention that it goes ridiculously quickly when i set the gravity to 10m/s/s but that might be a fault of my programming.

    Any ideas? Mainly I'm just looking for confirmation that the equation is correct. I tried doing it by using the normal force and the angle etc etc but it got too complicated. I've actually just plotted 2 balls on the parabola with different initial x and y coordinates and have noticed that no matter where they are placed, they always reach the bottom of the curve at the exact same time and just oscillate around it but always meet at the centre. It was my understanding that this was unique to a cycloid which is pretty much the point of me doing this so it seems odd to me that it would occur on this parabola.

    Thanks for any assistance you can provide, just looking for some simple guidance
  2. jcsd
  3. May 13, 2015 #2

    Ray Vickson

    User Avatar
    Science Advisor
    Homework Helper

    If ##(x(t),y(t))## goes along the curve ##y = f(x)##, then the velocity components are ##v_x = dx/dt## and ##v_y = dy/dt = (dy/dx)(dx/dt)##, by the chain rule. Thus, ##v_y = f'(x) v_x##, where ##f'(x) = df(x)/dx## is the slope of the curve. The kinetic energy is
    [tex] K = \frac{1}{2} m (v_x^2 + v_y^2) = \frac{1}{2} m v_x^2 [ 1 + f'(x)^2] [/tex]
    So, conservation of energy gives [tex]\text{const} = E = K + V = (m/2) (1 + f'(x)^2) v_x^2 + m g f(x), [/tex] since ##y = f(x)##. Thus, we have the differential-equation
    [tex] v_x = \frac{dx}{dt} = \left[ \frac{2(E - g f(x))}{m(1 + f'(x)^2)} \right]^{1/2} [/tex]

    For your case of ##f(x) = x^2## we have ##f'(x) = 2x##, so
    [tex] \frac{dx}{dt} = \left[ \frac{2(E - g x^2)}{m(1+4x^2)} \right]^{1/2} [/tex]
  4. May 14, 2015 #3
    Cool, thanks! Exactly what I was after. Was just a dull moment not separating the velocity into x and y components.

    I'm guessing the next step would be to use separation of variables so it would be dt = ~~~~~~dx and then integrate? That could get messy.
  5. May 14, 2015 #4
    So I've discovered that it's pretty impossible to solve for the integral of that function when f(x) = x^2. Wolfram alpha seems to think so at least but it works fine for a simpler function like y = x. I want to sub in the equation of a cycloid but I actually have no idea how to get the equation of a cycloid where the start and end of a 'hump' is at 2 specific points. I'm going to need that if I want to plot it in matlab.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted