Hi,
I haven't had time to read your papers yet, but I will eventually.
You should do this
Could you just give a brief explanation of the difference between your work and the the relaxed projected Gauss-Seidel type of solvers the everyone else is using (and which is also often referred to as an impulse-based solver since if solves for velocities).
Everyone else? I even know some guys who use Lagrange multipliers or reduced coordinates
I don't know much about the relaxed projected Gauss-Seidel solvers. So I can only tell you how my method works. We develop the impulse-based dynamic simulation method since the year 2000 at the institute. First it was only developed for mass point systems and later for rigid bodies. One of the goals was to get an exact method for dynamic simulation. Later we found out that the method is very fast and flexible so it is also suitable for games.
For the simulation of joints the main idea is to use a prediction of the joint state in order to compute a correction impulse. With this prediction you can determine the future error that would occur if the bodies have a ballistic motion. The same idea is used many years later by Rachel Weinstein in her paper "Dynamic Simulation of Articulated Rigid Bodies with Contact and Collision". In contrast to her paper I don't solve a nonlinear equation by Newton iteration. Since the relative motion of the bodies is almost linear I use a linearization of the equation. By this linearization I get a good approximation of the correction impulse. The impulse is then computed in an iterative loop to get an exact result. At the moment a student of mine is comparing Weinstein's and my method. The speed should be the same but the linearization of the problem has several advantages. The method of Weinstein seems to have problems with singular matrices when using to small time steps. With my method it is guaranteed that the matrices are regular. Another advantage is that I can compute all impulses at once using a system of linear equations. This system describes all dependencies between the joints. The system can even be solved in linear time if there are no loops in the model. So I was able to simulate a tree model with 255 ball joints (the corresponding SLE has a dimension of 765) almost three times faster than real-time with a high degree of accuracy (on my Pentium 4 with 3.4 GHz). The method can handle all kinds of position and velocity constraints.
Since a resting contact defines a position constraint and a collision a velocity constraint I was able to use nearly the same method for collision and contact handling with friction.
At the moment I just work on the simulation of deformable bodies. The first results of my cloth simulation are already online.
The results you can see in the videos on my web page.
Hope that helps,
Jan