I see how you got that from FP, but I think it's just a case of each object resolving each of its collisions as though they were different single collisions. Remember that the other masses can be reduced to a single mass as they are all external of the concerned mass.
You mean like if 10 objects are colliding at the same time, just treat all the collisions pairwise? This won't work, because as you resolve one collision it can invalidate the solution you found for other collisions. You
can just iterate over all the collisions pairwise a few times (this is what most commercial engines do), but if you iterate as often as you need to to resolve all the collisions to arbitrary precision it's an [img class=\"tex\" src=\"http://www.forkosh.dreamhost.com/mathtex.cgi?O(n^3)\" alt=\"LaTeX: O(n^3)\" /] process. Essentially it's Gaussian eleminiation (or so I was told once upon a time). If you set up the system of equations from the start, it's still [img class=\"tex\" src=\"http://www.forkosh.dreamhost.com/mathtex.cgi?O(n^3)\" alt=\"LaTeX: O(n^3)\" /], but you can do it much faster using more advanced techniques (LU decomposition to solve the system). Should be something like 3 times faster.
Typical matrices will also be rather sparse as they grow, so I'm researching sparse methods for solving the matrix at the moment. A good method might be more along the lines of [img class=\"tex\" src=\"http://www.forkosh.dreamhost.com/mathtex.cgi?O(n)\" alt=\"LaTeX: O(n)\" /] since there's probably a maximum number of collisions possible per body.
If you read
Chapter 2, most of what I just said should make sense.
Okay, so j0 represents the scalar exertion upon an object, and n the direction of change, so therefore should have a magnitude of 1. mass/moment of inertia convert the 'force' into an 'instantaneous' acceleration/torque. j0 is acting perpendicular to the center about a point, eg. a tangent.
Okay, that makes sense. But is the code for calculating the normal/tangent/impulse already in place?
[img class=\"tex\" src=\"http://www.forkosh.dreamhost.com/mathtex.cgi?j_0 \vec{n}\" alt=\"LaTeX: j_0 \vec{n}\" /] is the impulse ([img class=\"tex\" src=\"http://www.forkosh.dreamhost.com/mathtex.cgi?j\" alt=\"LaTeX: j\" /] is the traditional symbol for impulse. The 0 is so it makes sense later on when you handle multiple simoltaneous collisions and have multiple impulse terms). An impulse is essentially a crazy large force that acts in a crazy small amount of time. Remember that force needs time over which to act in order to change the position or velocity of an object, so an impulse just does it instantaneously.
As far as what's done, Prsn was working on it. I'm not sure how far he got. Check the changelog from his most recent commit and see what's there. There's no code yet for calculating the collision normal (that's collision detection work, and there's been no real work on that yet).
Basically what needs to happen is that there's an island class which represents all the bodies that are directly or indirectly in contact. You'd iteratively build up the island by adding body pairs (and their collision point and collision normal). And then do something like island.solve() and have it figure out all the impulses necessary. Prsn started on the island code, though I haven't looked at it yet so I don't know how far he got.
EDIT => Are the Azimuth files corrupt? I've tried to update several times at revision 304, but TortoiseSVN still marks it as a deprecated version.
Should all work. What do you mean by deprecated?