# How does MRT Lattice Boltzmann improve stability compared to BGK collision operator?

In the BGK collision model for the Lattice Boltzmann Method, the solution becomes unstable when the relaxation time approaches 0.5. This happens when I increase my Reynolds number, $$Re =UL/\nu$$ which gives me my viscosity and is related to the relaxation time, tau, with $\Delta x$ and $\Delta t$ set to unity: $$\tau = 3\nu +0.5$$

I've read that the MRT collision model is able to simulate flows of higher Reynolds numbers using multiple relaxation times.

My question is, how does MRT bypass the limitation of the BGK model of tau being >0.5 and have it only depend on the Reynolds number? Right now, I am limited to Re of around 200 for cylinder in incompressible external flow using BGK, and I'd like to extend my code to simulating airfoils which can reach Re of 10^6.

MRT does not bypass the limitations of $$\tau > 0.5$$. It is simply more stable when getting closer to the stability limit of $$\tau = 0.5$$ with rising Reynolds number. Anyways it won't help for the Reynolds numbers you are aiming for.

In order to be stable at those Reynolds number you will need some explicit turbulence modelling. In lattice-Boltzmann it is easy to include a Smagorinsky (large eddy) turbulence model into your code. Basically one is able to approximate the first order contribution to the momentum flux directly from the populations and as a consequence determine the strain rate tensor (that is connected to the latter) which again can be used for an eddy-viscosity turbulence model.

You will though either have to use periodic boundaries (simple let populations that exit the domain from one side enter from the other), periodic pressure drop boundaries or stable extrapolation boundaries in order to not become unstable again (instabilities triggered by the boundaries due to a not correct approximation of higher-order contributions to the populations $$f$$ and thus to the evolution of the system).

Just keep in mind that for physically correct results you will further have to respect the laws of turbulent fluid dynamics:

• Dimensionality: Turbulent flow is inherently three-dimensional. If your application can't be assumed as periodic in one direction and your model can't account for the missing dimension somehow, you will not get physical results. This this sadly the case for large-eddy turbulence models and thus you will have to conduct three-dimensional simulations.

• Resolution requirements for large eddy simulations: You might get stable results for comparably low resolutions but for physically correct results you will have to use grids with several million grid cells and several levels of grid refinement. See for instance here or here.

If you don't have access to computational resources, like a high-performance cluster or at least a high-performance implementation on a hardware accelerator like on a fast CUDA capable graphics card, you will be likely be limited to low Reynolds number $$\mathcal{O}(10^3)$$ even with the turbulence model.

BGK is sometimes refered to as SRT or 'Single relaxation time' model. Compared to MRT or 'Multi-relaxation time' model, you can spot the difference between the two models in the name: BGK relies on only a single relaxation time parameter, $\tau$, to model the fluid physics while MRT uses several relaxation time parameters, $\tau_i$. MRT in that sense is a generalization, because setting $\tau_i=\tau$ reduces MRT to BGK.

A formal stability analysis of the Lattice Boltzmann equation with the BGK model shows as you aptly pointed out that it is conditionally stable for $\tau>0.5$. However, the same analysis for MRT shows that constrains only some relaxation times corresponding to certain moments are required (based on symmetry and energy considerations) and others are free to be tuned independently. This allows MRT to be used for higher $\text{Re}$ flows in a relatively small domain size compared to BGK; it simply is more stable because more relaxation times are tunable within the stability limit. This is an advantage of MRT.

The 'disadvantage' is that MRT is more conceptually and computationally involved as BGK is simply applied in distribution space where as MRT is applied in moment space which requires an extra conversion from distributions to moments and back. This requires some additional use of linear algebra.

However, I think MRT is worth the time to implement as you increase stability for the same domain resolution, switching between MRT and BGK is trivial, and you only suffer up to 10-20% performance hit.