Skip to content

Smagorinsky Turbulence Model and TRT collision operator

OpenLB – Open Source Lattice Boltzmann Code Forums on Lattice Boltzmann Methods General Topics Smagorinsky Turbulence Model and TRT collision operator

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #2017
    tobit
    Participant

    Hey everybody!
    In order to boost the stability of my LBM algorithms I tried to incorporate Smagorinsky turbulence models into both my BGK and TRT collision operators that increase the viscosity locally. While the BGK Smagorinsky algorithm seems to work fine across a broad range of Reynolds numbers, my results with the TRT collision operator and the turbulence model are significantly different for very high Reynolds numbers.
    As I could not find a detailed derivation of TRT in population space I tried to include it similarly to the BGK model. My reasoning is as follows (C is the Smagorinsky constant whereas c_s is the lattice speed of sound):
    – As the symmetric relaxation time tau_p in TRT is linked to the viscosity nu = nu_0 + (C Delta)^2 = (tau_p – 0.5)*c_s^2 = (tau – 0.5)*c_s^2 = (tau_p0 – 0.5)*c_s^2 + tau_T*c_s^2 the relaxation can be split up into an additional turbulent contribution.
    – The strain rate tensor S may be calculated from the approximating the first order contribution of the momentum flux by the non-equilibrium momentum flux (In BGK this can be seen from the Chapman-Enskog expansion but I have also seen papers that use this approach for MRT models. As TRT could be seen as a special form of MRT I suppose this should still hold for TRT as well).
    – Thus the overall strain rate tensor is given by |S| = 1/(2 rho c_s^2 tau) sqrt( 2 Pi_ij^(1) Pi_ij^(1) ) with Pi_ij^(1) approx Pi_ij^(neq) = sum_alpha e_{alpha i} e_{alpha j} ( f_alpha^(eq) – f_alpha ).
    – The turbulent relaxation time can be calculated from these two equations to tau_T = 1/2 { sqrt[tau_p0^2 + 2 sqrt(2) (C Delta)^2/(rho c_s^4) sqrt( Pi_ij^(neq) Pi_ij^(neq) ) ] – tau_p0 }, so just like with the BGK operator.
    – Now i simply add the turbulent relaxation time to the positive relaxation time of TRT tau_p = tau_p0 + tau_T while calculating the negative relaxation parameter from the magic parameter lambda and the positive relaxation time tau_p0 without the turbulent part rearranging the equation lambda = (tau_p0 – 0.5) (tau_m – 0.5).

    I could not find a paper that features a detailed derivation (CE expansion) of TRT in population space (all I know are in momentum space which I have no experience yet) or a paper combining these two models. Does somebody know a paper featuring the two or has anyone an idea where my mistake is?
    Thanks a lot!

    #2997
    Marc
    Participant

    Hey tobit,

    this is a good question! I think you are familar with the TRT papers and you know the common TRT magic parameters (lambda=0,25 or lambda=0,375). These values are proposed as universal values. They are calibrated for poiseuille flow or laminar shear flows. In the case of turbulence you have to go magnitudes lower to reach the same stability as BGK and lamda gets a function of your Reynolds number. What you have to do is a lambda recalibration for your cannonical flow type. Your derivation for Smagorinsky TRT seems to be correct, but don’t expect an advantage in comparison for Smagorinsky BGK. If you get other results or see an increased stability, please let me know. I am interested in this topic.

    Best Marc

    #2998
    tobit
    Participant

    Thanks Marc for your detailed reply!
    I am familiar with the TRT papers and the derivation of the optimal parameters but I did not consider this. Your argument makes perfectly sense: Setting the anti-symmetric relaxation parameter using the magic parameter lambda (with 1/4 as I did) and a very high Reynolds number and thus a very low positive relaxation time (tau+ very close to 0.5) will result in a very high value for tau- (a very small omega-) and therefore the influence of the anti-symmetric part will be (almost) neglectable. Fixing tau+ and tau- to similar values makes TRT though lose its advantages over BGK as you have pointed out.
    I think turbulence modelling in LBM in general is quite appealing indeed due to its simplicity and computational efficiency. Some time ago i benchmarked it and I think my performance dropped by around 1/3 (compared to the simple BGK operator) to 75 Mlups with a D3Q19 lattice on an octa-core processor.
    I will let you know if I stumble across something. In the meanwhile thanks again for your kind reply!
    Tobit

    #4191
    tobit
    Participant

    Hey Marc,
    another question. As it seems you have more experience with LES simulation with LBM: Which in- and outlet boundary conditions would you recommend for turbulent flow (in particular on a D3Q19 lattice with BGK and MRT Smagorinsky collision operators)?

    • This reply was modified 4 years, 11 months ago by tobit.
    #4211
    Marc
    Participant

    Hey Tobit,

    I can recommend you either the interpolated Boundaries or the offLattice Bounadries (aka Bouzidi) for turbulent flows. Every local boundary formulation will get instable. For the outlet (pressure) boundary, we don’t have a working offLattice Boundary. (I never get anti bounce back stable for higher Reynolds numbers). So I would recommend you to use the Interpolation boundary for the outlet and the offLattice boundary for the inlet.

    Best Marc

    #4234
    tobit
    Participant

    Hey Marc!
    Sorry for the late reply and thanks for your advice!
    So far I have used the simple Zou/He boundaries with my D2Q9-lattice and Hecht/Harting with the D3Q19-lattice for pressure and velocity boundaries as well as anti-bounce-back for pressure and Ladd’s boundary condition for velocity inlets. When coupling them with turbulence models all of them but Ladd’s boundary condition yield nodes of unphysically high velocity near the boundary and become instable when under-resolved which makes them very little attractive. Thus so far I have a stable velocity inlet but no stable pressure outlet.
    Bouzidi for the case of q=1/2 seems just to be a special case of Ladd’s method where the density of the model is assumed 1, isn’t it? Haserta et al. (ICCS 2011) mention that they use a Bouzidi pressure outlet as well but all I could find is a velocity inlet.
    And by interpolated boundaries you intend extrapolated boundaries like Guo’s non-equilibrium extrapolation method?
    Thanks a lot
    tobit

    #4235
    tobit
    Participant

    Now I have the combination of Ladd’s method as an inlet and Guo’s non-equilibrium extrapolation method as an outlet and it works like a charm. Finally I can push my model to unrealistically high Reynolds numbers without a loss of stability.
    Thank you very much and have a nice week!
    tobit

    #4244
    Marc
    Participant

    Hey tobit,

    it is nice to hear that you achieve stable boundaries for high Reynolds numbers. The term interpolated I mentioned before was related to the boundary naming that we have in OpenLB. Our implementation of the interpolated boundary is described in Latt et al. “Straight velocity boundaries in the lattice Boltzmann method” (BC4). Guo’s neq Extrapolation is also a good choice!

    Best Marc

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.