# Finding frame of reference where angular momentum appears zero

Consider a isolated system of $n$ non-interacting classical particles. We can easily select a barycentric frame of reference, where total momentum will be zero, so we have our $\vec x(i)$ — coordinates particle $i$ and $\vec v(i)$ — velocity in barycentric frame of reference.

Now I'd like to find a frame of reference where not only total momentum would be zero, but also angular momentum appeared zero. I do understand that it'll be non-inertial, so we'll have something more than subtracting total velocity from $\vec v(i)$.

What my thoughts are:

1. Since the system is isolated, total angular momentum conserves: $\vec M=const$
2. So, I thought, let's try finding and angle, rotating by which every point in time, we'd get a frame of reference with $\vec {M^\prime}=0$.

For this I use general equation of rotation dynamics: $$\vec M=\hat I\vec\omega,\tag1$$ where $\hat I$ is tensor of inertia, $\vec\omega$ is angular velocity and $\vec M$ is total angular momentum.

I find tensor of inertia with this formula: $$I_{ik}=\sum_l m(l)\left(x(l)^2\delta_{ik}-x_i(l)x_k(l)\right).$$ Then I use $(1)$ to determine some abstract angular velocity (which isn't something well-defined for non-solid body like in this case): $$\vec\omega=\hat I^{-1}\vec M.$$ I then try finding the angle to rotate the system by: $$\vec\varphi=\int_0^t \vec\omega dt.$$ And... I'm stuck. The angle is a vector, and I'm not really sure that rotating the system around it will do what I want.

I've tried several things, but whatever I try, I get nonsense. Here's what I tried:

1. Rotating by $-|\vec\varphi|$ around $\vec M$
2. Rotating by $-\vec\varphi\cdot\frac{\vec M}{|\vec M|}$ around $\vec M$
3. Rotating by $-|\vec\varphi|$ around $\vec\varphi$

All these options give similarly wrong results: $\vec {M^\prime}\ne0.$ It in fact even appears $\vec {M^\prime}\ne const.$

So, the question: what am I doing wrong and how should I do instead?

• A somewhat related question to ask, is the total angular momentum of the universe zero(perhaps in CM)? – Ali Aug 4 '13 at 19:22

There were two mistakes in my solution posted in question:

1. I shouldn't have integrated $\vec\omega$ because it won't give any sensible result. I should rather do multiplications of infinitesimal rotations which would yield transformation matrix for current $t$.
2. I have to recalculate $\vec\omega$ on each time slice, because it in fact changes not only because of changing inertia tensor, but also due to changing frame of reference.

Now, it seems that this problem can't be solved purely analytically. In fact I wasn't able to formulate an algorithm which would work with DEs or integrals, instead I had to formulate it in time slices, supposing that it converges to true solution in the limit of $dt\to0$. This still has to be rigorously proved.

Anyway, here's an algorithm which seems to work (at least I seem to get convergence as I reduce $dt$):

For $t\in \{0,dt,2dt,...,t_{max}\},$ do

1. Compute angular momentum with respect to frame of reference computed so far: $$\vec M\leftarrow\sum_i\vec x(i)\times\left(m(i)\vec v(i)\right)$$
2. Compute inertia tensor with respect to frame of reference computed so far: $$I_{ik}\leftarrow\sum_l m(l)\left(r(l)^2\delta_{ik}-r_i(l)r_k(l)\right)$$
3. Compute angular velocity with respect to frame of reference computed so far, which will be compensated for later: $$\vec\omega\leftarrow\hat I^{-1}\vec M$$
4. This is a matrix to compensate for rotation of the system as a whole ($\text{rotation}(\vec a)\cdot \vec p$ rotates vector $\vec p$ by angle $|\vec a|$ around $\vec a$): $$\hat R\leftarrow\text{rotation}(-\vec\omega dt)$$
5. Do compensation for positions: $$\vec x(i)\leftarrow \hat R\cdot\left(\vec x(i)+\vec v(i)dt\right)$$
6. Do compensation for velocities: $$\vec v(i)\leftarrow \hat R\cdot \vec v(i)$$
7. Loop 1.