Skip to content

Fluctuations in velocity profile at inlet for turbulent channel flow setup

OpenLB – Open Source Lattice Boltzmann Code Forums on OpenLB General Topics Fluctuations in velocity profile at inlet for turbulent channel flow setup

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
  • #1965


    I am trying to setup a 3D turbulent channel flow with a constant inlet velocity using the following parameters:

    [LBconverter] Characteristical length(m): charL=0.03333
    [LBconverter] Characteristical speed(m/s): charU=1
    [LBconverter] Characteristical time(s): charT=0.03333
    [LBconverter] Density factor(kg/m^d): charRho=997
    [LBconverter] Characterestical mass(kg): charMass=0.0369148
    [LBconverter] Characterestical force(N): charForce=1.10756
    [LBconverter] Characterestical pressure(Pa): charPressure=997
    [LBconverter] Pressure level(Pa): pressureLevel=0
    [LBconverter] Phys. kinematic viscosity(m^2/s): charNu=9.35807e-07
    [LBconverter] lattice values
    [LBconverter] DeltaX: deltaX=0.0450045
    [LBconverter] Lattice velocity: latticeU=0.05
    [LBconverter] DeltaT: deltaT=0.00225023
    [LBconverter] Reynolds number: Re=35616.3
    [LBconverter] DimlessNu: dNu=2.8077e-05
    [LBconverter] Viscosity for computation: latticeNu=3.11936e-05
    [LBconverter] Relaxation time: tau=0.500094
    [LBconverter] Relaxation frequency: omega=1.99963

    In order to reduce the time taken for the first transient fluctuations that occur till the fluid reaches the outlets, I have chosen to initiate all lattice nodes to a constant velocity in the intended direction. I have one inlet on which I impose a constant velocity, and three outlets on which I impose a constant pressure. I am doing this with the following piece of code:

    // material=1 –> fluid, material=2 –> wall boundary
    // material=3 –> bulk dynamics + constant velocity (inlet / inflow)
    // material=4,5,6 –> bulk dynamics + pressure (outflow)
    lattice.defineDynamics( superGeometry,4,&bulkDynamics );
    lattice.defineDynamics( superGeometry,5,&bulkDynamics );
    lattice.defineDynamics( superGeometry,6,&bulkDynamics );
    bc.addPressureBoundary( superGeometry,4,omega );
    bc.addPressureBoundary( superGeometry,5,omega );
    bc.addPressureBoundary( superGeometry,6,omega );

    // Initial conditions
    AnalyticalConst3D<T,T> rhoF( 1 );
    std::vector<T> velocity( 3,T() );
    AnalyticalConst3D<T,T> uF( velocity );

    AnalyticalConst3D<T,T> ux(0.0);
    AnalyticalConst3D<T,T> uy(0.0);
    AnalyticalConst3D<T,T> uz(-converter.getLatticeU());
    AnalyticalComposed3D<T,T> uFluid_ini( ux, uy, uz);

    // Initialize all values of distribution functions to their local equilibrium
    lattice.defineRhoU( superGeometry,1,rhoF,uFluid_ini );
    lattice.iniEquilibrium( superGeometry,1,rhoF,uFluid_ini );
    //lattice.defineRhoU( superGeometry,1,rhoF,uF );
    //lattice.iniEquilibrium( superGeometry,1,rhoF,uF );
    lattice.defineRhoU( superGeometry,3,rhoF,uF );
    lattice.iniEquilibrium( superGeometry,3,rhoF,uF );
    lattice.defineRhoU( superGeometry,4,rhoF,uF );
    lattice.iniEquilibrium( superGeometry,4,rhoF,uF );
    lattice.defineRhoU( superGeometry,5,rhoF,uF );
    lattice.iniEquilibrium( superGeometry,5,rhoF,uF );
    lattice.defineRhoU( superGeometry,6,rhoF,uF );
    lattice.iniEquilibrium( superGeometry,6,rhoF,uF );

    // Lattice initialize

    What I expected was that the entire duct would be initiated at a constant velocity and then gradual velocity reduction will be observed along the walls as bounce-back condition has been imposed on wall boundary nodes. However, I see wave like fluctuations in the center of the duct which are further propagated to the fluid. These fluctuations are seen immediately after starting the simulation (time = 0.5 sec). Here are the images:


    Any insight into such behavior of fluctuations after initialization would help me better understand how to control it.


    it is hard to stabilize three pressure outlets by this high Reynoldsnumber. You should use periodic boundaries in span and streamwise direction and a body force to drive the flow.
    Best Marc


    Hello Marc,

    Sorry for the very late reply, I was on a short vacation. I cannot grasp the strategies you are suggesting there entirely, “use periodic boundaries in span and streamwise direction” and “body force to drive the flow”. I think by the first comment you mean I should make my inlet and outlets periodic, but then do I also give periodicity to the walls in all directions ? I did not understand the second comment


    in the channel flow you have three directions: streamwise, spanwise and lateral. The idea is to set streamwise and spanwise to periodic boundaries. In lateral direction you should set a no slip condition (bounce back or derivates). If you want to check how to set periodic boundaries see the poiseuille example. In the case of periodic boundaries we have to add a force (see also the poiseuille example).


    Dear friends
    I want to expand the LB equation by Chapman-enskog to derive extended Bousinnesq equations.
    This system of equations contain two nonlinear equation with two main unknowns. In the one of these two equatios, we have a third order differential term that is first order temporal and second order spatial.
    Now I do not know that how can I expand the LB equation to cover this term.
    I will be so grateful if you help me.


    Hey Marc,

    thanks for the explanation. I now understand what you are suggesting but am having difficulty in correlating how this would represent my channel flow. In the Poisuelle example, using periodic boundaries in streamwise direction makes sense if you wish to simulate a portion of pipe/channel after the developing length. If I give periodicity in my case and also specify the value of pressure drop between inlet-outlet, it is as good as simulating a flow beyond the developing length, which I do not know in my duct case as the geometry is not very simple. This is my difficulty, please correct me if there is any gap in physical understanding. I wish to simulate real flow and see the behavior as in transition state as it is going towards a steady state.


    I don’t know your duct geometry. If you have to set a special pertubated flow at the inflow, you can’t deal with periodic boundaries. You can test the channel flow with inlet and outlet conditions, but I think it will be a hard task and you will be not able to compare any achieved statistics in the channel flow.

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