Chronology Current Month Current Thread Current Date
[Year List] [Month List (current year)] [Date Index] [Thread Index] [Thread Prev] [Thread Next] [Date Prev] [Date Next]

ROCKET ERROR



I am not going to quote messages of the ROCKET thread. Those who
may be interested will find them easily in the phys-L archive. The way
to fetch them is shown below:

1) Go to the archive's URL (mailgate.nau.edu/archives/phys-l.html).
2) Specify the month (December, 1999).
3) Specify the name of the thread (Rocket action).
4) Click on the name of the link.
5) Click on the message you want to see.

Here is my little program. [Bullets of constant mass dm are fired
to the left one after another while the rocket recoils to the right and
gains speed. The speed of each bullet with respect to the rocket is
always the same, v0. Let mR be the remaining mass of the rocket
and vR be its changing speed in the laboratory frame of reference.
The speed of the bullet in that frame is (v0-vR); it changes as vR
becomes larger.]

let mR=100 ! initial total mass kg
let vR=0 ! rocket initially at rest
let dm=1 ! mass of each "bullet" kg
let v0=1000 ! m/s (bullet wrt to rocket)
DO ! one bullet per loop
print mR,vR,v0-vR
let mR=mR-dm ! remaining rocket mass
let vR=vR+(v0-vR)*dm/mR ! new rocket speed
if mR<2*dm then stop
LOOP ! next bullet
end

Carl found an error in line 8 and asked me (in private) to justify the
formula. My explanation was as follows.

A bullet of mass dm is fired and the mass of the rocket decreases by
dm.
The momentum gained by the bullet (in my lab frame) is dm*(v0-vR)
the momentum gained by the rocket is mR*d(vR) (in the same frame).
The magnitudes of these two changes of momentum must be equal.
Therefore, after firing a bullet the speed of the rocket changes by
d(vR)=(v0-vR)*dm/mR. The new vR is equal to the previous vR
minus d(vR). That is what the line 8 states.

In other words, the equation is derived from the law of conservation
of linear momentum. Naturally, one should make dm<<mR_initial.
I made dm=1% of the initial rocket mass but nothing prevents me from
choosing 0.1% or less.

To which Carl replied (also in private):

Initially the rocket has mass mR and velocity vR; after ejecting a
bullet its mass is (mR-dm) and its velocity is vR+dv. Therefore
we have:

momentum gained by rocket = final momentum - initial momentum
= (mR-dm)*(vR+dv) - mR*vR = mR*dv - vR*dm
(to first differential
order)

which is NOT equal to mR*dv as you claim. You have left off the
second term, which cancels the term dm*(-vR) in your expression
for the momentum gained by the bullet.

According to Roger's analysis, the line: let vR=vR+(v0-vR)*dm/mR
should actually be:

let vR=vR+v0*dm/mR

Please check my analysis. If you agree, I invite you to modify your
program and try re-running it!

I did this and the new results are in very good agreement with the
theory,
especially when the mass of each bullet is reduced (which means more
firing steps for the same "amount of fuel"). For example, with dm=0.1 kg

I had vR=1611.44 m/s versus the exact theoretical value of 1609.44 m/s,
after 80% of fuel was spent. (With dm=1 kg the discrepancy was much
larger.)

Thanks again, Carl.