Initial velocity of launched ball

AI Thread Summary
The discussion revolves around calculating the initial velocity required for a ball launched at a 60-degree angle to reach a target at coordinates (16,0). Participants emphasize the importance of using vector math to separate the x and y components of the velocity, applying trigonometric functions like sine and cosine. A key point raised is the need to incorporate time into the calculations, as the total flight time affects the trajectory. One participant suggests that the initial velocity can be determined analytically by solving the equations of motion based on the launch angle and target coordinates, estimating the initial velocity to be approximately 13.5 m/s. The conversation highlights the necessity of refining the code to account for smaller time increments to accurately simulate the projectile's motion.
teken894
Messages
25
Reaction score
0
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 separate 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?


edit:
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:
Physics news on Phys.org
You can use v_{vert} = v\sin \theta and v_{horiz} = v\cos \theta where those are the vertical and horizontal components of velocity, respectively.

You can then use s = ut + \frac{1}{2} at^2 for each component separately.
 
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

x = v_{0x}t

and

y = v_{0y}t - \frac{1}{2}gt^2

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.
 
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.
 
teken894 said:
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.

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

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

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.
 
I multiplied the values first without the error limit. Got 19.38. rounded it off to 2 significant figures since the given data has 2 significant figures. So = 19. For error I used the above formula. It comes out about 1.48. Now my question is. Should I write the answer as 19±1.5 (rounding 1.48 to 2 significant figures) OR should I write it as 19±1. So in short, should the error have same number of significant figures as the mean value or should it have the same number of decimal places as...
Thread 'A cylinder connected to a hanging mass'
Let's declare that for the cylinder, mass = M = 10 kg Radius = R = 4 m For the wall and the floor, Friction coeff = ##\mu## = 0.5 For the hanging mass, mass = m = 11 kg First, we divide the force according to their respective plane (x and y thing, correct me if I'm wrong) and according to which, cylinder or the hanging mass, they're working on. Force on the hanging mass $$mg - T = ma$$ Force(Cylinder) on y $$N_f + f_w - Mg = 0$$ Force(Cylinder) on x $$T + f_f - N_w = Ma$$ There's also...
Back
Top