Menu

Executive Programs

Workshops

Projects

Blogs

Careers

Placements

Student Reviews


For Business


More

Academic Training

Informative Articles

Find Jobs

We are Hiring!


All Courses

Choose a category

Loading...

All Courses

All Courses

logo

Loading...
Executive Programs
Workshops
For Business

Success Stories

Placements

Student Reviews

More

Projects

Blogs

Academic Training

Find Jobs

Informative Articles

We're Hiring!

phone+91 9342691281Log in
  1. Home/
  2. Gokul Krishnan R S/
  3. Week 8 - Simulation of a backward facing step in OpenFOAM

Week 8 - Simulation of a backward facing step in OpenFOAM

OBJECTIVE. To simulate an incompressible-laminar-viscous flow through the backwards-facing step geometry and perform a transient simulation. Case 1 - To Simulate the flow without using any grading factor (i.e., GF = 1) Case 2 -  To Simulate the flow with a grading factor of 0.2. The cells should be finer…

  • CFD
  • Gokul Krishnan R S

    updated on 28 Jul 2022

OBJECTIVE.

  • To simulate an incompressible-laminar-viscous flow through the backwards-facing step geometry and perform a transient simulation.
  • Case 1 - To Simulate the flow without using any grading factor (i.e., GF = 1)

Case 2 -  To Simulate the flow with a grading factor of 0.2. The cells should be finer near the walls (including the step wall).

 

Incompressible-laminar-viscous flow.

incompressible flow:

 The flow in which there is no change in the density is called the incompressible flow. 

Mathematically, an incompressible flow can be expressed as 

∇⋅u=0">∇⋅u=0∇⋅u=0Re=ρ⋅v⋅L/μ 

 

Laminar flow: 

A laminar flow is one where the fluid motion is regular and there is no mixing. It can be visualized by the pathlines that do not intersect each other.

In fluid dynamics, laminar flow is characterized by fluid particles following smooth paths in layers, with each layer moving smoothly past the adjacent layers with little or no mixing. 

At low velocities, the fluid tends to flow without lateral mixing, and adjacent layers slide past one another like playing cards. There are no cross-currents perpendicular to the direction of flow, nor eddies or swirls of fluids.

In laminar flow, the motion of the particles of the fluid is very orderly with particles close to a solid surface moving in straight lines parallel to that surface. Laminar flow is a flow regime characterized by high momentum diffusion and low momentum convection.

Reynolds number is the parameter to differentiate a flow as laminar or turbulent. 

Whenever the Reynolds number is less than about 2,000, flow in a pipe is generally laminar, whereas, at values greater than 2,000, flow is usually turbulent.

Mathematically, Reynolds number is the ratio of inertial force to the viscous force.

 

where,

  • ρ is the density of the fluid (kg/m3)
  • u is the flow speed (m/s)
  • L is a characteristic linear dimension (m) 
  • μ is the dynamic viscosity of the fluid (Pa·s or N·s/m2 or kg/(m·s))
  • ν is the kinematic viscosity of the fluid (m2/s)

 

 

Viscous flow

A type of fluid flow in which there is a continuous steady motion of the particles; the motion at a fixed point always remains constant. Also called streamline flow; laminar flow; steady flow.

The fluid flow in form of a layer. The layer which sticks with the wall has zero velocity which is called no-slip condition and it develops the frictional effect at the wall. Frictional effects are also present between two layers of fluid and slower layer tries to slow down the faster layer which can be measured by using viscosity.

effects of viscosity are maximum near the boundary so laminar sublayer exists near the boundary that is shown in the below figure.

Mesh grading.

Mesh grading is a factor that is,

Grading factor=Size of the last cell/Size of the first cell

 

 

PROCEDURE.

  • First, we are creating the run folder in OpenFOAM in which we will be running our simulations.
  • And then need to copy the cavity folder to the run folder so that we can make the changes in the blockMeshDict, controlDict, and pressure and velocity files as to run our required simulations, we copying the folder because we are not supposed to make any changes in the original folders in the OpenFOAM.
  • Then will make the required changes in the blockMeshDict file that is naming the vertices for and then creating the blocks, in this case, there are 21 vertices and 5 blocks while creating blocks we also need to specify the number of mesh points needed along the x, y, and z-direction and also the simple grading should be done along the boundaries.
  • then, we need to assign the boundary conditions here, we need to define all the faces in OpenFOAM refers to patches and giving them type that is the inlet and outlet will be the faces (type patch), for front and back type will be empty faces, for top and bottom which are the boundary conditions in this case type will be wall type and setting up these will constitute a particular boundary, then will save these changes in the blockMeshDict.
  •  Then, in the velocity and pressure files, we have to give the value of the velocity at the inlet type will be fixed value here we should assign some value as initial velocity and pressure will be zerogradient and at the outlet velocity type will be zerogradient and pressure will be type fixedvalue that value will be uniform 0, then at front and back velocity type empty and pressure, as well as type empty at the no slip boundaries that is top and bottom velocity, will be type noslip and pressure type empty. And in the transportProperties we can change the nu value in order to obtain the lower courant number.
  • And in the controlDict file the simulation time and the time step need be assigned in the way that the courant number should be less than 0.5.
  • and then creating the block mesh and then run the simulation using the respective solver after the completion of simulation open the paraview in the paraFoam and plot the velocity profile for the given value.

 

 

CODE.

BLOCKMESHDICT 

For without applying grading factor

/*--------------------------------*- C++ -*----------------------------------*\

  =========                 |

  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox

   \\    /   O peration     | Website:  https://openfoam.org

    \\  /    A nd           | Version:  8

     \\/     M anipulation  |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       dictionary;

    object      blockMeshDict;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

convertToMeters 0.01;

 

vertices

(

    (0 0 0)

    (8 0 0)

    (8 0.5 0)

    (0 0.5 0)

    (8 1 0)

    (0 1 0)

    (20 1 0)

    (20 0.5 0)

    (20 0 0)

    (20 -1 0)

    (8 -1 0)

      

    (0 0 0.6)

    (8 0 0.6)

    (8 0.5 0.6)

    (0 0.5 0.6)

    (8 1 0.6)

    (0 1 0.6)

    (20 1 0.6)

    (20 0.5 0.6)

    (20 0 0.6)

    (20 -1 0.6)

    (8 -1 0.6)

);

blocks

(

    hex (0 1 2 3 11 12 13 14) (80 10 1) simpleGrading (1 1 1)

  

    hex (3 2 4 5 14 13 15 16) (80 10 1) simpleGrading (1 1 1)

  

    hex (2 7 6 4 13 18 17 15) (120 10 1) simpleGrading (1 1 1)

  

    hex (1 8 7 2 12 19 18 13) (120 10 1) simpleGrading (1 1 1)

  

    hex (10 9 8 1 21 20 19 12) (120 20 1) simpleGrading (1 1 1)

  

);

 

edges

(

);

boundary

(

    inlet

    {

        type patch;

        faces

        (

            (0 11 14 3)

            (3 14 16 5)

          

        );

    }

    outlet

    {

        type patch;

        faces

        (

            (9 8 19 20)

            (8 7 18 19)

            (7 6 17 18)

        );

    }

    frontAndBack

    {

        type empty;

        faces

        (

            (0 3 2 1)

            (11 12 13 14)

            (3 5 4 2)

            (13 15 16 14)

            (2 4 6 7)

            (13 18 17 15)

            (1 2 7 8)

            (12 19 18 13)

            (10 1 8 9)

            (21 20 19 12) 

        );

    }

  

        noslipwall

    {

        type wall;

        faces

        (

            (4 5 16 15)

            (4 15 17 6)

            (0 1 12 11)

            (9 20 21 10)

            (1 10 21 12)

          

        );

    }

                                        

);

 

mergePatchPairs

(

            

);

 

// **********************************************************

With the applied grading factor 0.2

/*--------------------------------*- C++ -*----------------------------------*\

  =========                 |

  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox

   \\    /   O peration     | Website:  https://openfoam.org

    \\  /    A nd           | Version:  8

     \\/     M anipulation  |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       dictionary;

    object      blockMeshDict;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

convertToMeters 0.01;

 

vertices

(

    (0 0 0)

    (8 0 0)

    (8 0.5 0)

    (0 0.5 0)

    (8 1 0)

    (0 1 0)

    (20 1 0)

    (20 0.5 0)

    (20 0 0)

    (20 -1 0)

    (8 -1 0)

      

    (0 0 0.6)

    (8 0 0.6)

    (8 0.5 0.6)

    (0 0.5 0.6)

    (8 1 0.6)

    (0 1 0.6)

    (20 1 0.6)

    (20 0.5 0.6)

    (20 0 0.6)

    (20 -1 0.6)

    (8 -1 0.6)

  

);

 

blocks

(

    hex (0 1 2 3 11 12 13 14) (80 10 1) simpleGrading (0.2 5 1)

  

    hex (3 2 4 5 14 13 15 16) (80 10 1) simpleGrading (0.2 0.2 1)

  

    hex (2 7 6 4 13 18 17 15) (120 10 1) simpleGrading (5 0.2 1)

  

    hex (1 8 7 2 12 19 18 13) (120 10 1) simpleGrading (5 5 1)

  

    hex (10 9 8 1 21 20 19 12) (120 20 1) simpleGrading (5 5 1)

  

);

 

edges

(

);

 

boundary

(

    inlet

    {

        type patch;

        faces

        (

            (0 11 14 3)

            (3 14 16 5)

          

        );

    }

    outlet

    {

        type patch;

        faces

        (

            (9 8 19 20)

            (8 7 18 19)

            (7 6 17 18)

        );

    }

    frontAndBack

    {

        type empty;

        faces

        (

            (0 3 2 1)

            (11 12 13 14)

            (3 5 4 2)

            (13 15 16 14)

            (2 4 6 7)

            (13 18 17 15)

            (1 2 7 8)

            (12 19 18 13)

            (10 1 8 9)

            (21 20 19 12)

          

          

        );

    }

  

        noslipwall

    {

        type wall;

        faces

        (

            (4 5 16 15)

            (4 15 17 6)

            (0 1 12 11)

            (9 20 21 10)

            (1 10 21 12)

          

        );

    }

                                        

);

 

mergePatchPairs

(

            

);

 

// ***********************************************************

CONTROLDICT

/*--------------------------------*- C++ -*----------------------------------*\

  =========                 |

  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox

   \\    /   O peration     | Website:  https://openfoam.org

    \\  /    A nd           | Version:  8

     \\/     M anipulation  |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       dictionary;

    location    "system";

    object      controlDict;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

application     icoFoam;

 

startFrom       startTime;

 

startTime       0;

 

stopAt          endTime;

 

endTime         3;

 

deltaT          1e-3;

 

writeControl    timeStep;

 

writeInterval   20;

 

purgeWrite      0;

 

writeFormat     ascii;

 

writePrecision  6;

 

writeCompression off;

 

timeFormat      general;

 

timePrecision   6;

 

runTimeModifiable true;

 

 

// ************************************************************************* //

 PRESSURE FILE

/*--------------------------------*- C++ -*----------------------------------*\

  =========                 |

  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox

   \\    /   O peration     | Website:  https://openfoam.org

    \\  /    A nd           | Version:  8

     \\/     M anipulation  |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       volScalarField;

    object      p;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

dimensions      [0 2 -2 0 0 0 0];

 

internalField   uniform 0;

 

boundaryField

{

    inlet

    {

        type            zeroGradient;

    }

 

    outlet

    {

        type            fixedValue;

        value           uniform 0;

    }

 

    frontAndBack

    {

        type            empty;

    }

    noslipwall

    {

        type            zeroGradient;

    }

}

 

// **********************************************************

 VELOCITY FILE

/*--------------------------------*- C++ -*----------------------------------*\

  =========                 |

  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox

   \\    /   O peration     | Website:  https://openfoam.org

    \\  /    A nd           | Version:  8

     \\/     M anipulation  |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       volVectorField;

    object      U;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

dimensions      [0 1 -1 0 0 0 0];

 

internalField   uniform (0 0 0);

 

boundaryField

{

    inlet

    {

        type            fixedValue;

        value           uniform (0.066 0 0);

    }

 

    outlet

    {

        type            zeroGradient;

    }

 

    frontAndBack

    {

        type            empty;

    }

    noslipwall

    {

        type            noSlip;

    }

}

 

// ********************************************************

TRANSPORT PROPERTIES

/*--------------------------------*- C++ -*----------------------------------*\

  =========                 |

  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox

   \\    /   O peration     | Website:  https://openfoam.org

    \\  /    A nd           | Version:  8

     \\/     M anipulation  |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       dictionary;

    location    "constant";

    object      transportProperties;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

nu              [0 2 -1 0 0 0 0] 1e-6;

 

 

// *********************************************************

 

 

OUTPUT

Without assigning any grading factor the block mesh is as shown below.

 

 

For the given grading factor 0.2 the results are as follows.

The velocity flow diagram without applying grading factor.

The velocity flow diagram for the grading factor 0.2

The pressure flow diagram without applying grading factor.

The pressure flow diagram for the given grading factor 0.2

The plot for the velocity at 0.085 without applying grading fcator.

 

The plot for the velocity at 0.085 for the given grading fcator 0.2 is as follows.

 

 

 

CONCLUSION.

By changing the simple grading factor from the value of 0.2 to 1 the mesh becomes finer and the solution becomes very accurate.

Overall the change in the size of simple grading factor (mesh size) the results remains the same as approximately.

The execution time is lower for lower meshing grading factor.

 

Leave a comment

Thanks for choosing to leave a comment. Please keep in mind that all the comments are moderated as per our comment policy, and your email will not be published for privacy reasons. Please leave a personal & meaningful conversation.

Please  login to add a comment

Other comments...

No comments yet!
Be the first to add a comment

Read more Projects by Gokul Krishnan R S (17)

Design of backdoor

Objective:

Aim :           To develop the car Backdoor(Tail gate) with the reference of given skin data as per engineering standarad by using NX12   Back Door :            The Back door is typically hinged, but sometimes attached by other mechanisms…

calendar

22 Oct 2022 06:40 AM IST

    Read more

    Roof Design

    Objective:

    INTRODUCTION The roof of a car or other vehicle is the top part of it, which protects passengers or goods from the weather. The roof also protects the passenger from any injury when the car gets crashed or is rolled over or something heavy falls on the roof.   OBJECTIVE:            …

    calendar

    17 Oct 2022 06:53 AM IST

    • DESIGN
    Read more

    Fender Design

    Objective:

    Objective To design various mounting points on the fender, according to the design parameters.   Fender Fender is the US English term for part of an automobile (vehicle body of car) that frames the wheel well (the fender underside). A fender is the part of an automobile which may be a car, motorcycle or any other…

    calendar

    06 Oct 2022 02:51 PM IST

    • NX-CAD
    Read more

    Fender Design - Wheel Arch Challenge

    Objective:

    Aim: To calculate the Fender Wheel Arc area , to pass the European standards.   Objective:            Create the intersection point according to given degree angle.            Follow the European standards…

    calendar

    01 Oct 2022 05:17 AM IST

      Read more

      Schedule a counselling session

      Please enter your name
      Please enter a valid email
      Please enter a valid number

      Related Courses

      coursecardcoursetype

      Post Graduate Program in CFD Solver Development

      4.8

      106 Hours of Content

      coursecard

      Introduction to OpenFOAM Development

      4.9

      18 Hours of Content

      coursecardcoursetype

      Post Graduate Program in Battery Technology for Mechanical Engineers

      4.8

      57 Hours of Content

      coursecardcoursetype

      Post Graduate Program in Automation & Pre-Processing for FEA & CFD Analysis

      4.7

      81 Hours of Content

      coursecardcoursetype

      Post Graduate Program in Hybrid Electric Vehicle Design and Analysis

      4.8

      321 Hours of Content

      Schedule a counselling session

      Please enter your name
      Please enter a valid email
      Please enter a valid number

                  Do You Want To Showcase Your Technical Skills?
                  Sign-Up for our projects.