It’s been a while again since the last update on the F-16 sim project. It is a long term project after all and I can only work on it in my spare time, which has become less these days. Anyway, the landing gear physics has gone through several iterations and it took a lot of experimenting before I got it working really well but I have to say I’m very happy with it so far. It’s extremely satisfying to land the jet and see the weight of the aircraft compressing the landing gear struts when the wheels make contact with the ground.
One important goal I had with the flight dynamics and ground behavior was that I didn’t want one set of physics for when the aircraft is in the air and then when it makes ground contact it switches over to a ground physics. I wanted it all to be smooth and seamless, one and the same physics for everything and that goal has now been reached.
One of the major problems was how to deal with the very stiff springs you have to have in something like a heavy aircraft. Integrating very stiff springs requires extremely small time steps if you want to use the usual Euler integration, otherwise the simulation blows up. Extremely small time steps is not practical from a performance viewpoint so after trying and experimenting with different ideas it became obvious that a different type of integration method was necessary. I knew that Runge Kutta 4 could handle this nicely but I tried to avoid going that route because of the added complexity but in the end it was the way to go. Long story short, I got the RK4 integration implemented and seeing it in action is just beautiful.
The one thing I’m not real happy with yet is the tire friction physics. That is something that will need more research and improvement but it works as is for now.