Multi-Physics Code (MɸC)

 The‌ Multi-Physics Code is an in-house development of the CFD Laboratory. The main aim of the development is the creation of a general computational framework which can be used to conduct complex multi-physics simulation of a wide range of (aerospace) applications. To achieve this the framework is set up such that different mathematical flow models corresponding to different levels of physical fidelity and detail can be combined into a single simulation, i.e. in different parts of the flow domain different models can be used depending on the nature of the flow. Using a range of coupling techniques, the flow solution in the different regions are coupled and general and efficient computational techniques have been developed to exchange the information in large-scale parallel simulations.  It was created as a library of C++ template classes designed such that for a wide range of numerical methods, the commonaltity in the various algorithms is used using the approach of generic programming in C++, e.g. for message-passing operations required in CFD simulations baseed on the paradigm of domain decomposition, a range of template classes have been developed that can be specialised subsequently for a range of mesh-based as well as particle based numerical methods. Similarly, base template classes are available for other parts of different algorithm, such as class for link-cell type particle-based simulation methods. In addition to these generic C++ template classes, a number of numerical methods as presently available:

- Finite-volume continuum-flow solver for block-structured mesh - the AUSM+/up numerical flux method has been implemented to give an 'all-Mach' capability - for more information see publication [1]

-Finite-volume discrete-velocity method for kinetic Boltzmann equations for multi-block structured meshes - a range of kinetic models has been implemented: mono- and diatomic Ellipsoidal Statistical (ES), the Shakhov-BGK as well as the Rykov model for diatomic gas flows

- Gas Kinetic Schemes. Based on the Shakhov and Rykov kinetic models Gas Kinetic schemes are being development with the Multi-Physics Code at the present time

- Molecular Dynamics (MD) method with spatial decomposition for parallel simulations. In the present framework the MD solver is typically employed to either provide a more accurate flow solution in selected parts of the flow domain where it replaces the Navier-Stokes method (see publication [2]) or it is used to providemore accurate transport properties in flows with localised non-continuum or non-Newtonian behaviour within the context of a finite-volume Navier-Stokes based simulation (see publication [3])

- Vortex Particle simulation. Based on the generic template classes for particle methods, a Vortex-In-Cell type of solver was also contructed with the aim to accurately capture and resolve incompressible vortex-dominated flows


Further development of different methods and algorithms in the Multi-Physics Code is underway in the CFD Laboratory.

For further information. please contact:  Dr. R. Steijl

Multi-physics simulation of partially-rarefied flow

The Multi-Physics Code has been applied to a range of complex hypersonic flows with strong thermodynamic non-equilibrium effects. The figures below show an example where the diatomic ES model was coupled to the continuum flow solver such that the complex flow around the blunt leading edges of a waverider configuration at Mach 8 conditions was modelled at the level of the kinetic Boltzmann equation. The strong thermodynamic non-equilbrium effect can be observed from the rotational relaxation of the rotational temperature of the diatomic gas relative to the translational temperature

Coupled MD/Navier-Stokes simulations

The Multi-Physics Code includes a Molecular Dynamics solver based on the template C++classes provided. As sketched in the figures below, a parallel MD simulation based on spatial decomposition requires exchange of particle data akin to that required in a mesh-based method with 'halo' cell/points. The key difference is the fact that the number of particles for which information needs to be exchanges can change from time-step to time-step and for that reason more generic 'halo' exchange routines are implemented. To couple the flow to the continuum-flow Navier-Stokes method, exchange of equivalent continuum-flow quantities (obtained from sampling) is required from MD to Navier-Stokes while for the coupling in the opposite direction, a particle-forcing approach is employed. The various techniques in the coupled MD/Navier-Stokes simulations are sketched in the figures below.

Related publications

  • S. Colonia, R. Steijl, G. Barakos, “Implicit Implementation of the AUSM+ and AUSM+up Schemes”, International Journal for Numerical Methods in Fluids, 75(10):687-712, 2014. DOI: 10.1002/fld.3891
  • R. Steijl and G. Barakos, “Coupled Navier-Stokes - Molecular-Dynamics Simulations in Non-Periodic Domains based on Particle Forcing”, International Journal for Numerical Methods in Fluids, 69(8):1326-1349, 2012. DOI: 10.1002/fld.2641
  • R. Steijl and G. Barakos, “Coupled Navier-Stokes - Molecular Dynamics Simulations using a Multi-Physics Flow Simulation Framework”, International Journal for Numerical Methods in Fluids, 62(10):1081-1106, 2010. DOI: 10.1002/fld.2053