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: Initial velocity of launched ball

  1. May 28, 2005 #1
    I have this physics problem that I have no clue how to approach...

    Here's the given info:
    A ball is launched at a 60 deg angle toward a target. The coordiantes of the origin is (0,0), and the coordinates of the target is (16,0). What would be the power required units/second to get the ball to reach the target?

    This is for a computer programming class, so I need to use vector math to find the x and y components, from there, I will graph the equation..

    if you understand the code below: I need to find the initial velocity required from the sample problem above...

    Here is the pseudo code:

    (This is a repetitive code, stopping only when Y < 0)

    First we find the seperate X and Y components based on the initial AngleInRadians and initial Velocity.

    X-component = sin(AngleInRadians) * Velocity
    Y-component = cos(AngleInRadians) * Velocity - Gravity-Constant

    Then, using the separate components, we calculate the actual velocity of the projectile.
    Velocity = sqrt(X-componenet^2 + Y-Component^2)

    Moreover, we calculate the actual Angle of the projectile for this block of code...
    AngleInRadians = ArcTangent(X-Component/Y-Component)

    Using the above calculated info, we can now place the (object) according to the calculated velocity and Angle, adding the calculated values based upon the previous position.
    Object(Ball).X = PreviousObject(Ball).X + Velocity * sin(AngleInRadians)
    Object(Ball).Y = PreviousObject(Ball).Y + Velocity * cos(AngleInRadians)

    As you can see, there is no "time" involved. All of the info is calculated using trignometry (sin, cos, arctan) and new vectors are found based on the previous trajectory of the object.

    Now, If I were provided another point where X = 16, and Y=2, how would I approach in solving for the initial velocity of the projectile which will start at the origin and intercept the given point?

    Is there a forumla for finding initial velocy given range? I saw on some website that for 45 degree angle
    init velocity = sqrt(gravity*range)
    and for 90 deg angle
    init velocity - sqrt(2*g*height)

    is there such formulas if the angle is, say 60 degs or 75 degs?

    edit 2:
    yes, i want to reach (16,0) not (0,16)...sorry typo
    I could use time, but I am not using that as a variable in my graphing code. As you could see, my code does not involve the variable "T" at all..

    Also, I need functionality to be able to base the graph when y is not 0, so I cannot simply use the two equations to find the y-intercepts.
    Last edited: May 28, 2005
  2. jcsd
  3. May 28, 2005 #2
    You can use [tex]v_{vert} = v\sin \theta[/tex] and [tex]v_{horiz} = v\cos \theta[/tex] where those are the vertical and horizontal components of velocity, respectively.

    You can then use [tex]s = ut + \frac{1}{2} at^2[/tex] for each component separately.
  4. May 28, 2005 #3


    User Avatar
    Science Advisor
    Homework Helper

    The way your problem is stated is a problem. The convention for specifying coordinates is (x, y), and for projectiles x is customarily the horizontal direction and y is the vertical. From what I can understand of the code, y is the vertical and x is the horizontal as per conventional use, but your target coordinate must be (16, 0) rather than (0, 16).

    There are equations of motion for a projectile in terms of time. Starting from (0, 0) they are

    [tex]x = v_{0x}t[/tex]


    [tex]y = v_{0y}t - \frac{1}{2}gt^2[/tex]

    In your problem you need to move your x and y values as t increments until x reaches 16, at which time y returns to zero.

    The other problem with your statement is the reference to power. Power is the rate of doing work, and might be relevant if you knew how the projectile was fired, but there is nothing about that in this problem. I suspect what you are really looking for is the unknowns in the equations I wrote, the initial components of the velocity in the horizontal and vertical directions. Those can be found by solving those equations knowing that x = y = 0 at t = 0, and x = 16, y = 0 at some later time, along with the known launch angle.
  5. May 28, 2005 #4
    I edited my question...maybe it will make more sense now

    I need vecotr based formulas to solve this..

    Nylex, I did use the formulas you displayed in your post. The problem is that I need to find out the initial velocity based on coordinates and angle. i know how to solve for the separate components.
  6. May 30, 2005 #5


    User Avatar
    Science Advisor
    Homework Helper

    You can solve for the initial velocity analytically, knowing that your launch angle is 60 degrees and knowing your final destination is (16,0). The time to reach the destination is the x-distance (16m) divided by the initial x-component of velocity. You can substitute this time in the y-equation and set y = 0, then solve the equation using the fact that the ratio of the velocity components is fixed by the 60 degree launch angle. If I did my algebra right, the initial velocity is about 13.5m/s. See what you get. You can change the angle to anything you want and do the same steps to find the solution. The angle just changes the ratio of the initial components.

    Now as for your code

    Time is involved. You have implicitly made the time increment 1 second, which is far too big for your problem. The whole flight takes less than 3 seconds. You need a small multiplying factor in the velocity part of each of your expressions that will break the total flight into many increments. A factor on the order of 1/100 would be a reasonable first try, but you might find you want it to be even smaller. You could get more sophisticated and use a multiplying factor designed to keep the velocity changes constant. That would involve a factor that has the velocity in the denominator, which would cancel the velocity factors you now have. You could make your increments a constant divisor of the trig functions with no velocity multiplier. A factor on the order of 1/10 to 1/25 would be a reasonable first try, but computers are incredibly fast these days. Make them smaller (bigger denominator) if you want.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook