• Support PF! Buy your school textbooks, materials and every day products Here!

Distribution of acceleration over axes

  • Thread starter JamieJoe
  • Start date
  • #1
1
0

Homework Statement


Hi,
I am working making a soccer game in a game engine and encountered a problem with calculating what velocity a ball has to be kicked in to get from A to B.

the ball has to be passed (on a flat surface with friction coefficient of 0.35) from point A to point B, but since this is a 3d world the ball's velocity will be over 2 axes (the z axis velocity will always be 0).
distance between point A to point B is known and so is the required travel time.
this means i should be able to find the required initial velocity to get from A to B using :
Vi = (displacement / time) - (0.5 * acceleration * time);
but i must use this formula separately for each of the 2 axes (x and y), and the acceleration value seems to be different for each of these axes.

to calculate the acceleration (or rather deceleration) i found that i can use gravity * friction coefficient), but the value i get needs to somehow be distributed over the 2 axes in which movement occurs.


Homework Equations


I was able to run the simulation and have the ball roll along the surface, and by comparing its velocities over time i was able to deduct that the acceleration being applied to it has a vector length which equals gravity * friction coefficient; But i am unsure on how to calculate the acceleration per axis.

The Attempt at a Solution



I've tried looking up all relevant formulas, which initially lead me to try and having a physically accurate ball movement in my simulation, and further research (or rather, debugging) lead me to find that my actual problem was not thinking about these formulas in 3d terms
 

Answers and Replies

  • #2
haruspex
Science Advisor
Homework Helper
Insights Author
Gold Member
32,721
5,029
  • #3
Simon Bridge
Science Advisor
Homework Helper
17,847
1,644
Sounds like the ball is being modelled like some idealized hockey puck: it never leaves the surface, doesn't spin, and experiences kinetic friction with the surface.
Realism of the sim aside...

If the player/ball is initially at position ##\vec r_0=(0,0)## and you want to get it to position ##\vec r_1 = (x,y)##, then it has to have initial velocity ##\vec v = (x,y)v/s## where ##s=|\vec r_1|##.

You know how to find ##s##: it's just the distance to the new position ... so the magnitude ##v## needs to be found.
You don't need to break it down into components to do this, the acceleration is ##\vec a = -(x,y)\mu g/s## and you can do your working in magnitudes.
Look for a suvat equation that has no "t" in it ... the time to get there does not matter if you just want the minimum speed to get it there.

This all works because ##(x,y)/s## is a unit vector pointing from the start to the finish of the motion.
 

Related Threads on Distribution of acceleration over axes

Replies
6
Views
3K
Replies
2
Views
1K
Replies
3
Views
267
Replies
4
Views
1K
  • Last Post
Replies
2
Views
2K
  • Last Post
Replies
18
Views
7K
Replies
10
Views
5K
  • Last Post
Replies
8
Views
3K
  • Last Post
Replies
2
Views
2K
Top