Computational Fluid Dynamics in Flight Simulation
Master thesis
Permanent lenke
http://hdl.handle.net/11250/252396Utgivelsesdato
2010Metadata
Vis full innførselSamlinger
Sammendrag
Simulating a flight is a complicated and computationally intensive task. Numerous techniques exist with different degrees of accuracy and performance. They range from using the drag and lift equations, to hull analysis and more advanced simulations.We have developed a flight simulator utilizing the drag and lift equations. It supports regular flight mechanics and visualizes four flight information systems. Microsoft's XNA game framework is used to create an easily extendable simulator with advanced 3D graphics. By integrating an external rendering library called GraphiTE into our simulator, we achieve advanced rendering of scenery made in Grome.In addition to the equation based simulator, we have implemented a fluid dynamics simulation suite utilizing the Finite Volume Method. It has both preprocessing, solving and postprocessing tools and thus can run an entire simulation cycle from grid instantiation to visualization of simulation results. The upwind differencing scheme was chosen due its ability to identify flow direction over the central differencing scheme. We chose to use the Euler equations since our problem involves air, an inviscid fluid. This omits the viscous terms of the Navier-Stokes equations which is a good approximation for our problem.We have also utilized optimization techniques to increase the performance of our application. By making custom implementations of iterative solvers, we achieved a great speed-up and decreased memory usage compared to using direct solvers. Additionally, we have designed our data structure so cell relationships and keeping the data structure consistent can be maintained in a linear timeframe.The results from the CFD simulations are not directly used in the flight simulator, due to the complexity of generating a good 3D grid for complicated geometries and lack of time to do this properly. We do, however, show that doing so is possible and discuss techniques that could be used to integrate our two modules. Utilizing force vectors computed from the pressure field around the objects, or calculating lift and drag coefficients based on the force vectors for certain velocities was suggested.