How Can I Solve for Forces in a Physics Engine Without Knowing Acceleration?

  • Thread starter Tilon
  • Start date
  • Tags
    Forces
In summary, the conversation revolves around a first year physics student in high school who is trying to solve for force in a physics engine he is programming. He has pre-determined the mass of the objects in the engine, but is struggling to calculate the acceleration. There is a discussion about the possibility of using elastic collisions to solve for the force, as well as the concept of coefficient of restitution. However, it is suggested that without enough data on the collision process, it is not possible to accurately calculate the force and stopping time. The conversation ends with a mention of the difficulties in modeling and predicting collision processes.
  • #1
Tilon
2
0
Up Front I'm A First Year Physics Student In Highschool

Basically I've Been Programming A Physics Engine, But I'm Currently Stumped, I'm Essentially Trying To Solve For The Force(Newtons), But To Do That I Obviously Need The Acceleration, And Mass. In A Physics Engine I Can Obviously Pre-determine The Mass Of Any Object In The Engine, But What About The Acceleration?

Say 2 Objects Come Into Contact With Each Other Going In Opposite Directions, The Computer Can Calculate The Speed, And I Can Tell It The Mass Of Each Object.

But That Leaves 2 Important Unknown Variables: Stopping Time Between The Objects, And The Force They Are Applying To Each Other

Is There A Way To Solve For One Without The Other?

I Asked My Teacher And He Said He Wouldn't Even Know Where To Begin.
 
Physics news on Phys.org
  • #2
Tilon said:
Say 2 Objects Come Into Contact With Each Other Going In Opposite Directions, The Computer Can Calculate The Speed, And I Can Tell It The Mass Of Each Object.

But That Leaves 2 Important Unknown Variables: Stopping Time Between The Objects, And The Force They Are Applying To Each Other

Is There A Way To Solve For One Without The Other?

I Asked My Teacher And He Said He Wouldn't Even Know Where To Begin.

Rather than calculating forces, maybe it is enough to simulate "elastic collisions" between two "particles" at a time. The idea is to assume the objects are rigid solids, so collisions happen in only a split instant. All you need is for your teacher to help calculate the final velocities according to "conservation of energy and momentum".

If you work in multiple dimensions there are extra variables which basically have to do with the shape where the objects collide (ie. things glance sideways less when the collision is aimed closer to dead centre). Not too complex if your objects are all spherical.
 
  • #3
Assuming you have many data points that tell you the speed of the objects at various times, you can calculate the approximate acceleration at each time point as the change in speed per time interval. From the mass and the acceleration, you can calculate the force
 
  • #4
A more appropiate approach might be to use the concept of "coefficient of restitution".
 
  • #5
andrevdh said:
A more appropiate approach might be to use the concept of "coefficient of restitution".
The original question sounds to me like Tilon is attempting to model the collision process. Energy and momentum considerations are sufficient to model the net effect of the collision, but they are not sufficient to examine the internal forces involved and the stopping time.

IF Tilon has (or can invent) enough time-stamped data of the velocities during the collision, those forces can be deduced. If that data does not exist, then the forces and stopping time cannot be determined. Tilon should be aware that there are infinitely many internal interactions between the two objects that can lead to the same after-collision velocities.
 
  • #6
The engine already keeps track of every object's velocity, and the acceleration of an object is relative to whatever is in contact with it at the given time, so it is simple to calculate as well. But even if I know the acceleration ahead of time, the acceleration I need in terms of force is the (de)acceleration of the object upon impact, and for that i still need to figure out the stopping time.

Assuming all objects are rigid solids is fair enough, but even if they stop in a split instant, there still has to be a stopping time, even if it is extremely small, right? I assume no object can stop instantly.

i.e.
F = m(a)
a = (Vf - Vo)/t

if t = 0 sec then the result is undefined

Note: All objects are spherical, and yes I am trying to model the collision process

EDIT: re-read OlderDan's Post

That would work if the computer figured in a stopping speed/force for me, but I haven't programmed a gradual stop upon impact. To do that I would need to to know the force of the objects acting on each other, which puts me back at the beginning.
 
Last edited:
  • #7
You are correct that it would take an infinite force to stop an object in no time. You cannot know either the force or the stopping time without more information about the collision process. When hard objects collide, there is little deformation, very little contact time, and huge forces involved. I'm sure you have seen the images on TV of a golf club hitting a golf ball. The ball deforms more than you might guess, but the contact time is short and the forces are very large.

If you need a model of the collision process, you could treat your objects like compressible springs, where force is directly proportional to the amount of compression. The total compression of the springs is easily related to the energies of the objects before collision. You could construct a computer model for such a process.

Real physical spheres are probably not quite like springs, but the spring model would be a good first step. You might be able to locate some data for the force vs deformation curve of a sphere.
 
  • #8
Note that in order to give a detailed description of the actual collision process, lots of truly ugly stuff pops up, for example:
1. Failure of linear elasticity models, plastic flow enters
2. Fractures appear
3. Equations of motion becomes coupled with the thermodynamic equations
4. Boundary.value problem with the actual boundary as an unknown function of time&space

No one to day has anything like a good, predictive and solvable model for such problems.
This means that such issues can only be studied empirically, and it is deucedly difficult to do that, too.

Thank heavens for conservation laws! :smile:
 
Last edited:
  • #9
Newton (yes, he did investigate other processes too) came to the conclusion that the separation speed , [itex]v[/itex] , of an object (ball) is a fraction of the approaching speed [itex]u[/itex] when it collides head on with another object. That is

[tex]v = eu[/tex]

where [itex]e[/itex] is the so called coefficient of restitution. If two balls are approaching each other head on with speeds [itex]u_1 ,\ u_2[/itex] this will then become

[tex]v_1 + v_2 = e(u_1 + u_2)[/tex]

If the collision is not head on one need to resolve the velocity components of each ball parallel and perpendicular to the direction connecting their centers at the point of impact.

The perpendicular velocity components will not be altered by the collision. The separation components are of cause in the opposite direction than that of the approach components. It is just case of determining their magnitudes.

This together with momentum conservation should make it possible to solve for the separation components, [itex]v_1, v_2[/itex].
 
Last edited:

FAQ: How Can I Solve for Forces in a Physics Engine Without Knowing Acceleration?

What is a force?

A force is a push or pull that can cause an object to accelerate, change direction, or deform. It is a vector quantity, meaning it has both magnitude and direction.

What are the different types of forces?

The four main types of forces are gravitational force, electromagnetic force, strong nuclear force, and weak nuclear force. Other types of forces include friction, tension, and spring force.

How are forces measured?

Forces are measured in units called Newtons (N). A Newton is defined as the amount of force required to accelerate a mass of one kilogram at a rate of one meter per second squared.

How do forces affect motion?

Forces can cause an object to start moving, stop moving, or change direction. They can also cause an object to change its speed or shape. Forces can either be balanced, where they cancel each other out, or unbalanced, where there is a resulting motion.

How can we calculate the net force acting on an object?

To calculate the net force, we need to consider all the individual forces acting on an object and their directions. If the forces are in the same direction, we add them together. If they are in opposite directions, we subtract the smaller force from the larger one. The resulting force is the net force acting on the object.

Similar threads

Back
Top