Python Really simple Python program to simulate inelastic collision

Click For Summary
The discussion centers on a Python program simulating a completely inelastic collision between two objects. The user is seeking clarification on calculating the "heat released" during the collision. The program calculates total kinetic energy before the collision and tracks the distance and velocity of both objects over time, factoring in resistance. The key point is that the heat released can be determined by the difference between initial and final kinetic energy, which is essential for understanding energy conservation in the system. The user expresses a lingering confusion about friction, indicating a potential area for further inquiry.
remote
Messages
8
Reaction score
1
I'm trying to write this Python program that simulates a completely inelastic collision between two objects. The program seems to work for the most part, but I'm completely lost on the "heat released" part at the end. I have no idea if I'm calculating this right, or if I'm completely wrong. Can anyone give me some insight?

Code:
frameRate = 4000.0
mass = 1.0
velocity = 1.0
distance = 0.0
mass2 = 1.0
velocity2 = 0.0
distance2 = 0.0

maxTime = 50
resistance = 1.0
time = 0.0
print "total kinetic energy:    ", .5 * mass * velocity * velocity + .5 * mass2 * velocity2 * velocity2

#now we collide two objects, and see how long it takes them to reach the same speed
while True:
	distance += velocity / frameRate
	distance2 += velocity2 / frameRate
	velocity2 -= (resistance * (velocity2 - velocity)/ mass2) / frameRate
	velocity -= (resistance * (velocity - velocity2) / mass) / frameRate
	time += 1 / frameRate
	if time > maxTime:
		break
	if velocity <= velocity2 + .01:
		break
print "colliding\n\n"
print "time elapsed:               ", time
print "object 1 distance traveled: ", distance
print "object 2 distance traveled: ", distance2
print "object 1 velocity:          ", velocity
print "object 2 velocity:          ", velocity2
print "heat released:              ", (distance - distance2) * resistance
 
Technology news on Phys.org
Total energy, the sum of kinetic and thermal energy, is conserved. The released heat is just the difference between initial and final kinetic energy.
 
Thanks. That gave me the hint I needed to fix the program.

I'm still a bit confused about how friction works, but I think I can ask about that in another thread.
 
Learn If you want to write code for Python Machine learning, AI Statistics/data analysis Scientific research Web application servers Some microcontrollers JavaScript/Node JS/TypeScript Web sites Web application servers C# Games (Unity) Consumer applications (Windows) Business applications C++ Games (Unreal Engine) Operating systems, device drivers Microcontrollers/embedded systems Consumer applications (Linux) Some more tips: Do not learn C++ (or any other dialect of C) as a...

Similar threads

  • · Replies 17 ·
Replies
17
Views
3K
  • · Replies 1 ·
Replies
1
Views
4K
Replies
8
Views
2K
  • · Replies 4 ·
Replies
4
Views
8K
  • · Replies 2 ·
Replies
2
Views
17K
  • · Replies 6 ·
Replies
6
Views
3K
Replies
2
Views
4K
  • · Replies 8 ·
Replies
8
Views
2K
Replies
10
Views
3K
Replies
10
Views
5K