next up previous contents
Next: Continuous Expansion Basis Up: Spectral/hp Methods on Polymorphic Previous: Flow Past a Cylinder

Summary

In this thesis we have achieved the following goals:

The Navier-Stokes solvers are direct extensions of the work of Sherwin [30] for the incompressible code and Lomtev [72,73,74] for the compressible code. The new development here is to allow all the polymorphic element types to be used as well as the triangles and tetrahedra reported there. This is a significant advance that will facilitate the move to even higher resolution because thin boundary layers can now be resolved. This advance did not come in terms of a loss in efficiency. We applied object oriented programming methodology to make the management of varied element types as transparent as possible, with no perfomance hit. Also, since the companies that make compilers are now concentrating on optimizing C++ code, will benefit from their new developments.

We think that this is the first time high-order polymorphic elements have been applied to the equations of conservation laws, and especially the MHD system. The equations are quite complex and without the natural programming approach we developed, it would have been difficult to construct a robust code for them.

Now that has been developed to be a powerful tool the question remains as to what kind of physical problems can be simulated with it. We have shown it capable of handling simulations with millions of degrees of freedom when run on parallel super-computers. The discontinuous Galerkin modules only utilize pairwise communication, i.e. no piece of data needs to be communicated between more than two processors. This form of communication can be efficiently implemented and good scaling can be achived, i.e. the overhead per extra processor does not increase rapidly as the number of processors is increased. This means that a discontinuous Galerkin simulation can be spread over many processors efficiently and therefore should be capable of solving simulations with several orders more degrees of freedom as processor power increases and many-processor machines are built. We predict that two- and three-dimensional simulations of flow past complex two-dimensional bodies at up to Re=106 should be possible at the turn of the millenium.

For three-dimensional simulations the potential to reach these goals is there, however some advances will have to be made to ease the data jam that results from the huge numbers of data points created. Now that the simulation code has been written, simulations can be started once the domain has been meshed. However, the data mining of results will be a significant challenge. In future work the use of intelligent software agents for extracting relevant data on the fly should be investigated. These same agents will also be necessary to direct the available resolution towards interesting parts of the flows. This data migration in itself will need new approaches to balancing the simulation over multiple processors. This task will be helped by the OOP nature of , since each element can be enabled to replicate itself, delete itself or move itself between processors through a simple interface.

For example, an agent could ``tell'' an element it is no longer needed. Then it will communicate to its neighbours that it is going out of existence, transmit any data that will be needed to them and then delete itself. This would have been quite a difficult task with plain C code, and even harder with Fortran code but C++ should make this a matter of planning the design of the agent wisely.


next up previous contents
Next: Continuous Expansion Basis Up: Spectral/hp Methods on Polymorphic Previous: Flow Past a Cylinder
T. Warburton
10/24/1998