<< Chapter < Page | Chapter >> Page > |
The output
Figure 3 shows the output for the car crash scenario portrayed by Listing 2.
Figure 3 . Output for the perfectly inelastic car crash. |
---|
Start Script
Initial velocitiesu1x = 0.00
u2x = 17.50===============================
Final speed valuesv1x = 10.00 m/s
v2x = 10.00 m/s===============================
Check for conservation of momentummou = 35000 Kg*m/s
mov = 35000 Kg*m/s===============================
End Script |
Now we will examine some two-dimensional scenarios. In these scenarios, the objects are free to move in a plane described by horizontal andvertical coordinates. Instead of the directions of motion being limited to only forward and backward, any object can move in any direction from 0 to 360degrees.
The description and the solution to a scenario involving an elastic collision between two pucks on friction-free ice is shown in Listing 3 . As you will see:
Three unknowns can be challenging
Elastic collisions involving three unknowns, particularly those where one or more angles are unknown, can be challenging from analgebraic/trigonometric viewpoint. Those solutions typically involve a quadratic equation containing trigonometric functions. This is not oneof those especially challenging scenarios.
Listing 3 . Elastic collision between two pucks on friction-free ice. |
---|
<!---------------- File JavaScript02.html ---------------------><html><body><script language="JavaScript1.3">/*
Obj1 and Obj2 are identical and are on friction-free ice. Obj1has an initial velocity of 2.0 m/s in the direction
of 0 degrees. Obj2 is at rest. Obj1 collides elastically withObj2 and Obj1 moves off at 1.0 m/s at an angle of 60 degrees
north of east. What is the speed and direction of Obj2 afterthe collision?
Using conservation of momentum alone, we have twoequations, allowing us to solve for two unknowns.
m1*u1x + m2*u2x = m1*v1x + m2*v2xm1*u1y + m2*u2y = m1*v1y + m2*v2y
Using conservation of kinetic energy for the elasticcase gives us one additional equation, allowing us
to solve for three unknowns.0.5*m1*u1^2 + 0.5*m2*u2^2 = 0.5*m1*v1^2 + 0.5*m2*v2^2
The specifications tell us that this is an elastic collision,so we are free to use any or all of the three equations to
solve the problem. In this case, we have three equations butonly two unknowns, v2 and b1, so we won't need all three
of the equations.Note that the specifications don't specify the values of the
masses, but do specify that they are the same. Therefore, wewill be able to cancel them out of all three equations.Variables:
m1, m2, u1, u2, v1, v2, a1, a2, b1, b2*/
document.write("Start Script</br>");
//var m1 = unknown;//kg//var m2 = m1;//kg
var u1 = 2;//meters per secondvar u2 = 0;//meters per second -- at rest
var v1 = 1;//meter per secondvar v2;//unknown -- to find
var a1 = 0;//degreesvar a2 = 0;//degrees -- at rest
var b1 = 60;//degreesvar b2;//unknown -- to find
//Convert angles to radiansA1 = a1*Math.PI/180;
A2 = a2*Math.PI/180;B1 = b1*Math.PI/180;
//B2 = b2*Math.PI/180;//unknown//Compute the initial x and y components of velocity
u1x = u1*Math.cos(A1)u1y = u1*Math.sin(A1)
u2x = u2*Math.cos(A2)u2y = u2*Math.sin(A2)
v1x = v1*Math.cos(B1)v1y = v1*Math.sin(B1)
//v2x = v2*Math.cos(B2) //unknown//v2y = v2*Math.sin(B2) //unknown
/*For the special case of m2=m1 the three equations can be
written as follows (after canceling out the m-terms):u1x + u2x = v1x + v2x
u1y + u2y = v1y + v2y0.5*u1*u1 + 0.5*u2*u2 = 0.5*v1*v1 + 0.5*v2*v2
Identify all terms that are known to be zerou1x + 0 = v1x + v2x
0 + 0 = v1y + v2y0.5*u1*u1 + 0.5*0*0 = 0.5*v1*v1 + 0.5*v2*v2
Removing those terms yieldsu1x = v1x + v2x
0 = v1y + v2y0.5*u1*u1 = 0.5*v1*v1 + 0.5*v2*v2
Divide through the energy equation by 0.5 for simplificationu1x = v1x + v2x
0 = v1y + v2yu1*u1 = v1*v1 + v2*v2
Substitute known values2 = 0.5 + v2x
0 = 0.866 + v2yu1*u1 + = v1*v1 + v2*v2
This problem can be solved without using the energy equation.I will use the energy equation later to check the results.
*///Compute the components, magnitude, and direction of the
// final velocity of obj #2v2x = 2 - 0.5;
v2y = -0.866;v2 = Math.sqrt(v2x*v2x + v2y*v2y);
b2 = getAngle(1.5,-0.866);//Display the known values along with the results.
document.write("u1x = " + u1x.toFixed(2) + " m/s</br>");
document.write("u1y = " + u1y.toFixed(2) + " m/s</br>");
document.write("u2x = " + u2x.toFixed(2) + " m/s</br>");
document.write("u2y = " + u2y.toFixed(2) + " m/s</br>");
document.write("v1x = " + v1x.toFixed(2) + " m/s</br>");
document.write("v1y = " + v1y.toFixed(2) + " m/s</br>");
document.write("v2x = " + v2x.toFixed(2) + " m/s</br>");
document.write("v2y = " + v2y.toFixed(3) + " m/s</br>");
document.write("u1 = " + u1.toFixed(2) + " m/s</br>");
document.write("u2 = " + u2.toFixed(2) + " m/s</br>");
document.write("v1 = " + v1.toFixed(2) + " m/s</br>");
document.write("==============================="+ "</br>");
document.write("v2 = " + v2.toFixed(2) + " m/s</br>");
document.write("b2 = " + b2.toFixed(2) + " degrees</br>");
document.write("==============================="+ "</br>");
//Check the answers assuming that the mass of the objects// is one Kg each.
var moux = u1x + u2x;var movx = v1x + v2x;
var mouy = u1y + u2y;var movy = v1y + v2y;
document.write("moux = " + moux.toFixed(2) + " Kg*m/s</br>");
document.write("movx = " + movx.toFixed(2) + " Kg*m/s</br>");
document.write("mouy = " + mouy.toFixed(2) + " Kg*m/s</br>");
document.write("movy = " + movy.toFixed(2) + " Kg*m/s</br>");
//Check to confirm an elastic collisionvar u1 = Math.sqrt(u1x*u1x + u1y*u1y);
var u2 = Math.sqrt(u2x*u2x + u2y*u2y);var v1 = Math.sqrt(v1x*v1x + v1y*v1y);
var v2 = Math.sqrt(v2x*v2x + v2y*v2y);var mou = 0.5*u1*u1 + 0.5*u2*u2;
var mov = 0.5*v1*v1 + 0.5*v2*v2;document.write("mou = " + mou.toFixed(2) + " Kg*m/s</br>");
document.write("mov = " + mov.toFixed(2) + " Kg*m/s</br>");
document.write("==============================="+ "</br>");
//The purpose of this function is to receive the adjacent// and opposite side values for a right triangle and to
// return the angle in degrees in the correct quadrant.function getAngle(x,y){
if((x == 0)&&(y == 0)){
//Angle is indeterminate. Just return zero.return 0;
}else if((x == 0)&&(y>0)){
//Avoid divide by zero denominator.return 90;
}else if((x == 0)&&(y<0)){
//Avoid divide by zero denominator.return -90;
}else if((x<0)&&(y>= 0)){
//Correct to second quadrantreturn Math.atan(y/x)*180/Math.PI + 180;
}else if((x<0)&&(y<= 0)){
//Correct to third quadrantreturn Math.atan(y/x)*180/Math.PI + 180;
}else{//First and fourth quadrants. No correction required.
return Math.atan(y/x)*180/Math.PI;}//end else
}//end function getAngledocument.write("End Script");</script></body></html> |
Notification Switch
Would you like to follow the 'Accessible physics concepts for blind students' conversation and receive update notifications?