numerical integration of equations of motion of large system of particles with lubrication forces I have a large system of solid particles moving in the liquid. I use traditional Newtonian equations of motion for the particles. There are many different interaction forces between particles and the most severe are "lubrication forces". These are forces which dependent on the distance between the two particles and their velocities and the force goes to infinity when the particles get into touch.
Which integration technique should I use to have as few time steps while stable?
I have implemented Runge-Kutta-Fehlberg method with adaptive time step following this article:
http://www.trentfguidry.net/post/2009/10/09/Runge-Kutta-Fehlberg.aspx
but it produces a large number of steps even if I allow for large errors.
I compare it with and Eulerian method where I estimate the future step length based on the allowed force changes. Such a dummy method produces less steps than the Runge-Kutta-Fehlberg and is stable but still is slow...
Any suggestions are appreciated!
PS: For those who are familiar with it. I use Lattice Boltzmann as fluid dynamics solver and Immersed Boundary Method for particles representation.
 A: If you really want a stable integrator that takes as few steps as possible then you probably need to look into implicit methods since it looks like the forces are stiff, as Rahul noted. 
Your setting looks similar to molecular dynamics: a fairly large number (I assume) of particles with pairwise interactions which - amongst other things - prevent them from colliding. My impression is that implicit methods are rarely used in molecular dynamics, even though they need fewer steps, because each step of an implicit method has a very high cost because of the complicated nature of the forces.
You probably do not need a very accurate solution, as your model is phenomenological, and thus a low-order integrator should suffice. The Stormer-Verlet (a.k.a. leapfrog) method is very popular in molecular dynamics and this is also what I what recommend to you. However, I don't expect you to be able to take much larger time steps than explicit Euler; it looks like you have a difficult problem with no magic solution.
