<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://script.spoken-tutorial.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://script.spoken-tutorial.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Divyesh7</id>
		<title>Script | Spoken-Tutorial - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://script.spoken-tutorial.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Divyesh7"/>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/Special:Contributions/Divyesh7"/>
		<updated>2026-04-09T10:13:02Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.23.17</generator>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English"/>
				<updated>2020-08-07T13:07:44Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Turbulence Modelling in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Padmini Priyadarshini&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Turbulence, YPlus, K-Omega, K-OmegaSST, Paraview, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Turbulence Modelling in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn how to,&lt;br /&gt;
* Set up the '''blockMeshDict''' dictionary for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega''' and '''k-omega SST''' '''turbulence models'''&lt;br /&gt;
* '''Run '''the '''simulation'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Linux Mint OS''' version 18.3&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit Text Editor'''&lt;br /&gt;
However, you may use any other '''text editor''' of your choice.&lt;br /&gt;
&lt;br /&gt;
The steps explained in this tutorial are identical in '''Ubuntu Linux OS'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should have basic knowledge of geometric progression&lt;br /&gt;
* You should be familiar with '''simulating''' a''' turbulent flow''' through a''' channel '''and&lt;br /&gt;
* You should also be familiar with '''Multi-block Meshing of 2D''' geometry&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM''' tutorial on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| We will use the '''simpleFoam solver''' to '''simulate '''this problem.&lt;br /&gt;
&lt;br /&gt;
'''simpleFoam''' is a '''steady-state solver''' for '''incompressible, turbulent flow'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Problem statement&lt;br /&gt;
|| The diagram shows a''' 2D channel '''of length '''65 metres '''and width '''1 metre'''.&lt;br /&gt;
&lt;br /&gt;
The '''kinematic viscosity''' is '''1e to the power of minus 5 metres per second.'''&lt;br /&gt;
The '''Inlet velocity '''is '''20 metres per second. '''&lt;br /&gt;
'''Outlet pressure '''is set to '''zero atmosphere.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Flow Properties&lt;br /&gt;
|| '''Reynolds number''' is '''2 million'''.&lt;br /&gt;
&lt;br /&gt;
The flow is '''turbulent.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| First, We will use''' k-epsilon turbulence model '''to '''simulate''' this '''case'''.&lt;br /&gt;
&lt;br /&gt;
Let us set up the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''kepsilon''' folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl, Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here onwards, please remember to press the '''Enter''' key after typing each '''command''' in the '''terminal'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd $FOAM_RUN '''&lt;br /&gt;
|| Open the '''Run directory '''by typing this '''command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] &lt;br /&gt;
Type: '''cp -r ~/Downloads/kepsilon .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory'''.&lt;br /&gt;
To do that, type the following '''command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| I have downloaded the file into the '''Downloads directory.'''&lt;br /&gt;
&lt;br /&gt;
Please change the '''command''' according to the '''file path''' on your machine.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd kepsilon'''&lt;br /&gt;
|| Navigate to the '''kepsilon directory.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/blockMeshDict'''&lt;br /&gt;
|| Open the '''blockMeshDict '''file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight '''blocks'''&lt;br /&gt;
|| Scroll down to the '''keyword “blocks”.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''hex .... (1 0.18 1);'''&lt;br /&gt;
|| The '''domain''' has two equal-sized '''blocks.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''75''' '''30'''&lt;br /&gt;
|| For each '''block''', the '''cell''' number is set to '''75 '''in the '''x-direction''', and '''30''' in the '''y-direction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall distance, yp&lt;br /&gt;
|| Let “'''yp'''” be the distance between the '''wall''' and the nearest '''cell centre'''.&lt;br /&gt;
&lt;br /&gt;
For our '''case, yp''' is '''0.0031''' for '''YPlus''' value of '''200'''.&lt;br /&gt;
&lt;br /&gt;
For''' channel flow''', the '''skin friction coefficient, Cf,''' is given by this formula.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Cell width&lt;br /&gt;
|| The width of the''' cell '''near the '''wall''' is '''0.0062.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio&lt;br /&gt;
|| The '''expansion ratio''' is the ratio of the last '''cell''' width to the first '''cell''' width.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio calculation&lt;br /&gt;
|| It is calculated using geometric progression formula. &lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' for more details.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio value&lt;br /&gt;
|| The '''expansion ratio''' in the '''+y direction''' is found to be &lt;br /&gt;
* '''5.57 '''for '''block 1,''' and &lt;br /&gt;
* '''0.18 '''for''' block 2'''&lt;br /&gt;
* for a '''block''' of width of '''0.5 m''' and '''cell''' number 30.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| I have already put these values into the '''blockMeshDict''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight''' simpleGrading'''&lt;br /&gt;
|| '''simpleGrading''' describes the uniform '''expansion ratio '''in '''x, y''', and''' z-directions.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| For our '''case''', the''' expansion ratio''' in the '''y-direction''' is&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''5.57'''&lt;br /&gt;
|| '''5.57 '''for '''block 1'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.18'''&lt;br /&gt;
|| '''0.18''' for '''block 2'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Close Text Editor&lt;br /&gt;
|| Close the '''blockMeshDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be''' run. '''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh''' to '''mesh''' the geometry.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam'''&lt;br /&gt;
|| Then type '''simpleFoam''' in the '''terminal '''to '''run '''the '''simulation'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''simulation '''will take some time depending on your computer’s '''hardware'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is complete.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let's check the final value of '''YPlus.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam -postProcess -func &amp;quot;yPlus&amp;quot; -latestTime'''&lt;br /&gt;
|| Now type the following '''command''' on the '''terminal''' to get the '''YPlus '''value on the '''walls.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
Highlight''' Patch to 214.786'''&lt;br /&gt;
|| We can see that the '''YPlus''' value stays below 300. &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let us '''simulate''' the same problem using the '''k-omega turbulence model''' now.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: K-Omega turbulence model&lt;br /&gt;
|| '''k-omega '''is a '''two-equation model'''.&lt;br /&gt;
It solves-&lt;br /&gt;
* The '''turbulent kinetic energy transport equation''', and&lt;br /&gt;
* The '''specific turbulent dissipation rate transport equation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Inlet Boundary Condition - omega&lt;br /&gt;
|| Let's look at the '''boundary''' and '''initial conditions''' for '''omega.'''&lt;br /&gt;
&lt;br /&gt;
We will use '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
&lt;br /&gt;
It calculates '''omega''' using '''kappa''' and user-specified '''mixing length. '''&lt;br /&gt;
&lt;br /&gt;
'''Mixing length '''refers to the '''turbulent length scale.'''&lt;br /&gt;
&lt;br /&gt;
'''Kappa''' value is automatically put in by the '''solver.'''&lt;br /&gt;
&lt;br /&gt;
Here, the value of '''turbulent length scale''' is '''0.07 metres'''&lt;br /&gt;
&lt;br /&gt;
The '''specific turbulent dissipation rate '''value is '''16.67 second inverse'''&lt;br /&gt;
&lt;br /&gt;
Where''' empirical constant, cmu '''is equal to '''0.09'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall &amp;amp; Outlet Boundary Condition - omega&lt;br /&gt;
|| '''Wall boundary condition''' is set to '''omegaWallFunction.'''&lt;br /&gt;
&lt;br /&gt;
'''zeroGradient boundary condition''' is imposed at the '''outlet. '''&lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komega '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komega .'''&lt;br /&gt;
|| Copy the downloaded file into '''Run directory.'''&lt;br /&gt;
&lt;br /&gt;
To do that, type the following '''command''' in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cd komega'''&lt;br /&gt;
|| Navigate to the '''komega''' directory using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s take a look at the '''specific turbulent dissipation rate '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''gedit 0/omega'''&lt;br /&gt;
|| Open the '''omega''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''internalField ... 16.67;'''&lt;br /&gt;
|| The '''internalField''' value is initialised as '''16.67'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega''']&lt;br /&gt;
Highlight''' type turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|| The '''inlet boundary type''' is set to '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' mixingLength 0.07;'''&lt;br /&gt;
|| The '''keyword mixingLength '''represents the '''Turbulent length scale''', and is set to '''0.07'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' value $internalField;'''&lt;br /&gt;
|| We have passed the '''internalField''' value to the '''patch field '''value.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Highlight '''zeroGradient'''&lt;br /&gt;
|| The '''outlet patch type''' is set to '''zeroGradient.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''omegaWallFunction'''&lt;br /&gt;
|| The '''wall patch type''' is set to '''omegaWallFunction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Close Text Editor&lt;br /&gt;
|| Close the '''omega''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulenceProperties''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' kOmega'''&lt;br /&gt;
|| '''kOmega '''is selected as the '''RASModel.'''&lt;br /&gt;
&lt;br /&gt;
Note,''' O '''is capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' on'''&lt;br /&gt;
|| Ensure the '''keyword turbulence''' is set to '''On'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be '''run.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh '''to '''mesh '''the geometry. &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Now, type the following '''command''' to '''run''' the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is over.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Now, let’s '''run''' the same '''case''' with the '''k-omegaSST turbulence model.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: K-omegaSST turbulence model&lt;br /&gt;
|| The''' K-omega SST turbulence model''' is a '''hybrid model'''.&lt;br /&gt;
In the '''near-wall '''region, '''K-omegaSST''' uses the '''K-omega turbulence model.'''&lt;br /&gt;
&lt;br /&gt;
In the region away from the '''wall''', it switches to the '''K-epsilon turbulence model'''.&lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komegasst '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komegasst .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory.'''&lt;br /&gt;
&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd komegasst'''&lt;br /&gt;
|| Navigate to the '''komegasst directory''' using the '''cd command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| '''komega''' and '''komegasst models''' use the same''' turbulence variables'''.&lt;br /&gt;
&lt;br /&gt;
Hence, the files in the '''zero''' directory are the same.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulence properties''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Highlight '''kOmegaSST'''&lt;br /&gt;
|| '''RASModel field''' entry is set to '''kOmegaSST.'''&lt;br /&gt;
&lt;br /&gt;
Note,''' O''' and''' SST''' are capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/fvSchemes'''&lt;br /&gt;
|| Open '''fvSchemes dictionary''' in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Scroll down to the end of the document.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes''']&lt;br /&gt;
Highlight '''wallDist ... ;}'''&lt;br /&gt;
|| '''wallDist sub-dictionary''' is included in the '''fvSchemes dictionary'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This enables the calculation of the distance between the '''cell centre''' and the nearest '''wall.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes'''] Close Text Editor&lt;br /&gt;
|| Close the '''fvSchemes''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The setup is now ready. &lt;br /&gt;
Let us '''run''' the '''simulation.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| '''Mesh''' the geometry using the '''blockMesh command '''on the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Type '''simpleFoam''' in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The '''simulation''' is finished successfully.&lt;br /&gt;
|-&lt;br /&gt;
|| Show slide&lt;br /&gt;
Exit velocity profile - comparison&lt;br /&gt;
|| The slide shows the''' exit velocity profile''' for all three '''turbulence models'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this, we have come to the end of the tutorial.&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
* Set up the '''blockMeshDict''' file for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega '''and''' k-omega SST turbulence models'''&lt;br /&gt;
* '''Run''' the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Repeat the '''simulation''' for a '''YPlus''' value of '''250 '''using '''k-epsilon''' '''model'''&lt;br /&gt;
* Repeat the''' simulation '''for a '''velocity''' of '''40 metres per second''' using '''k-omega''' and '''k-omega SST model'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
The script for this tutorial is contributed by Padmini.&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English"/>
				<updated>2020-07-25T12:42:14Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Turbulence Modelling in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Padmini Priyadarshini&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Turbulence, YPlus, K-Omega, K-OmegaSST, Paraview, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Turbulence Modelling in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn how to,&lt;br /&gt;
* Set up the '''blockMeshDict''' dictionary for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega''' and '''k-omega SST''' '''turbulence models'''&lt;br /&gt;
* '''Run '''the '''simulation'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Linux Mint OS''' version 18.3&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit Text Editor'''&lt;br /&gt;
However, you may use any other '''text editor''' of your choice.&lt;br /&gt;
The steps explained in this tutorial are identical in '''Ubuntu Linux OS'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should have basic knowledge of '''geometric progression'''&lt;br /&gt;
* You should be familiar with '''simulating''' a''' turbulent flow''' through a''' channel '''and&lt;br /&gt;
* You should also be familiar with '''Multi-block Meshing of 2D Geometry'''&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM''' tutorial on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| We will use the '''simpleFoam solver''' to '''simulate '''this problem.&lt;br /&gt;
'''simpleFoam''' is a '''steady-state solver''' for '''incompressible''', '''turbulent flow'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Problem statement&lt;br /&gt;
|| The diagram shows a''' 2D channel '''of length '''65 m '''and width '''1 m'''.&lt;br /&gt;
The '''kinematic viscosity''' is '''1e-05 m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;/s.'''&lt;br /&gt;
The '''Inlet velocity '''is '''20 m/s. '''&lt;br /&gt;
'''Outlet pressure '''is set to '''0 atmosphere.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Flow Properties&lt;br /&gt;
|| '''Reynolds number''' is '''2 million'''.&lt;br /&gt;
The flow is '''turbulent.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| First, We will use''' k-epsilon turbulence model '''to '''simulate''' this '''case'''.&lt;br /&gt;
Let us set up the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''kepsilon''' folder provided in the '''code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl''', '''Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here onwards, please remember to press the '''Enter''' key after typing each '''command''' in the '''terminal'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd $FOAM_RUN '''&lt;br /&gt;
|| Open the '''Run directory '''by typing this '''command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] &lt;br /&gt;
Type: '''cp -r ~/Downloads/kepsilon .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory'''.&lt;br /&gt;
To do that, type the following '''command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| I have downloaded the file into the '''Downloads directory.'''&lt;br /&gt;
Please change the '''command''' according to the '''file path''' on your machine.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd kepsilon'''&lt;br /&gt;
|| Navigate to the '''kepsilon directory.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/blockMeshDict'''&lt;br /&gt;
|| Open the '''blockMeshDict '''file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight '''blocks'''&lt;br /&gt;
|| Scroll down to the '''keyword “blocks”.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''hex .... (1 0.18 1);'''&lt;br /&gt;
|| The '''domain''' has two equal-sized '''blocks.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''75''' '''30'''&lt;br /&gt;
|| For each '''block''', the '''cell number''' is set to '''75 '''in the '''x-direction''', and '''30''' in the '''y-direction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall distance, yp&lt;br /&gt;
|| Let “'''yp'''” be the distance between the '''wall''' and the nearest '''cell centre'''.&lt;br /&gt;
For our '''case, yp''' is '''0.0031''' for '''YPlus''' value of '''200'''.&lt;br /&gt;
For''' channel flow''', the '''skin friction coefficient, Cf,''' is given by this formula.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Cell width&lt;br /&gt;
|| The width of the''' cell '''near the '''wall''' is '''0.0062.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio&lt;br /&gt;
|| The '''expansion ratio''' is the ratio of the last '''cell width''' to the first '''cell width.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio calculation&lt;br /&gt;
|| It is calculated using '''geometric progression''' formula. &lt;br /&gt;
Please refer to the '''Additional Reading Material''' for more details.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio value&lt;br /&gt;
|| The '''expansion ratio''' in the '''+y direction''' is found to be &lt;br /&gt;
* '''5.57 '''for '''block 1,''' and &lt;br /&gt;
* '''0.18 '''for''' block 2'''&lt;br /&gt;
for a '''block''' of width of '''0.5 m''' and '''cell number 30.'''&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| I have already put these values into the '''blockMeshDict''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight''' simpleGrading'''&lt;br /&gt;
|| '''simpleGrading''' describes the uniform '''expansion ratio '''in '''x, y''', and''' z-directions.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| For our '''case''', the''' expansion ratio''' in the '''y-direction''' is&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''5.57'''&lt;br /&gt;
|| '''5.57 '''for '''block 1'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.18'''&lt;br /&gt;
|| '''0.18''' for '''block 2'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Close Text Editor&lt;br /&gt;
|| Close the '''blockMeshDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be''' run. '''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh''' to '''mesh''' the '''geometry'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam'''&lt;br /&gt;
|| Then type '''simpleFoam''' in the '''terminal '''to '''run '''the '''simulation'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''simulation '''will take some '''time''' depending on your computer’s '''hardware'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is complete.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let's check the final value of '''YPlus.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam -postProcess -func &amp;quot;yPlus&amp;quot; -latestTime'''&lt;br /&gt;
|| Now type the following '''command''' on the '''terminal''' to get the '''YPlus '''value on the '''walls.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
Highlight''' Patch to 213.433'''&lt;br /&gt;
|| We can see that the '''YPlus''' value stays below 300. &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let us '''simulate''' the same problem using the k-omega''' turbulence model '''now'''.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: K-Omega turbulence model&lt;br /&gt;
|| '''k-omega '''is a '''two-equation model'''.&lt;br /&gt;
It solves-&lt;br /&gt;
* The '''turbulent kinetic energy''' '''transport equation''', and&lt;br /&gt;
* The '''specific''' '''turbulent dissipation rate transport equation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Inlet Boundary Condition - omega&lt;br /&gt;
|| Let's look at the '''boundary''' and '''initial conditions''' for '''omega.'''&lt;br /&gt;
We will use '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
It calculates '''omega''' using '''kappa '''and &lt;br /&gt;
user-specified '''mixing length. '''&lt;br /&gt;
'''Mixing length '''refers to the''' turbulent length scale.'''&lt;br /&gt;
'''Kappa''' value is automatically put in by the '''solver.'''&lt;br /&gt;
Here''', '''the value of''' turbulent length scale''' is '''0.07 m'''&lt;br /&gt;
The '''specific''' '''turbulent dissipation rate '''value is '''16.67 1/s'''&lt;br /&gt;
Where''' empirical constant, cmu '''is equal to '''0.09'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall &amp;amp; Outlet Boundary Condition - omega&lt;br /&gt;
|| '''Wall boundary condition''' is set to '''omegaWallFunction.'''&lt;br /&gt;
'''zeroGradient boundary condition''' is imposed at the '''outlet. '''&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komega '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komega .'''&lt;br /&gt;
|| Copy the downloaded file into '''Run directory.'''&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cd komega'''&lt;br /&gt;
|| Navigate to the '''komega''' directory using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s take a look at the '''specific''' '''turbulent dissipation rate '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''gedit 0/omega'''&lt;br /&gt;
|| Open the '''omega''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''internalField ... 16.67;'''&lt;br /&gt;
|| The '''internalField''' value is initialised as '''16.67'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega''']&lt;br /&gt;
Highlight''' type turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|| The '''inlet '''boundary '''type''' is set to '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' mixingLength 0.07;'''&lt;br /&gt;
|| The '''keyword''' '''mixingLength '''represents the '''Turbulent length scale''', and is set to '''0.07'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' value $internalField;'''&lt;br /&gt;
|| We have passed the '''internalField''' value to the '''patch field '''value.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Highlight '''zeroGradient'''&lt;br /&gt;
|| The '''outlet patch type''' is set to '''zeroGradient.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''omegaWallFunction'''&lt;br /&gt;
|| The '''wall patch type''' is set to '''omegaWallFunction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Close Text Editor&lt;br /&gt;
|| Close the '''omega''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulenceProperties''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' kOmega'''&lt;br /&gt;
|| '''kOmega '''is selected as the '''RASModel.'''&lt;br /&gt;
Note,''' O '''is capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' on'''&lt;br /&gt;
|| Ensure the '''keyword''' '''turbulence''' is set to '''On'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be '''run.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh '''to '''mesh '''the '''geometry.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Now, type the following '''command''' to '''run''' the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is over.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Now, let’s '''run''' the same '''case''' with the '''k-omegaSST''' '''turbulence model.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: K-omegaSST turbulence model&lt;br /&gt;
|| The''' K-omega SST turbulence model''' is a '''hybrid '''model.&lt;br /&gt;
In the '''near-wall '''region, '''K-omegaSST''' uses the '''K-omega turbulence model.'''&lt;br /&gt;
&lt;br /&gt;
In the region away from the '''wall''', it switches to the '''K-epsilon''' '''turbulence model'''.&lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komegasst '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komegasst .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory.'''&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd komegasst'''&lt;br /&gt;
|| Navigate to the '''komegasst '''directory using the '''cd command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| '''komega''' and '''komegasst models''' use the same''' turbulence variables'''.&lt;br /&gt;
Hence, the files in the '''0''' directory are the same.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulence''' properties file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Highlight '''kOmegaSST'''&lt;br /&gt;
|| '''RASModel field''' entry is set to '''kOmegaSST.'''&lt;br /&gt;
Note,''' O''' and''' SST''' are capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/fvSchemes'''&lt;br /&gt;
|| Open '''fvSchemes dictionary''' in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Scroll down to the end of the document.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes''']&lt;br /&gt;
Highlight '''wallDist ... ;}'''&lt;br /&gt;
|| '''wallDist sub-dictionary''' is included in the '''fvSchemes dictionary'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This enables the calculation of the '''distance '''between the '''cell centre''' and the nearest '''wall.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes'''] Close Text Editor&lt;br /&gt;
|| Close the '''fvSchemes''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The setup is now ready. &lt;br /&gt;
Let us '''run''' the '''simulation.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| '''Mesh''' the '''geometry''' using the '''blockMesh command '''on the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Type '''simpleFoam''' in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The '''simulation''' is finished successfully.&lt;br /&gt;
|-&lt;br /&gt;
|| Show slide&lt;br /&gt;
Exit velocity profile - comparison&lt;br /&gt;
|| The slide shows the''' exit velocity''' '''profile''' for all three '''turbulence models'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this, we have come to the end of the tutorial.&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
* Set up the '''blockMeshDict''' file for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega '''and''' k-omega SST turbulence models'''&lt;br /&gt;
* '''Run''' the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Repeat the '''simulation''' for a '''YPlus''' value of '''250 '''using '''k-epsilon''' '''model'''&lt;br /&gt;
* Repeat the''' simulation '''for a '''velocity''' of '''40 m/s''' using '''k-omega''' and '''k-omega SST model'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
The script for this tutorial is contributed by Padmini.&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English"/>
				<updated>2020-07-25T12:40:21Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Turbulence Modelling in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Padmini Priyadarshini&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Turbulence, YPlus, K-Omega, K-OmegaSST, Paraview, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Turbulence Modelling in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn how to,&lt;br /&gt;
* Set up the '''blockMeshDict''' dictionary for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega''' and '''k-omega SST''' '''turbulence models'''&lt;br /&gt;
* '''Run '''the '''simulation'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Linux Mint OS''' version 18.3&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit Text Editor'''&lt;br /&gt;
However, you may use any other '''text editor''' of your choice.&lt;br /&gt;
The steps explained in this tutorial are identical in '''Ubuntu Linux OS'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should have basic knowledge of '''geometric progression'''&lt;br /&gt;
* You should be familiar with '''simulating''' a''' turbulent flow''' through a''' channel '''and&lt;br /&gt;
* You should also be familiar with '''Multi-block Meshing of 2D Geometry'''&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM''' tutorial on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| We will use the '''simpleFoam solver''' to '''simulate '''this problem.&lt;br /&gt;
'''simpleFoam''' is a '''steady-state solver''' for '''incompressible''', '''turbulent flow'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Problem statement&lt;br /&gt;
|| The diagram shows a''' 2D channel '''of length '''65 m '''and width '''1 m'''.&lt;br /&gt;
The '''kinematic viscosity''' is '''1e-05 m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;/s.'''&lt;br /&gt;
The '''Inlet velocity '''is '''20 m/s. '''&lt;br /&gt;
'''Outlet pressure '''is set to '''0 atmosphere.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Flow Properties&lt;br /&gt;
|| '''Reynolds' number''' is '''2 million'''.&lt;br /&gt;
The flow is '''turbulent.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| First, We will use''' k-epsilon turbulence model '''to '''simulate''' this '''case'''.&lt;br /&gt;
Let us set up the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''kepsilon''' folder provided in the '''code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl''', '''Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here onwards, please remember to press the '''Enter''' key after typing each '''command''' in the '''terminal'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd $FOAM_RUN '''&lt;br /&gt;
|| Open the '''Run directory '''by typing this '''command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] &lt;br /&gt;
Type: '''cp -r ~/Downloads/kepsilon .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory'''.&lt;br /&gt;
To do that, type the following '''command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| I have downloaded the file into the '''Downloads directory.'''&lt;br /&gt;
Please change the '''command''' according to the '''file path''' on your machine.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd kepsilon'''&lt;br /&gt;
|| Navigate to the '''kepsilon directory.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/blockMeshDict'''&lt;br /&gt;
|| Open the '''blockMeshDict '''file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight '''blocks'''&lt;br /&gt;
|| Scroll down to the '''keyword “blocks”.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''hex .... (1 0.18 1);'''&lt;br /&gt;
|| The '''domain''' has two equal-sized '''blocks.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''75''' '''30'''&lt;br /&gt;
|| For each '''block''', the '''cell number''' is set to '''75 '''in the '''x-direction''', and '''30''' in the '''y-direction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall distance, yp&lt;br /&gt;
|| Let “'''yp'''” be the distance between the '''wall''' and the nearest '''cell centre'''.&lt;br /&gt;
For our '''case, yp''' is '''0.0031''' for '''YPlus''' value of '''200'''.&lt;br /&gt;
For''' channel flow''', the '''skin friction coefficient, Cf,''' is given by this formula.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Cell width&lt;br /&gt;
|| The width of the''' cell '''near the '''wall''' is '''0.0062.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio&lt;br /&gt;
|| The '''expansion ratio''' is the ratio of the last '''cell width''' to the first '''cell width.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio calculation&lt;br /&gt;
|| It is calculated using '''geometric progression''' formula. &lt;br /&gt;
Please refer to the '''Additional Reading Material''' for more details.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio value&lt;br /&gt;
|| The '''expansion ratio''' in the '''+y direction''' is found to be &lt;br /&gt;
* '''5.57 '''for '''block 1,''' and &lt;br /&gt;
* '''0.18 '''for''' block 2'''&lt;br /&gt;
for a '''block''' of width of '''0.5 m''' and '''cell number 30.'''&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| I have already put these values into the '''blockMeshDict''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight''' simpleGrading'''&lt;br /&gt;
|| '''simpleGrading''' describes the uniform '''expansion ratio '''in '''x, y''', and''' z-directions.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| For our '''case''', the''' expansion ratio''' in the '''y-direction''' is&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''5.57'''&lt;br /&gt;
|| '''5.57 '''for '''block 1'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.18'''&lt;br /&gt;
|| '''0.18''' for '''block 2'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Close Text Editor&lt;br /&gt;
|| Close the '''blockMeshDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be''' run. '''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh''' to '''mesh''' the '''geometry'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam'''&lt;br /&gt;
|| Then type '''simpleFoam''' in the '''terminal '''to '''run '''the '''simulation'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''simulation '''will take some '''time''' depending on your computer’s '''hardware'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is complete.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let's check the final value of '''YPlus.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam -postProcess -func &amp;quot;yPlus&amp;quot; -latestTime'''&lt;br /&gt;
|| Now type the following '''command''' on the '''terminal''' to get the '''YPlus '''value on the '''walls.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
Highlight''' Patch to 213.433'''&lt;br /&gt;
|| We can see that the '''YPlus''' value stays below 300. &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let us '''simulate''' the same problem using the k-omega''' turbulence model '''now'''.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: K-Omega turbulence model&lt;br /&gt;
|| '''k-omega '''is a '''two-equation model'''.&lt;br /&gt;
It solves-&lt;br /&gt;
* The '''turbulent kinetic energy''' '''transport equation''', and&lt;br /&gt;
* The '''specific''' '''turbulent dissipation rate transport equation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Inlet Boundary Condition - omega&lt;br /&gt;
|| Let's look at the '''boundary''' and '''initial conditions''' for '''omega.'''&lt;br /&gt;
We will use '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
It calculates '''omega''' using '''kappa '''and &lt;br /&gt;
user-specified '''mixing length. '''&lt;br /&gt;
'''Mixing length '''refers to the''' turbulent length scale.'''&lt;br /&gt;
'''Kappa''' value is automatically put in by the '''solver.'''&lt;br /&gt;
Here''', '''the value of''' turbulent length scale''' is '''0.07 m'''&lt;br /&gt;
The '''specific''' '''turbulent dissipation rate '''value is '''16.67 1/s'''&lt;br /&gt;
Where''' empirical constant, cmu '''is equal to '''0.09'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall &amp;amp; Outlet Boundary Condition - omega&lt;br /&gt;
|| '''Wall boundary condition''' is set to '''omegaWallFunction.'''&lt;br /&gt;
'''zeroGradient boundary condition''' is imposed at the '''outlet. '''&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komega '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komega .'''&lt;br /&gt;
|| Copy the downloaded file into '''Run directory.'''&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cd komega'''&lt;br /&gt;
|| Navigate to the '''komega''' directory using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s take a look at the '''specific''' '''turbulent dissipation rate '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''gedit 0/omega'''&lt;br /&gt;
|| Open the '''omega''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''internalField ... 16.67;'''&lt;br /&gt;
|| The '''internalField''' value is initialised as '''16.67'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega''']&lt;br /&gt;
Highlight''' type turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|| The '''inlet '''boundary '''type''' is set to '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' mixingLength 0.07;'''&lt;br /&gt;
|| The '''keyword''' '''mixingLength '''represents the '''Turbulent length scale''', and is set to '''0.07'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' value $internalField;'''&lt;br /&gt;
|| We have passed the '''internalField''' value to the '''patch field '''value.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Highlight '''zeroGradient'''&lt;br /&gt;
|| The '''outlet patch type''' is set to '''zeroGradient.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''omegaWallFunction'''&lt;br /&gt;
|| The '''wall patch type''' is set to '''omegaWallFunction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Close Text Editor&lt;br /&gt;
|| Close the '''omega''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulenceProperties''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' kOmega'''&lt;br /&gt;
|| '''kOmega '''is selected as the '''RASModel.'''&lt;br /&gt;
Note,''' O '''is capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' on'''&lt;br /&gt;
|| Ensure the '''keyword''' '''turbulence''' is set to '''On'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be '''run.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh '''to '''mesh '''the '''geometry.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Now, type the following '''command''' to '''run''' the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is over.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Now, let’s '''run''' the same '''case''' with the '''k-omegaSST''' '''turbulence model.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: K-omegaSST turbulence model&lt;br /&gt;
|| The''' K-omega SST turbulence model''' is a '''hybrid '''model.&lt;br /&gt;
In the '''near-wall '''region, '''K-omegaSST''' uses the '''K-omega turbulence model.'''&lt;br /&gt;
&lt;br /&gt;
In the region away from the '''wall''', it switches to the '''K-epsilon''' '''turbulence model'''.&lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komegasst '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komegasst .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory.'''&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd komegasst'''&lt;br /&gt;
|| Navigate to the '''komegasst '''directory using the '''cd command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| '''komega''' and '''komegasst models''' use the same''' turbulence variables'''.&lt;br /&gt;
Hence, the files in the '''0''' directory are the same.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulence''' properties file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Highlight '''kOmegaSST'''&lt;br /&gt;
|| '''RASModel field''' entry is set to '''kOmegaSST.'''&lt;br /&gt;
Note,''' O''' and''' SST''' are capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/fvSchemes'''&lt;br /&gt;
|| Open '''fvSchemes dictionary''' in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Scroll down to the end of the document.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes''']&lt;br /&gt;
Highlight '''wallDist ... ;}'''&lt;br /&gt;
|| '''wallDist sub-dictionary''' is included in the '''fvSchemes dictionary'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This enables the calculation of the '''distance '''between the '''cell centre''' and the nearest '''wall.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes'''] Close Text Editor&lt;br /&gt;
|| Close the '''fvSchemes''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The setup is now ready. &lt;br /&gt;
Let us '''run''' the '''simulation.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| '''Mesh''' the '''geometry''' using the '''blockMesh command '''on the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Type '''simpleFoam''' in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The '''simulation''' is finished successfully.&lt;br /&gt;
|-&lt;br /&gt;
|| Show slide&lt;br /&gt;
Exit velocity profile - comparison&lt;br /&gt;
|| The slide shows the''' exit velocity''' '''profile''' for all three '''turbulence models'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this, we have come to the end of the tutorial.&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
* Set up the '''blockMeshDict''' file for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega '''and''' k-omega SST turbulence models'''&lt;br /&gt;
* '''Run''' the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Repeat the '''simulation''' for a '''YPlus''' value of '''250 '''using '''k-epsilon''' '''model'''&lt;br /&gt;
* Repeat the''' simulation '''for a '''velocity''' of '''40 m/s''' using '''k-omega''' and '''k-omega SST model'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
The script for this tutorial is contributed by Padmini.&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Turbulence-Modelling-in-OpenFOAM/English"/>
				<updated>2020-07-25T07:35:16Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: Created page with &amp;quot;'''Title of the script:''' Turbulence Modelling in OpenFOAM  '''Author:''' Padmini Priyadarshini  '''Keywords:''' OpenFOAM, Turbulence, YPlus, K-Omega, K-OmegaSST, Paraview, V...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Turbulence Modelling in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Padmini Priyadarshini&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Turbulence, YPlus, K-Omega, K-OmegaSST, Paraview, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Turbulence Modelling in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn how to,&lt;br /&gt;
* Set up the '''blockMeshDict''' dictionary for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega''' and '''k-omega SST''' '''turbulence models'''&lt;br /&gt;
* '''Run '''the '''simulation'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Linux Mint OS''' version 18.3&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit Text Editor'''&lt;br /&gt;
However, you may use any other '''text editor''' of your choice.&lt;br /&gt;
The steps explained in this tutorial are identical in '''Ubuntu Linux OS'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should have basic knowledge of '''geometric progression'''&lt;br /&gt;
* You should be familiar with '''simulating''' a''' turbulent flow''' through a''' channel '''and&lt;br /&gt;
* You should also be familiar with '''Multi-block Meshing of 2D Geometry'''&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM''' tutorial on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| We will use the '''simpleFoam solver''' to '''simulate '''this problem.&lt;br /&gt;
'''simpleFoam''' is a '''steady-state solver''' for '''incompressible''', '''turbulent flow'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Problem statement&lt;br /&gt;
|| The diagram shows a''' 2D channel '''of length '''65 m '''and width '''1 m'''.&lt;br /&gt;
The '''kinematic viscosity''' is '''1e-05 m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;/s.'''&lt;br /&gt;
The '''Inlet velocity '''is '''20 m/s. '''&lt;br /&gt;
'''Outlet pressure '''is set to '''0 atmosphere.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Flow Properties&lt;br /&gt;
|| '''Reynolds' number''' is '''2 million'''.&lt;br /&gt;
The flow is '''turbulent.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| First, We will use''' k-epsilon turbulence model '''to '''simulate''' this '''case'''.&lt;br /&gt;
Let us set up the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''kepsilon''' folder provided in the '''code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl''', '''Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here onwards, please remember to press the '''Enter''' key after typing each '''command''' in the '''terminal'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd $FOAM_RUN '''&lt;br /&gt;
|| Open the '''Run directory '''by typing this '''command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] &lt;br /&gt;
Type: '''cp -r ~/Downloads/kepsilon .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory'''.&lt;br /&gt;
To do that, type the following '''command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| I have downloaded the file into the '''Downloads directory.'''&lt;br /&gt;
Please change the '''command''' according to the '''file path''' on your machine.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd kepsilon'''&lt;br /&gt;
|| Navigate to the '''kepsilon directory.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/blockMeshDict'''&lt;br /&gt;
|| Open the '''blockMeshDict '''file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight '''blocks'''&lt;br /&gt;
|| Scroll down to the '''keyword “blocks”.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''hex .... (1 0.18 1);'''&lt;br /&gt;
|| The '''domain''' has two equal-sized '''blocks.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''75''' '''30'''&lt;br /&gt;
|| For each '''block''', the '''cell number''' is set to '''75 '''in the '''x-direction''', and '''30''' in the '''y-direction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall distance, yp&lt;br /&gt;
|| Let “'''yp'''” be the distance between the '''wall''' and the nearest '''cell centre'''.&lt;br /&gt;
For our '''case, yp''' is '''0.0031''' for '''YPlus''' value of '''200'''.&lt;br /&gt;
For''' channel flow''', the '''skin friction coefficient, Cf,''' is given by this formula.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Cell width&lt;br /&gt;
|| The width of the''' cell '''near the '''wall''' is '''0.0062.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio&lt;br /&gt;
|| The '''expansion ratio''' is the ratio of the last '''cell width''' to the first '''cell width.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio calculation&lt;br /&gt;
|| It is calculated using '''geometric progression''' formula. &lt;br /&gt;
Please refer to the '''Additional Reading Material''' for more details.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Expansion ratio value&lt;br /&gt;
|| The '''expansion ratio''' in the '''+y direction''' is found to be &lt;br /&gt;
* '''5.57 '''for '''block 1,''' and &lt;br /&gt;
* '''0.18 '''for''' block 2'''&lt;br /&gt;
for a '''block''' of width of '''0.5 m''' and '''cell number 30.'''&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| I have already put these values into the '''blockMeshDict''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -blockMeshDict]&lt;br /&gt;
Highlight''' simpleGrading'''&lt;br /&gt;
|| '''simpleGrading''' describes the uniform '''expansion ratio '''in '''x, y''', and''' z-directions.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| For our '''case''', the''' expansion ratio''' in the '''y-direction''' is&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
Highlight '''5.57'''&lt;br /&gt;
|| '''5.57 '''for '''block 1'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''blockMeshDict''']&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.18'''&lt;br /&gt;
|| '''0.18''' for '''block 2'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Close Text Editor&lt;br /&gt;
|| Close the '''blockMeshDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be''' run. '''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh''' to '''mesh''' the '''geometry'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam'''&lt;br /&gt;
|| Then type '''simpleFoam''' in the '''terminal '''to '''run '''the '''simulation'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''simulation '''will take some '''time''' depending on your computer’s '''hardware'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is complete.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let's check the final value of '''YPlus.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''simpleFoam -postProcess -func &amp;quot;yPlus&amp;quot; -latestTime'''&lt;br /&gt;
|| Now type the following '''command''' on the '''terminal''' to get the '''YPlus '''value on the '''walls.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
Highlight''' Patch to 213.433'''&lt;br /&gt;
|| We can see that the '''YPlus''' value stays below 300. &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Let us '''simulate''' the same problem using the k-omega''' turbulence model '''now'''.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: K-Omega turbulence model&lt;br /&gt;
|| '''k-omega '''is a '''two-equation model'''.&lt;br /&gt;
It solves-&lt;br /&gt;
* The '''turbulent kinetic energy''' '''transport equation''', and&lt;br /&gt;
* The '''specific''' '''turbulent dissipation rate transport equation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Inlet Boundary Condition - omega&lt;br /&gt;
|| Let's look at the '''boundary''' and '''initial conditions''' for '''omega.'''&lt;br /&gt;
We will use '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
It calculates '''omega''' using '''kappa '''and &lt;br /&gt;
user-specified '''mixing length. '''&lt;br /&gt;
'''Mixing length '''refers to the''' turbulent length scale.'''&lt;br /&gt;
'''Kappa''' value is automatically put in by the '''solver.'''&lt;br /&gt;
Here''', '''the value of''' turbulent length scale''' is '''0.07 m'''&lt;br /&gt;
The '''specific''' '''turbulent dissipation rate '''value is '''16.67 1/s'''&lt;br /&gt;
Where''' empirical constant, cmu '''is equal to '''0.009'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall &amp;amp; Outlet Boundary Condition - omega&lt;br /&gt;
|| '''Wall boundary condition''' is set to '''omegaWallFunction.'''&lt;br /&gt;
'''zeroGradient boundary condition''' is imposed at the '''outlet. '''&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komega '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komega .'''&lt;br /&gt;
|| Copy the downloaded file into '''Run directory.'''&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cd komega'''&lt;br /&gt;
|| Navigate to the '''komega''' directory using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s take a look at the '''specific''' '''turbulent dissipation rate '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''gedit 0/omega'''&lt;br /&gt;
|| Open the '''omega''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''internalField ... 16.67;'''&lt;br /&gt;
|| The '''internalField''' value is initialised as '''16.67'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega''']&lt;br /&gt;
Highlight''' type turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|| The '''inlet '''boundary '''type''' is set to '''turbulentMixingLengthFrequencyInlet'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' mixingLength 0.07;'''&lt;br /&gt;
|| The '''keyword''' '''mixingLength '''represents the '''Turbulent length scale''', and is set to '''0.07'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight''' value $internalField;'''&lt;br /&gt;
|| We have passed the '''internalField''' value to the '''patch field '''value.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Highlight '''zeroGradient'''&lt;br /&gt;
|| The '''outlet patch type''' is set to '''zeroGradient.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] &lt;br /&gt;
Highlight '''omegaWallFunction'''&lt;br /&gt;
|| The '''wall patch type''' is set to '''omegaWallFunction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''omega'''] Close Text Editor&lt;br /&gt;
|| Close the '''omega''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulenceProperties''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' kOmega'''&lt;br /&gt;
|| '''kOmega '''is selected as the '''RASModel.'''&lt;br /&gt;
Note,''' O '''is capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties'''] &lt;br /&gt;
Highlight''' on'''&lt;br /&gt;
|| Ensure the '''keyword''' '''turbulence''' is set to '''On'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties '''file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The '''case''' is now ready to be '''run.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| On the '''terminal''', type '''blockMesh '''to '''mesh '''the '''geometry.''' &lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Now, type the following '''command''' to '''run''' the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The''' simulation''' is over.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd ..'''&lt;br /&gt;
|| Let us go back to the '''Run directory''' using the '''cd command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Now, let’s '''run''' the same '''case''' with the '''k-omegaSST''' '''turbulence model.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: K-omegaSST turbulence model&lt;br /&gt;
|| The''' K-omega SST turbulence model''' is a '''hybrid '''model.&lt;br /&gt;
In the '''near-wall '''region, '''K-omegaSST''' uses the '''K-omega turbulence model.'''&lt;br /&gt;
&lt;br /&gt;
In the region away from the '''wall''', it switches to the '''K-epsilon''' '''turbulence model'''.&lt;br /&gt;
&lt;br /&gt;
Please refer to the '''Additional Reading Material''' on this tutorial page for details.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| Download the '''komegasst '''folder provided in the '''Code files''' link and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''cp -r ~/Downloads/komegasst .'''&lt;br /&gt;
|| Copy the downloaded file into the '''Run directory.'''&lt;br /&gt;
To do that, type the following '''command '''in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''cd komegasst'''&lt;br /&gt;
|| Navigate to the '''komegasst '''directory using the '''cd command.''' &lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| '''komega''' and '''komegasst models''' use the same''' turbulence variables'''.&lt;br /&gt;
Hence, the files in the '''0''' directory are the same.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit constant/turbulenceProperties'''&lt;br /&gt;
|| Open the '''turbulence''' properties file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Highlight '''kOmegaSST'''&lt;br /&gt;
|| '''RASModel field''' entry is set to '''kOmegaSST.'''&lt;br /&gt;
Note,''' O''' and''' SST''' are capitalized here.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''turbulenceProperties''']&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''turbulenceProperties''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
'''gedit system/fvSchemes'''&lt;br /&gt;
|| Open '''fvSchemes dictionary''' in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Scroll down to the end of the document.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes''']&lt;br /&gt;
Highlight '''wallDist ... ;}'''&lt;br /&gt;
|| '''wallDist sub-dictionary''' is included in the '''fvSchemes dictionary'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This enables the calculation of the '''distance '''between the '''cell centre''' and the nearest '''wall.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''fvSchemes'''] Close Text Editor&lt;br /&gt;
|| Close the '''fvSchemes''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| The setup is now ready. &lt;br /&gt;
Let us '''run''' the '''simulation.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''blockMesh'''&lt;br /&gt;
|| '''Mesh''' the '''geometry''' using the '''blockMesh command '''on the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: '''simpleFoam'''&lt;br /&gt;
|| Type '''simpleFoam''' in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Highlight''' End'''&lt;br /&gt;
|| The '''simulation''' is finished successfully.&lt;br /&gt;
|-&lt;br /&gt;
|| Show slide&lt;br /&gt;
Exit velocity profile - comparison&lt;br /&gt;
|| The slide shows the''' exit velocity''' '''profile''' for all three '''turbulence models'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this, we have come to the end of the tutorial.&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
* Set up the '''blockMeshDict''' file for a given '''YPlus''' value&lt;br /&gt;
* Implement '''k-omega '''and''' k-omega SST turbulence models'''&lt;br /&gt;
* '''Run''' the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Repeat the '''simulation''' for a '''YPlus''' value of '''250 '''using '''k-epsilon''' '''model'''&lt;br /&gt;
* Repeat the''' simulation '''for a '''velocity''' of '''40 m/s''' using '''k-omega''' and '''k-omega SST model'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
The script for this tutorial is contributed by Padmini.&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulation-a-2D-Turbulent-Flow-in-a-Channel-using-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulation-a-2D-Turbulent-Flow-in-a-Channel-using-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulation-a-2D-Turbulent-Flow-in-a-Channel-using-OpenFOAM/English"/>
				<updated>2020-07-23T07:12:04Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: Created page with &amp;quot;'''Title of the script:''' Simulation of a Turbulent Flow in a 2D Channel using OpenFOAM  '''Author:''' Padmini Priyadarshini  '''Keywords:''' OpenFOAM, Turbulence, K-Epsilon,...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulation of a Turbulent Flow in a 2D Channel using OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Padmini Priyadarshini&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Turbulence, K-Epsilon, Paraview, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulation of Turbulent Flow in a 2D Channel using OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn how to:&lt;br /&gt;
* Implement '''k-epsilon model'''&lt;br /&gt;
* Set up '''turbulence''' '''parameters'''&lt;br /&gt;
* '''Run '''the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Linux Mint OS''' version 18.3&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit Text Editor'''&lt;br /&gt;
&lt;br /&gt;
However, you may use any other '''text editor''' of your choice.&lt;br /&gt;
&lt;br /&gt;
The steps explained in this tutorial are identical in '''Ubuntu Linux OS'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should have basic knowledge of '''turbulent flows''' and '''fluid dynamics'''.&lt;br /&gt;
* You should also be familiar with '''simulating '''a''' flow''' through a''' pipe''' in '''OpenFOAM'''.&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM''' tutorial on this website&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| We will use the '''simpleFoam solver''' to '''simulate''' this problem.&lt;br /&gt;
&lt;br /&gt;
'''simpleFoam''' is a '''steady-state solver''' for '''incompressible''', '''turbulent flow'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Problem statement&lt;br /&gt;
|| The diagram shows a''' 2D channel '''of '''length''' '''65 m '''and '''width 1 m'''.&lt;br /&gt;
&lt;br /&gt;
The '''kinematic viscosity''' is '''1e-05 m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;/s.'''&lt;br /&gt;
&lt;br /&gt;
The '''Inlet velocity '''is '''20 m/s. '''&lt;br /&gt;
&lt;br /&gt;
'''Outlet pressure '''is set to '''0 atmosphere.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Flow Properties&lt;br /&gt;
|| '''Reynolds number''' is '''2 million'''.&lt;br /&gt;
&lt;br /&gt;
And the '''flow''' is '''turbulent.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: K-Epsilon turbulence model&lt;br /&gt;
|| '''K-epsilon '''is a widely used '''RAS''' '''turbulence model.'''&lt;br /&gt;
&lt;br /&gt;
It is a '''two-equation model'''.&lt;br /&gt;
&lt;br /&gt;
It solves:&lt;br /&gt;
* The '''turbulent kinetic energy''' '''transport equation''', and&lt;br /&gt;
* The '''turbulent dissipation rate transport''' '''equation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let us set up the '''case.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Download the '''kepsilon '''folder provided in the '''Code file''' and extract it.&lt;br /&gt;
|-&lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl''', '''Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command '''in the''' Terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| Let us''' '''open the '''Run directory'''.&lt;br /&gt;
&lt;br /&gt;
To do so, type the following '''command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cp -r ~/Downloads/kepsilon .'''&lt;br /&gt;
|| and copy the downloaded file into the run directory.&lt;br /&gt;
&lt;br /&gt;
To do so, type the following '''command.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration &lt;br /&gt;
|| I have downloaded the file into my '''Downloads directory.'''&lt;br /&gt;
&lt;br /&gt;
Please change the '''path''' as per your machine.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd kepsilon'''&lt;br /&gt;
|| With this command, we will navigate to the '''kepsilon''' directory.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Y plus&lt;br /&gt;
|| '''YPlus '''is the '''dimensionless wall distance.'''&lt;br /&gt;
&lt;br /&gt;
For '''wall function''' '''approach,''' '''yplus''' value should be between '''30 '''and '''300.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall distance, yp&lt;br /&gt;
|| Let “'''yp'''” be the distance between the '''wall''' and the nearest '''cell centre.'''&lt;br /&gt;
&lt;br /&gt;
For our '''case''', '''yp''' is '''0.00155''' for a '''yplus''' value of '''100.'''&lt;br /&gt;
&lt;br /&gt;
For '''channel flow, '''the''' skin friction coefficient, Cf''' is given by this formula.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''ls system'''&lt;br /&gt;
|| Type''' '''the following''' command''' view the content of the '''system''' directory.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] &lt;br /&gt;
&lt;br /&gt;
Highlight '''blockMeshDict'''&lt;br /&gt;
|| This directory contains the '''blockMeshDict''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| I have already set up the '''blockMesh''' file for a '''2D multi-block channel '''with this''' yp value'''.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let us take a look at the''' initial''' and '''boundary conditions''' of the '''flow variables.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Inlet Boundary Condition - k&lt;br /&gt;
|| Let us take a look at the '''inlet boundary condition '''for '''kappa.'''&lt;br /&gt;
&lt;br /&gt;
We will use '''turbulentIntensityKineticEnergyInlet '''&lt;br /&gt;
&lt;br /&gt;
This calculates''' kappa '''using the user-specified '''turbulence intensity'''.&lt;br /&gt;
&lt;br /&gt;
For our '''case, turbulent intensity''' is '''0.00261 '''and '''Turbulent kinetic energy''' is '''0.41 m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;/s&amp;lt;sup&amp;gt;2'''&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Inlet Boundary Condition - epsilon&lt;br /&gt;
&lt;br /&gt;
|| Let us take a look at the '''inlet boundary condition '''for '''epsilon.'''&lt;br /&gt;
&lt;br /&gt;
We will use '''turbulentMixingLengthDissipationRateInlet '''&lt;br /&gt;
&lt;br /&gt;
This calculates '''epsilon''' using '''kappa '''and &lt;br /&gt;
&lt;br /&gt;
user-specified '''mixingLength'''.&lt;br /&gt;
&lt;br /&gt;
'''mixingLength '''refers to the''' turbulent length scale.'''&lt;br /&gt;
&lt;br /&gt;
'''Kappa''' value is automatically put in by the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
Here''', '''the''' turbulent length scale''' is '''0.07 m'''.&lt;br /&gt;
&lt;br /&gt;
And, the value of the '''turbulent dissipation rate''' is '''0.61 m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;/s&amp;lt;sup&amp;gt;3'''&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Wall Boundary Condition &lt;br /&gt;
|| Next, let us take a look at the wall '''boundary conditions '''to be''' '''used. &lt;br /&gt;
&lt;br /&gt;
* '''turbulent kinetic energy '''is set to '''kqRWallFunction '''&lt;br /&gt;
&lt;br /&gt;
* '''turbulent dissipation i'''s set to '''epsilonWallFunction'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Outlet Boundary Condition &lt;br /&gt;
|| This slide shows the '''outlet boundary condition.'''&lt;br /&gt;
&lt;br /&gt;
'''zeroGradient boundary condition''' is imposed at the '''outlet '''for both parameters.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Kinematic eddy viscosity, nut&lt;br /&gt;
|| '''Kinematic eddy viscosity''' is a dependent '''variable'''.&lt;br /&gt;
&lt;br /&gt;
Hence, its value is calculated by the''' solver'''.&lt;br /&gt;
&lt;br /&gt;
At the '''wall, nutWallFunction''' is used.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let us take a look at the '''boundary''' and '''initial conditions''' for '''turbulent kinetic energy'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''gedit 0/k'''&lt;br /&gt;
|| Open the '''k''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''internalField .. 0.41;'''&lt;br /&gt;
|| The''' internalField''' is initialised as '''0.41'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight''' type turbulentIntensityKineticEnergyInlet'''&lt;br /&gt;
|| The''' inlet boundary type''' is set to '''turbulentIntensityKineticEnergyInlet'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight''' intensity 0.00261;'''&lt;br /&gt;
|| The '''keyword intensity '''represents the '''turbulent intensity''', and is set to '''0.00261'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight''' value $internalField;'''&lt;br /&gt;
|| We have passed the '''internalField''' value to the '''patch field''' value.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''zeroGradient;'''&lt;br /&gt;
|| '''outlet''' is set to '''zeroGradient.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''kqRWallFunction'''&lt;br /&gt;
|| The '''patch''' type for both walls are set to '''kqRWallFunction'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''value $internalField; '''&lt;br /&gt;
|| The''' internalField''' value is passed to the '''patch field '''value'''.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''k'''] &lt;br /&gt;
&lt;br /&gt;
Highlight''' type empty;'''&lt;br /&gt;
|| The '''frontAndBack patch '''is set as '''empty.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - '''k'''] &lt;br /&gt;
&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''k''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s take a look at the '''epsilon''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''gedit 0/epsilon'''&lt;br /&gt;
|| Open the '''epsilon''' file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''epsilon'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''0.61'''&lt;br /&gt;
|| The '''internalField '''value is initialized to '''0.61'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''epsilon'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''turbulentMixingLengthDissipationRateInlet'''&lt;br /&gt;
|| The '''inlet''' type is defined as '''turbulentMixingLengthDissipationRateInlet'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''epsilon'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''0.07'''&lt;br /&gt;
|| The field''' mixingLength''' is set to '''0.07'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''epsilon'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''$internalField'''&lt;br /&gt;
|| The '''internalField''' value is passed to the '''patch field '''value'''.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''epsilon'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''zeroGradient.'''&lt;br /&gt;
|| The '''outlet patch''' is defined as '''zeroGradient.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''epsilon'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''epsilonWallFunction'''.&lt;br /&gt;
|| The '''wall patch type '''is set to '''epsilonWallFunction.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - e'''psilon'''] &lt;br /&gt;
&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''epsilon''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''gedit 0/nut'''&lt;br /&gt;
|| Now, let’s open the '''nut '''file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''nut'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''calculated'''&lt;br /&gt;
|| The '''inlet''' and '''outlet patches''' are set to '''calculated.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''nut'''] &lt;br /&gt;
&lt;br /&gt;
Highlight '''type nutkWallFunction;'''&lt;br /&gt;
|| The '''wall patch type '''is set as '''nutkWallFunction'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit - '''nut'''] &lt;br /&gt;
&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''nut''' file.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Next, open the '''velocity '''file in a '''text editor.'''&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''U'''] &lt;br /&gt;
&lt;br /&gt;
Highlight''' (20 0 0)'''&lt;br /&gt;
|| The '''inlet patch''' is given a fixed value of '''20 '''along the axis.&lt;br /&gt;
|-&lt;br /&gt;
|| [gedit -'''U'''] &lt;br /&gt;
&lt;br /&gt;
Highlight''' zeroGradient'''&lt;br /&gt;
|| The '''outlet patch''' is set to '''zeroGradient.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit -'''U]''' &lt;br /&gt;
&lt;br /&gt;
Close Text Editor&lt;br /&gt;
|| Close the '''U''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The '''case '''is ready to be '''run. '''&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''blockMesh'''&lt;br /&gt;
|| Type '''blockMesh''' to '''mesh''' the '''geometry'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] Type: &lt;br /&gt;
&lt;br /&gt;
'''simpleFoam'''&lt;br /&gt;
|| Type '''simpleFoam''' in the '''terminal.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The '''simulation''' will take some time depending on your computer’s '''hardware'''.&lt;br /&gt;
|-&lt;br /&gt;
|| [Terminal] &lt;br /&gt;
&lt;br /&gt;
Highlight''' “End”'''&lt;br /&gt;
|| The word '''End''' indicates that the '''simulatio'''n has finished successfully.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Outlet Velocity Profile &lt;br /&gt;
|| The slide shows the '''velocity profile''' at the '''channel exit.'''&lt;br /&gt;
|-&lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we learnt to,&lt;br /&gt;
* Implement '''k-epsilon turbulence model'''&lt;br /&gt;
* Set up the''' initial '''and '''boundary conditions''' for''' turbulence parameters'''&lt;br /&gt;
* '''Run''' the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Change the '''inlet boundary condition''' for '''kappa '''and''' epsilon''' to''' fixedValue'''&lt;br /&gt;
* Repeat the '''simulation''' for a '''velocity '''value of '''40 m/s''', change '''kappa '''and '''epsilon''' accordingly&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Padmini.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English</id>
		<title>OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English"/>
				<updated>2020-07-23T04:55:35Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Basic Post Processing using ParaView&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Paraview, Clip, Streamline, Glyph, Plot-over-line, Parabolic profile, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Hello and welcome to this tutorial on '''Basic Post Processing using ParaView.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn,&lt;br /&gt;
* Some basic '''visualization techniques''' in '''ParaView'''&lt;br /&gt;
* Export the''' field data '''to '''.csv''' file&lt;br /&gt;
* Plot a''' graph''' in '''LibreOffice Suite Calc '''and&lt;br /&gt;
* Save a screenshot of a '''view'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''LibreOffice Suite''' 6.4&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites* Please go through these two tutorials on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite learner should practise,&lt;br /&gt;
* On '''Simulating Hagen Poiseuille Flow through a Pipe''' from the '''OpenFOAM '''tutorials and&lt;br /&gt;
* Tutorial on '''Using Charts and Graphs''' from '''LibreOffice Suite Calc'''&lt;br /&gt;
* Please go through these two tutorials on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case '''folder.&lt;br /&gt;
&lt;br /&gt;
We have created this in the''' “Simulating Hagen Poiseuille Flow through Pipe” '''tutorial.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''paraFoam'''&lt;br /&gt;
|| Type '''paraFoam''' in the '''terminal''' to open the '''case''' file in '''paraView'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck &amp;gt;&amp;gt; inlet and outlet'''&lt;br /&gt;
|| Go to the '''properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Scroll down and locate the '''mesh parts''' section.&lt;br /&gt;
&lt;br /&gt;
Uncheck all '''patches''' other than '''internalMesh'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Solid Color &amp;gt;&amp;gt; Click on U'''&lt;br /&gt;
|| Click on '''Solid Color '''available in the '''Active Variable Controls.'''&lt;br /&gt;
&lt;br /&gt;
From here, we can change the fields that we want to visualize.&lt;br /&gt;
&lt;br /&gt;
Select the '''U''' field with the dot, not the one with the box.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Last Frame'''&lt;br /&gt;
|| From '''VCR Controls''', we can change the''' time steps''' and '''run animation''' using the '''Play''' button.&lt;br /&gt;
&lt;br /&gt;
Currently we are on 0 time, which is for the '''initial field'''.&lt;br /&gt;
&lt;br /&gt;
To go to the last '''time step, '''click on the '''Last Frame'''&amp;lt;span style=&amp;quot;color:#274e13;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;button.&lt;br /&gt;
|- &lt;br /&gt;
|| Show Picture of ICONS&lt;br /&gt;
|| As you can see, some '''filter''' icons are shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Stream Tracer filter'''&lt;br /&gt;
|| To visualize '''streamline''', click on the '''Stream tracer''' icon from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Change seed type to point source'''&lt;br /&gt;
|| From the '''Properties''' panel we can change the '''seed type.'''&lt;br /&gt;
&lt;br /&gt;
The two '''seed types''' available are:&lt;br /&gt;
* '''High resolution line source''' and&lt;br /&gt;
* '''Point Source'''&lt;br /&gt;
&lt;br /&gt;
'''High resolution Line Source''' gives '''streamlines''' passing through a '''line'''.&lt;br /&gt;
&lt;br /&gt;
'''Point Source''' gives '''streamlines''' passing through a '''sphere'''.&lt;br /&gt;
&lt;br /&gt;
We will select '''Point Source'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Set number of points to 1000 &amp;gt;&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
'''Uncheck Show Sphere checkbox'''&lt;br /&gt;
|| Set the '''number of points''' to '''1000''' and '''uncheck''' the '''Show Sphere''' option to hide the sphere.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
We can see 1000 '''streamlines''' passing through 1000 random points within the sphere.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Delete button'''&lt;br /&gt;
|| This way we can visualize the '''streamline'''.&lt;br /&gt;
&lt;br /&gt;
Now '''Delete''' the '''Stream Tracer filter''' by clicking on the '''Delete''' button on the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Glyph filter'''&lt;br /&gt;
|| Click on the '''Glyph''' icon from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Change Orientation U'''&lt;br /&gt;
|| Change '''Orientation Array''' to '''U '''from''' '''the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Scale array U'''&lt;br /&gt;
|| Change '''Scale array''' to '''U '''in''' '''the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Hide pipe.OpenFOAM'''&lt;br /&gt;
|| Hide '''pipe.OpenFOAM''' from the '''pipeline browser '''by clicking on the eye icon.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Zoom in render layout with left mouse click and drag'''&lt;br /&gt;
|| We can see '''Arrows''' in the direction of the '''flow'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Delete Glyph filter'''&lt;br /&gt;
|| '''Delete''' the '''Glyph filter '''from the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Clip filter'''&lt;br /&gt;
|| Click on the '''clip''' icon from '''Common and Data Analysis Filters''' to clip the '''mesh'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck Show plane and invert'''&lt;br /&gt;
|| Uncheck “'''Show Plane'''” and “'''invert'''” boxes from the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This way we can clip any '''mesh''' and visualize '''internal flow'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Delete Clip filter'''&lt;br /&gt;
|| Delete the '''Clip''' filter from the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Plot Over Line Filter'''&lt;br /&gt;
|| Click on the “'''Plot Over Line'''” filter from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Y Axis'''&lt;br /&gt;
|| Click on '''Y Axis''' on the '''Properties''' panel and click '''Apply'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]'''Highlight '''&lt;br /&gt;
&lt;br /&gt;
'''Line Chart view window'''&lt;br /&gt;
|| A new '''line chart window''' opens automatically with '''P''' and '''U_Magnitude''' '''graphs'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Scroll properties panel and uncheck p from series parameter'''&lt;br /&gt;
|| In the '''Properties''' panel, scroll down and locate the '''series parameters''' section. &lt;br /&gt;
&lt;br /&gt;
Uncheck '''P''' from that.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Highlight '''&lt;br /&gt;
&lt;br /&gt;
'''Line Chart view window'''&lt;br /&gt;
|| We will get a '''parabolic profile''' for '''velocity''' in the graph.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Line chart view window'''&lt;br /&gt;
&lt;br /&gt;
'''Press CTRL+S'''&lt;br /&gt;
|| Click on the '''Line Chart View''' window &lt;br /&gt;
&lt;br /&gt;
And press '''Ctrl+S''' keys to save data.&lt;br /&gt;
|- &lt;br /&gt;
|| [Save File:]&lt;br /&gt;
&lt;br /&gt;
'''Select file type as .csv '''&lt;br /&gt;
&lt;br /&gt;
'''give name - Y-Axis'''&lt;br /&gt;
|| Select '''Files of type''' as '''.csv''' and give the file name '''Y(hyphen)Axis.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Save File:] &lt;br /&gt;
&lt;br /&gt;
'''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| Click on '''OK'''.&lt;br /&gt;
&lt;br /&gt;
Again click on '''OK''' with default settings.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The data is saved in a '''.csv''' file.&lt;br /&gt;
&lt;br /&gt;
We can open this file in '''LibreOffice Calc''' and compare with an analytical solution.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on File &amp;gt;&amp;gt; Save Screenshot...'''&lt;br /&gt;
|| Now go to the '''File''' menu in the menu bar and select '''Save Screenshot.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''File name - velocity'''&lt;br /&gt;
&lt;br /&gt;
'''File type - .png'''&lt;br /&gt;
|| Give a '''File Name''' and select''' file type'''.&lt;br /&gt;
&lt;br /&gt;
Here I am saving the screenshot as '''velocity''' with the '''.png''' file type.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| Click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| The '''Save Screenshot''' option window pops up.&lt;br /&gt;
&lt;br /&gt;
We can change the '''size''', '''scaling''', '''coloring''' and other image options here.&lt;br /&gt;
&lt;br /&gt;
With the default values in the settings, click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Screenshot''' of '''Parabolic curve profile''' is saved in our '''case '''directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Click on Z Axis'''&lt;br /&gt;
|| Go to the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Click on '''Z Axis''' and then click on the '''Apply''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck U_Magnitude and check p'''&lt;br /&gt;
|| Then go to the '''series parameter''' section in the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Uncheck '''U_Magnitude''' field and check '''p field.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Press CTRL+S'''&lt;br /&gt;
&lt;br /&gt;
'''Select .csv file type'''&lt;br /&gt;
&lt;br /&gt;
'''Give a name - Z-Axis'''&lt;br /&gt;
&lt;br /&gt;
'''Press OK'''&lt;br /&gt;
&lt;br /&gt;
'''Press OK'''&lt;br /&gt;
|| Save this data to''' Z-Axis.csv''' file as explained earlier.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Close ParaView'''&lt;br /&gt;
|| Close the '''ParaView''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| '''Open File explorer'''&lt;br /&gt;
|| Open the '''File explorer '''from the '''taskbar'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; OpenFOAM'''&lt;br /&gt;
|| Open the '''OpenFOAM''' directory. &lt;br /&gt;
&lt;br /&gt;
Here we can see the '''username '''directory of our computer.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; “username directory”'''&lt;br /&gt;
|| Now open your current '''user '''directory. &lt;br /&gt;
&lt;br /&gt;
In the '''user''' directory we can see the “'''run'''” directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; run'''&lt;br /&gt;
|| Open the “'''run'''” directory. &lt;br /&gt;
&lt;br /&gt;
Our saved work is available here in the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer] '''Open &amp;gt;&amp;gt; pipe '''&lt;br /&gt;
|| Now open the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| '''Only Narration'''&lt;br /&gt;
|| Here we can see all files including '''screenshot image''' and '''.csv files''' that we have saved.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Right click on &amp;gt;&amp;gt; Z-Axis.csv'''&lt;br /&gt;
|| Right click on '''Z-Axis.csv''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; Open With Other Application'''&lt;br /&gt;
|| From the list, click on the “'''Open With Other Application'''” option.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; View All Application'''&lt;br /&gt;
|| Now click on the “'''View All Application'''” button.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Double click on &amp;gt;&amp;gt; LibreOffice Calc'''&lt;br /&gt;
|| A list of all the '''applications''' available in your computer will appear. &lt;br /&gt;
&lt;br /&gt;
From this list find “'''LibreOffice Calc'''” and double click on it.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| A “'''Text Import'''” window will open on your screen. &lt;br /&gt;
&lt;br /&gt;
At the bottom right corner click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight '''LibreOffice suite calc'''&lt;br /&gt;
|| Our file is now open in '''LibreOffice Calc.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| We have &lt;br /&gt;
&lt;br /&gt;
'''velocity U:0''' at '''Point:0'''&lt;br /&gt;
&lt;br /&gt;
'''Velocity U:1''' at '''Point:1 '''and &lt;br /&gt;
&lt;br /&gt;
'''Velocity U:2''' at '''Point:2'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| We have '''kinematic pressure p''', '''vtkValidPointMask''' and '''arc_length''' also.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| Necessary data to plot the graph is '''U:2''', '''Point:2''' and '''p'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
Show Graphs&lt;br /&gt;
|| For this demonstration I have created a graph on '''z-axis''' versus '''kinematic pressure'''.&lt;br /&gt;
&lt;br /&gt;
And another graph for '''z-axis''' versus '''velocity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
Show Graphs&lt;br /&gt;
|| In the same way I have created a '''y-axis''' versus '''velocity''' graph with a '''y-axis.csv''' file. &lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here you can also compare '''analytical '''solutions with '''OpenFoam''' solutions.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt,&lt;br /&gt;
* Some basic '''visualization techniques''' in '''ParaView'''&lt;br /&gt;
* Export''' field data '''to''' .csv''' file&lt;br /&gt;
* Plot''' graph''' in '''LibreOffice suite calc '''and&lt;br /&gt;
* Save screenshot of a '''view'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Simulate the '''Hagen Poiseuille flow''' for the '''pipe''' of '''0.5 cm''' diameter with&lt;br /&gt;
* '''Inlet''' '''velocity''' '''0.05 m/s''' and '''outlet pressure''' '''0 Pascal''' and,&lt;br /&gt;
* Plot graphs of '''velocity''' and '''pressure '''in''' ParaView '''and''' LibreOffice Calc'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| Please post your timed queries on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off. Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-22T10:50:47Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' the Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| &lt;br /&gt;
* To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure''' and&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient''' and&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let us open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Now let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at the '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| The type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let us set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| and paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with in a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
and now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let us put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascals'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in details later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in this link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English</id>
		<title>OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English"/>
				<updated>2020-07-21T15:14:31Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Basic Post Processing using ParaView&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Paraview, Clip, Streamline, Glyph, Plot-over-line, Parabolic profile, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Hello and welcome to this tutorial on '''Basic Post Processing using ParaView.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn,&lt;br /&gt;
* Some basic '''visualization techniques''' in '''ParaView'''&lt;br /&gt;
* Export the''' field data '''to '''.csv''' file&lt;br /&gt;
* Plot a''' graph''' in '''LibreOffice Suite Calc '''and&lt;br /&gt;
* Save a screenshot of a '''view'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''LibreOffice Suite''' 6.4&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites* Please go through these two tutorials on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite learner should practise,&lt;br /&gt;
* On '''Simulating Hagen Poiseuille Flow through a Pipe''' from the '''OpenFOAM '''tutorials and&lt;br /&gt;
* Tutorial on '''Using Charts and Graphs''' from '''LibreOffice Suite Calc'''&lt;br /&gt;
* Please go through these two tutorials on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case '''folder.&lt;br /&gt;
&lt;br /&gt;
We have created this in the''' “Simulating Hagen Poiseuille Flow through Pipe” '''tutorial.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''paraFoam'''&lt;br /&gt;
|| Type '''paraFoam''' in the '''terminal''' to open the '''case''' file in '''paraView'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck &amp;gt;&amp;gt; inlet and outlet'''&lt;br /&gt;
|| Go to the '''properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Scroll down and locate the '''mesh parts''' section.&lt;br /&gt;
&lt;br /&gt;
Uncheck all '''patches''' other than '''internalMesh'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Solid Color &amp;gt;&amp;gt; Click on U'''&lt;br /&gt;
|| Click on '''Solid Color '''available in the '''Active Variable Controls.'''&lt;br /&gt;
&lt;br /&gt;
From here, we can change the fields that we want to visualize.&lt;br /&gt;
&lt;br /&gt;
Select the '''U''' field with the dot, not the one with the box.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Last Frame'''&lt;br /&gt;
|| From '''VCR Controls''', we can change the''' time steps''' and '''run animation''' using the '''Play''' button.&lt;br /&gt;
&lt;br /&gt;
Currently we are on 0 time, which is for the '''initial field'''.&lt;br /&gt;
&lt;br /&gt;
To go to the last '''time step, '''click on the '''Last Frame'''&amp;lt;span style=&amp;quot;color:#274e13;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;button.&lt;br /&gt;
|- &lt;br /&gt;
|| Show Picture of ICONS&lt;br /&gt;
|| As you can see, some '''filter''' icons are shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Stream Tracer filter'''&lt;br /&gt;
|| To visualize '''streamline''', click on the '''Stream tracer''' icon from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Change seed type to point source'''&lt;br /&gt;
|| From the '''Properties''' panel we can change the '''seed type.'''&lt;br /&gt;
&lt;br /&gt;
The two '''seed types''' available are:&lt;br /&gt;
* '''High resolution line source''' and&lt;br /&gt;
* '''Point Source'''&lt;br /&gt;
&lt;br /&gt;
'''High resolution Line Source''' gives '''streamlines''' passing through a '''line'''.&lt;br /&gt;
&lt;br /&gt;
'''Point Source''' gives '''streamlines''' passing through a '''sphere'''.&lt;br /&gt;
&lt;br /&gt;
We will select '''Point Source'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Set number of points to 1000 &amp;gt;&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
'''Uncheck Show Sphere checkbox'''&lt;br /&gt;
|| Set the '''number of points''' to '''1000''' and '''uncheck''' the '''Show Sphere''' option to hide the sphere.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
We can see 1000 '''streamlines''' passing through 1000 random points within the sphere.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Delete button'''&lt;br /&gt;
|| This way we can visualize the '''streamline'''.&lt;br /&gt;
&lt;br /&gt;
Now '''Delete''' the '''Stream Tracer filter''' by clicking on the '''Delete''' button on the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Glyph filter'''&lt;br /&gt;
|| Click on the '''Glyph''' icon from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Change Orientation U'''&lt;br /&gt;
|| Change '''Orientation Array''' to '''U '''from''' '''the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Scale array U'''&lt;br /&gt;
|| Change '''Scale array''' to '''U '''in''' '''the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Hide pipe.OpenFOAM'''&lt;br /&gt;
|| Hide '''pipe.OpenFOAM''' from the '''pipeline browser '''by clicking on the eye icon.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Zoom in render layout with left mouse click and drag'''&lt;br /&gt;
|| We can see '''Arrows''' in the direction of the '''flow'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Delete Glyph filter'''&lt;br /&gt;
|| '''Delete''' the '''Glyph filter '''from the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Clip filter'''&lt;br /&gt;
|| Click on the '''clip''' icon from '''Common and Data Analysis Filters''' to clip the '''mesh'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck Show plane and invert'''&lt;br /&gt;
|| Uncheck “'''Show Plane'''” and “'''invert'''” boxes from the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This way we can clip any '''mesh''' and visualize '''internal flow'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Delete Clip filter'''&lt;br /&gt;
|| Delete the '''Clip''' filter from the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Plot Over Line Filter'''&lt;br /&gt;
|| Click on the “'''Plot Over Line'''” filter from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Y Axis'''&lt;br /&gt;
|| Click on '''Y Axis''' on the '''Properties''' panel and click '''Apply'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]'''Highlight '''&lt;br /&gt;
&lt;br /&gt;
'''Line Chart view window'''&lt;br /&gt;
|| A new '''line chart window''' opens automatically with '''P''' and '''U_Magnitude''' '''graphs'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Scroll properties panel and uncheck p from series parameter'''&lt;br /&gt;
|| In the '''Properties''' panel, scroll down and locate the '''series parameters''' section. &lt;br /&gt;
&lt;br /&gt;
Uncheck '''P''' from that.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Highlight '''&lt;br /&gt;
&lt;br /&gt;
'''Line Chart view window'''&lt;br /&gt;
|| We will get a '''parabolic profile''' for '''velocity''' in the graph.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Line chart view window'''&lt;br /&gt;
&lt;br /&gt;
'''Press CTRL+S'''&lt;br /&gt;
|| Click on the '''Line Chart View''' window &lt;br /&gt;
&lt;br /&gt;
And press '''Ctrl+S''' keys to save data.&lt;br /&gt;
|- &lt;br /&gt;
|| [Save File:]&lt;br /&gt;
&lt;br /&gt;
'''Select file type as .csv '''&lt;br /&gt;
&lt;br /&gt;
'''give name - Y-Axis'''&lt;br /&gt;
|| Select '''Files of type''' as '''.csv''' and give the file name '''Y(hyphen)Axis.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Save File:] &lt;br /&gt;
&lt;br /&gt;
'''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| Click on '''OK'''.&lt;br /&gt;
&lt;br /&gt;
Again click on '''OK''' with default settings.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The data is saved in a '''.csv''' file.&lt;br /&gt;
&lt;br /&gt;
We can open this file in '''LibreOffice Calc''' and compare with an analytical solution.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on File &amp;gt;&amp;gt; Save Screenshot...'''&lt;br /&gt;
|| Now go to the '''File''' menu in the menu bar and select '''Save Screenshot.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''File name - velocity'''&lt;br /&gt;
&lt;br /&gt;
'''File type - .png'''&lt;br /&gt;
|| Give a '''File Name''' and select''' file type'''.&lt;br /&gt;
&lt;br /&gt;
Here I am saving the screenshot as '''velocity''' with the '''.png''' file type.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| Click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| The '''Save Screenshot''' option window pops up.&lt;br /&gt;
&lt;br /&gt;
We can change the '''size''', '''scaling''', '''coloring''' and other image options here.&lt;br /&gt;
&lt;br /&gt;
With the default values in the settings, click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Screenshot''' of '''Parabolic curve profile''' is saved in our '''case '''directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Click on Z Axis'''&lt;br /&gt;
|| Go to the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Click on '''Z Axis''' and then click on the '''Apply''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck U_Magnitude and check p'''&lt;br /&gt;
|| Then go to the '''series parameter''' section in the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Uncheck '''U_Magnitude''' field and check '''p field.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Press CTRL+S'''&lt;br /&gt;
&lt;br /&gt;
'''Select .csv file type'''&lt;br /&gt;
&lt;br /&gt;
'''Give a name - Z-Axis'''&lt;br /&gt;
&lt;br /&gt;
'''Press OK'''&lt;br /&gt;
&lt;br /&gt;
'''Press OK'''&lt;br /&gt;
|| Save this data to''' Z-Axis.csv''' file as explained earlier.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Close ParaView'''&lt;br /&gt;
|| Close the '''ParaView''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| '''Open File explorer'''&lt;br /&gt;
|| Open the '''File explorer '''from the '''taskbar'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; OpenFOAM'''&lt;br /&gt;
|| Open the '''OpenFOAM''' directory. &lt;br /&gt;
&lt;br /&gt;
Here we can see the '''username '''directory of our computer.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; “username directory”'''&lt;br /&gt;
|| Now open your current '''user '''directory. &lt;br /&gt;
&lt;br /&gt;
In the '''user''' directory we can see the “'''run'''” directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; run'''&lt;br /&gt;
|| Open the “'''run'''” directory. &lt;br /&gt;
&lt;br /&gt;
Our saved work is available here in the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer] '''Open &amp;gt;&amp;gt; pipe '''&lt;br /&gt;
|| Now open the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| '''Only Narration'''&lt;br /&gt;
|| Here we can see all files including '''screenshot image''' and '''.csv files''' that we have saved.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Right click on &amp;gt;&amp;gt; Z-Axis.csv'''&lt;br /&gt;
|| Right click on '''Z-Axis.csv''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; Open With Other Application'''&lt;br /&gt;
|| From the list, click on the “'''Open With Other Application'''” option.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; View All Application'''&lt;br /&gt;
|| Now click on the “'''View All Application'''” button.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Double click on &amp;gt;&amp;gt; LibreOffice Calc'''&lt;br /&gt;
|| A list of all the '''applications''' available in your computer will appear. &lt;br /&gt;
&lt;br /&gt;
From this list find “'''LibreOffice Calc'''” and double click on it.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| A “'''Text Import'''” window will open on your screen. &lt;br /&gt;
&lt;br /&gt;
At the bottom right corner click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight '''LibreOffice suite calc'''&lt;br /&gt;
|| Our file is now open in '''LibreOffice Calc.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| We have &lt;br /&gt;
&lt;br /&gt;
'''velocity U:0''' at '''Point:0'''&lt;br /&gt;
&lt;br /&gt;
'''Velocity U:1''' at '''Point:1 '''and &lt;br /&gt;
&lt;br /&gt;
'''Velocity U:2''' at '''Point:2'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| We have '''kinematic pressure p''', '''vtkValidPointMask''' and '''arc_length''' also.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| Necessary data to plot the graph is '''U:2''', '''Point:2''' and '''p'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
Show Graphs&lt;br /&gt;
|| For this demonstration I have created a graph on '''z-axis''' versus '''kinematic pressure'''.&lt;br /&gt;
&lt;br /&gt;
And another graph for '''z-axis''' versus '''velocity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
Show Graphs&lt;br /&gt;
|| And the same way I have created a '''y-axis''' versus '''velocity''' graph with a '''y-axis.csv''' file. &lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here you can also compare '''analytical '''solutions with '''OpenFoam''' solutions.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt,&lt;br /&gt;
* Some basic '''visualization techniques''' in '''ParaView'''&lt;br /&gt;
* Export''' field data '''to''' .csv''' file&lt;br /&gt;
* Plot''' graph''' in '''LibreOffice suite calc '''and&lt;br /&gt;
* Save screenshot of a '''view'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Simulate the '''Hagen Poiseuille flow''' for the '''pipe''' of '''0.5 cm''' diameter with&lt;br /&gt;
* '''Inlet''' '''velocity''' '''0.05 m/s''' and '''outlet pressure''' '''0 Pascal''' and,&lt;br /&gt;
* Plot graphs of '''velocity''' and '''pressure '''in''' ParaView '''and''' LibreOffice Calc'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| Please post your timed queries on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off. Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-21T12:44:31Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| &lt;br /&gt;
* To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure'''&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient''' and&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let’s open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Now let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at the '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| The type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let us set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| and paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with in a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
and now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let us put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascal'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in details later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in this link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-21T12:16:58Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| &lt;br /&gt;
* To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure'''&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient''' and&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let’s open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Now let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| Type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let’s set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| Paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
Now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let’s put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascal'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in detail later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-21T12:14:50Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| &lt;br /&gt;
* To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure'''&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient''' and&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let’s open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| Type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let’s set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| Paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
Now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let’s put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascal'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in detail later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-21T12:13:02Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| &lt;br /&gt;
* To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure'''&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient'''&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let’s open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| Type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let’s set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| Paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
Now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let’s put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascal'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in detail later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-21T12:10:13Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| * To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure'''&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient'''&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let’s open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| Type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let’s set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| Paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
Now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let’s put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascal'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in detail later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Creating-3D-Pipe-Geometry-and-Mesh-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Creating-3D-Pipe-Geometry-and-Mesh-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Creating-3D-Pipe-Geometry-and-Mesh-in-OpenFOAM/English"/>
				<updated>2020-07-21T06:19:52Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Creating 3D Pipe Geometry and Mesh in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, 3D-Geometry, Pipe, Meshing, ParaView, Pre-Processing, Video-Tutorial, blockMesh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening slide&lt;br /&gt;
|| Welcome to this tutorial on '''Creating 3D Pipe Geometry and Mesh in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to:&lt;br /&gt;
&lt;br /&gt;
* Create a '''3D Geometry''' using '''blockMeshDict'''&lt;br /&gt;
* '''Mesh''' a '''3D''' '''geometry'''&lt;br /&gt;
* Label the''' boundary patches'''&lt;br /&gt;
* Check the '''mesh results '''using''' checkMesh command''' and&lt;br /&gt;
* View the '''3D geometry''' and '''mesh '''in''' ParaView'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0 and&lt;br /&gt;
* '''gedit''' Text editor&lt;br /&gt;
&lt;br /&gt;
You may use any other editor of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should be familiar with creation of a basic '''geometry''' using the '''blockMesh''' utility.&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Hagen Poiseuille flow through a pipe&lt;br /&gt;
|| &lt;br /&gt;
* In this tutorial, we will learn to create the '''geometry''' for '''Hagen Poiseuille flow through a pipe'''.&lt;br /&gt;
* The problem description of '''Hagen Poiseuille flow through a pipe''' is shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Pipe Geometry&lt;br /&gt;
|| &lt;br /&gt;
* This is the diagram of the '''geometry''' for '''Hagen Poiseuille flow through a pipe.'''&lt;br /&gt;
* The left and right faces are the '''inlet''' and '''outlet''' respectively.&lt;br /&gt;
* The cylindrical face of the '''geometry''' is a '''wall'''.&lt;br /&gt;
* The '''diameter''' of the pipe is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl''', '''Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here onwards, please remember to press the '''Enter''' key after typing each '''command'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity pipe'''&lt;br /&gt;
|| Let us now copy the '''cavity case''' from the '''icoFoam''' '''tutorial directory''' to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
Type the following '''command''' to do so.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight: '''pipe'''&lt;br /&gt;
|| Note that the '''cavity case''' is copied to the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv pipe/0 pipe/0.Orig'''&lt;br /&gt;
|| In this tutorial we don’t need to define '''initial''' and '''boundary''' '''conditions''' in '''zero''' time.&lt;br /&gt;
&lt;br /&gt;
Type this '''command''' to '''rename''' '''“0”''' folder to '''“0.Orig”'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit pipe/system/blockMeshDict'''&lt;br /&gt;
|| The '''blockMeshDict''' file is located in the '''system''' folder.&lt;br /&gt;
&lt;br /&gt;
Open this file in a '''text editor'''. I am doing it in the '''gedit text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict''']&lt;br /&gt;
|| Now we can see the '''blockMeshDict''' file in the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete'''&lt;br /&gt;
|| '''Delete''' the lines from '''convertToMeters''' to the end of the file as shown here.&lt;br /&gt;
&lt;br /&gt;
The remaining content is common for all '''blockMeshDict''' files.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pipe''']&lt;br /&gt;
|| Next, open the '''pipe.txt''' file that you had downloaded in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict''']&lt;br /&gt;
|| Now switch back to the '''blockMeshDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict''']&lt;br /&gt;
&lt;br /&gt;
'''Paste '''&lt;br /&gt;
|| And paste the copied contents into the '''blockMeshDict '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''0.01'''&lt;br /&gt;
|| Note that all the '''dimensions''' will be in '''centimeters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Vertices Detail&lt;br /&gt;
|| &lt;br /&gt;
* '''Vertices''' are shown in the slide. &lt;br /&gt;
* Here we are going to use '''18''' '''vertices''' to define the '''geometry''' of a '''pipe'''.&lt;br /&gt;
* For example, '''two reference points''' 0 and 17 are on (0 0 0) and (0 0 30) respectively.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; vertices '''&lt;br /&gt;
|| All '''18''' '''points''' are defined in the '''vertices''' '''section''' in the '''blockMeshDict''' file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Now let me switch back to the '''Slides'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Block Detail&lt;br /&gt;
|| &lt;br /&gt;
* Here we will use 5 '''hexahedral blocks''' to define the''' pipe geometry'''.&lt;br /&gt;
* As you can see, the '''center hexahedral block''' is separately shown in the '''figure''' on the right.&lt;br /&gt;
* To '''define''' this '''block''', we need to type the '''back plane’s vertices '''first.&lt;br /&gt;
* The '''vertices''' should be ordered''' anti-clockwise''' when viewed '''along the negative z-axis'''.&lt;br /&gt;
* The '''front plane’s vertices''' should also follow the same order.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Block Detail&lt;br /&gt;
&lt;br /&gt;
Highlight: '''hex (1 2 3 4 9 10 11 12) (8 8 80) simpleGrading (1 1 1)'''&lt;br /&gt;
|| An '''example''' is shown in the '''slide'''.&lt;br /&gt;
&lt;br /&gt;
The same '''block''' can be defined correctly in more than one way.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Block Detail&lt;br /&gt;
&lt;br /&gt;
Highlight: '''(8 8 80)'''&lt;br /&gt;
|| To generate '''3D mesh''' we are using:&lt;br /&gt;
&lt;br /&gt;
* '''8 cells''' in '''X direction''', &lt;br /&gt;
* '''8 cells '''in '''Y direction''' and &lt;br /&gt;
* '''80 cells''' in '''Z direction'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; blocks'''&lt;br /&gt;
|| Other '''4''' '''blocks''' are defined in the '''blockMeshDict''' file as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Arc Detail&lt;br /&gt;
|| For the '''curved geometry''', we need to define the '''edges'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Arc Detail&lt;br /&gt;
|| &lt;br /&gt;
* There are a total of '''16 arcs''' that we need to define.&lt;br /&gt;
* The '''arcs''' and the '''intermediate points''' are shown in the slide.&lt;br /&gt;
* Note that I have used the '''midpoint''' of the '''arc''' as the '''intermediate point'''.&lt;br /&gt;
* However, '''any other point''' through which the '''arc''' passes is acceptable.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Arc Detail&lt;br /&gt;
&lt;br /&gt;
Highlight: '''arc 5 6 (0 0.5 0)'''&lt;br /&gt;
|| For example, the''' edge''' from '''Point''' number '''5''' to '''6''' is passing through (0 0.5 0).&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; edges'''&lt;br /&gt;
|| All '''16''' '''arcs''' are defined in the '''edges''' '''section''' in the '''blockMeshDict''' file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''arc 5 6 (0 0.5 0)'''&lt;br /&gt;
|| The '''curved edge''' connecting '''points 5''' and '''6''' is defined as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''arc'''&lt;br /&gt;
|| The edge is an '''arc'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''5 6'''&lt;br /&gt;
|| Its two '''end''' '''points''' are 5 and 6.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''(0 0.5 0)'''&lt;br /&gt;
|| The '''coordinates''' of the '''point''' through which the '''arc''' passes through is 0, 0.5, 0&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s label the '''boundary patches'''.&lt;br /&gt;
&lt;br /&gt;
The '''boundary faces''' should be labelled appropriately.&lt;br /&gt;
&lt;br /&gt;
The labels are used to impose '''boundary conditions''' on the respective faces.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| The '''inlet boundary''' is defined as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt;'''&lt;br /&gt;
|| The''' inlet boundary''' has 5 faces.&lt;br /&gt;
&lt;br /&gt;
These faces are defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet and wall'''&lt;br /&gt;
|| The '''outlet '''and''' wall boundary''' is defined as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Note that all '''boundaries''' have more than one face.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; mergePatchPairs'''&lt;br /&gt;
|| We do not have any '''patches '''or''' internal faces''' to merge.&lt;br /&gt;
&lt;br /&gt;
Therefore, we leave the '''mergePatchPairs''' field empty.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''blockMeshDict '''file and close the text editor.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Now, go to the '''terminal''' and navigate to the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''blockMesh'''&lt;br /&gt;
|| Type '''blockMesh command''' and press '''Enter'''. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| The '''meshing''' is now complete.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Patches section'''&lt;br /&gt;
|| As we can see in '''terminal results''', three patches are created.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''checkMesh'''&lt;br /&gt;
|| Now, let’s '''check''' '''mesh''' '''results''' and '''quality'''.&lt;br /&gt;
&lt;br /&gt;
To do that type '''checkMesh''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''M '''in''' checkMesh''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We get the '''results''' printed of the '''mesh''' we created.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Max skewness = 0.6954 OK.'''&lt;br /&gt;
&lt;br /&gt;
'''Non-orthogonality check OK.'''&lt;br /&gt;
&lt;br /&gt;
'''Max aspect ratio = 30.3404 OK.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Overall domain bounding box '''&lt;br /&gt;
|| Here we can see:&lt;br /&gt;
&lt;br /&gt;
* '''Skewness'''&lt;br /&gt;
&lt;br /&gt;
* '''Orthogonality'''&lt;br /&gt;
&lt;br /&gt;
* '''Aspect ratio'''&lt;br /&gt;
&lt;br /&gt;
* '''Negative volume''' values if they are present&lt;br /&gt;
&lt;br /&gt;
In our case, no negative volume is present.&lt;br /&gt;
&lt;br /&gt;
* '''Bounding box '''coordinates and&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Overall number of cells of each type:'''&lt;br /&gt;
&lt;br /&gt;
'''hexahedra: 25600'''&lt;br /&gt;
&lt;br /&gt;
'''prisms: 0'''&lt;br /&gt;
&lt;br /&gt;
'''wedges: 0'''&lt;br /&gt;
&lt;br /&gt;
'''pyramids: 0'''&lt;br /&gt;
&lt;br /&gt;
'''tet wedges:0'''&lt;br /&gt;
&lt;br /&gt;
'''tetrahedra:0'''&lt;br /&gt;
&lt;br /&gt;
'''polyhedra: 0'''&lt;br /&gt;
|| &lt;br /&gt;
* '''Number of cells''' with their '''types'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type '''paraFoam'''&lt;br /&gt;
&lt;br /&gt;
|| To view '''mesh''' in '''paraview''' type '''paraFoam''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] Click &lt;br /&gt;
&lt;br /&gt;
'''Apply'''&lt;br /&gt;
|| Click on '''Apply''' on the left side of your window in the '''Properties''' tab.&lt;br /&gt;
&lt;br /&gt;
Now you can see '''pipe geometry''' in the''' Layout window'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Rotate geometry'''&lt;br /&gt;
|| You can''' rotate''' geometry in the '''Layout''' '''window''' by pressing the left mouse button and dragging.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Surface &amp;gt;&amp;gt; Click on Surface with Edges'''&lt;br /&gt;
|| Click on '''Surface''' available in the '''Active Variable Controls.'''&lt;br /&gt;
&lt;br /&gt;
Then change it to '''Surface with Edges'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Click on vtkBlockColors &amp;gt;&amp;gt; SolidColor'''&lt;br /&gt;
|| Click on '''vtkBlockColors''' available in the '''Active Variable Controls.''' &lt;br /&gt;
and change it to '''SolidColor'''.&lt;br /&gt;
&lt;br /&gt;
You can now see the '''mesh structure''' of '''pipe geometry''' that we created.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Close ParaView'''&lt;br /&gt;
|| You can close the '''ParaView''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Create a '''3D Geometry''' using '''blockMeshDict'''&lt;br /&gt;
* Mesh a '''3D''' '''geometry'''&lt;br /&gt;
* Label the''' boundary patches'''&lt;br /&gt;
* Check the '''mesh results '''using''' checkMesh command''' and&lt;br /&gt;
* View the '''3D geometry''' and '''mesh '''in''' ParaView'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in this link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English</id>
		<title>OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Basic-Post-Processing-using-ParaView/English"/>
				<updated>2020-07-21T06:09:29Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: Created page with &amp;quot;'''Title of the script:''' Basic Post Processing using ParaView  '''Author:''' Divyesh Variya  '''Keywords:''' OpenFOAM, Hagen Poiseuille, Paraview, Clip, Streamline, Glyph, P...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Basic Post Processing using ParaView&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Paraview, Clip, Streamline, Glyph, Plot-over-line, Parabolic profile, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Hello and welcome to this tutorial on '''Basic Post Processing using ParaView.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn,&lt;br /&gt;
* Some basic '''visualization techniques''' in '''ParaView'''&lt;br /&gt;
* Export the''' field data '''to '''.csv''' file&lt;br /&gt;
* Plot a''' graph''' in '''LibreOffice Suite Calc'''&lt;br /&gt;
* Save a screenshot of a '''view'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''LibreOffice Suite''' 6.4&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* Please go through these two tutorials on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite learner should practise,&lt;br /&gt;
* On '''Simulating Hagen Poiseuille Flow through a Pipe''' from the '''OpenFOAM '''tutorials and&lt;br /&gt;
* Tutorial on '''Using Charts and Graphs''' from the '''LibreOffice Suite Calc''' tutorials&lt;br /&gt;
* Please go through these two tutorials on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case '''folder.&lt;br /&gt;
&lt;br /&gt;
We have created this in the''' “Simulating Hagen Poiseuille Flow through Pipe” '''tutorial.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''paraFoam'''&lt;br /&gt;
|| Type '''paraFoam''' in the '''terminal''' to open the '''case''' file in '''paraView'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck &amp;gt;&amp;gt; inlet and outlet'''&lt;br /&gt;
|| Go to the '''properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Scroll down and locate the '''mesh parts''' section.&lt;br /&gt;
&lt;br /&gt;
Uncheck all '''patches''' other than '''internalMesh'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Solid Color &amp;gt;&amp;gt; Click on U'''&lt;br /&gt;
|| Click on '''Solid Color '''available in the '''Active Variable Controls.'''&lt;br /&gt;
&lt;br /&gt;
From here, we can change the fields that we want to visualize.&lt;br /&gt;
&lt;br /&gt;
Select the '''U''' field with the dot, not the one with the box.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Last Frame'''&lt;br /&gt;
|| From '''VCR Controls''', we can change the''' time steps''' and '''run animation''' using the '''Play''' button.&lt;br /&gt;
&lt;br /&gt;
Currently we are on 0 time, which is for the '''initial field'''.&lt;br /&gt;
&lt;br /&gt;
To go to the last '''time step, '''click on the '''Last Frame'''&amp;lt;span style=&amp;quot;color:#274e13;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;button.&lt;br /&gt;
|- &lt;br /&gt;
|| Show Picture of ICONS&lt;br /&gt;
|| As you can see, some '''filter''' icons are shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Stream Tracer filter'''&lt;br /&gt;
|| To visualize '''streamline''', click on the '''Stream tracer''' icon from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Change seed type to point source'''&lt;br /&gt;
|| From the '''Properties''' panel we can change the '''seed type.'''&lt;br /&gt;
&lt;br /&gt;
The two '''seed types''' available are:&lt;br /&gt;
* '''High resolution line source''' and&lt;br /&gt;
* '''Point Source'''&lt;br /&gt;
&lt;br /&gt;
'''High resolution Line Source''' gives '''streamlines''' passing through a '''line'''.&lt;br /&gt;
&lt;br /&gt;
'''Point Source''' gives '''streamlines''' passing through a '''sphere'''.&lt;br /&gt;
&lt;br /&gt;
We will select '''Point Source'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Set number of points to 1000 &amp;gt;&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
'''Uncheck Show Sphere checkbox'''&lt;br /&gt;
|| Set the '''number of points''' to '''1000''' and '''uncheck''' the '''Show Sphere''' option to hide the sphere.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
We can see 1000 '''streamlines''' passing through 1000 random points within the sphere.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Delete button'''&lt;br /&gt;
|| This way we can visualize the '''streamline'''.&lt;br /&gt;
&lt;br /&gt;
Now '''Delete''' the '''Stream Tracer filter''' by clicking on the '''Delete''' button on the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Glyph filter'''&lt;br /&gt;
|| Click on the '''Glyph''' icon from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Change Orientation U'''&lt;br /&gt;
|| Change '''Orientation Array''' to '''U '''from''' '''the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Scale array U'''&lt;br /&gt;
|| Change '''Scale array''' to '''U '''in''' '''the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Hide pipe.OpenFOAM'''&lt;br /&gt;
|| Hide '''pipe.OpenFOAM''' from the '''pipeline browser '''by clicking on the eye icon.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Zoom in render layout with left mouse click and drag'''&lt;br /&gt;
|| We can see '''Arrows''' in the direction of the '''flow'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Delete Glyph filter'''&lt;br /&gt;
|| '''Delete''' the '''Glyph filter '''from the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Clip filter'''&lt;br /&gt;
|| Click on the '''clip''' icon from '''Common and Data Analysis Filters''' to clip the '''mesh'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck Show plane and invert'''&lt;br /&gt;
|| Uncheck “'''Show Plane'''” and “'''invert'''” boxes from the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Apply'''&lt;br /&gt;
|| Click on the '''Apply''' button in the '''Properties '''panel.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| This way we can clip any '''mesh''' and visualize '''internal flow'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Delete Clip filter'''&lt;br /&gt;
|| Delete the '''Clip''' filter from the '''Properties''' panel.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Plot Over Line Filter'''&lt;br /&gt;
|| Click on the “'''Plot Over Line'''” filter from '''Common and Data Analysis Filters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Y Axis'''&lt;br /&gt;
|| Click on '''Y Axis''' on the '''Properties''' panel and click '''Apply'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]'''Highlight '''&lt;br /&gt;
&lt;br /&gt;
'''Line Chart view window'''&lt;br /&gt;
|| A new '''line chart window''' opens automatically with '''P''' and '''U_Magnitude''' '''graphs'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Scroll properties panel and uncheck p from series parameter'''&lt;br /&gt;
|| In the '''Properties''' panel, scroll down and locate the '''series parameters''' section. &lt;br /&gt;
&lt;br /&gt;
Uncheck '''P''' from that.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Highlight '''&lt;br /&gt;
&lt;br /&gt;
'''Line Chart view window'''&lt;br /&gt;
|| We will get a '''parabolic profile''' for the '''velocity''' in the graph.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click on Line chart view window'''&lt;br /&gt;
&lt;br /&gt;
'''Press CTRL+S'''&lt;br /&gt;
|| Click on the '''Line Chart View''' window &lt;br /&gt;
&lt;br /&gt;
And press '''Ctrl+S''' keys to save data.&lt;br /&gt;
|- &lt;br /&gt;
|| [Save File:]&lt;br /&gt;
&lt;br /&gt;
'''Select file type as .csv '''&lt;br /&gt;
&lt;br /&gt;
'''give name - Y-Axis'''&lt;br /&gt;
|| Select '''Files of type''' as '''.csv''' and give the file name '''Y(hyphen)Axis.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Save File:] &lt;br /&gt;
&lt;br /&gt;
'''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| Click on '''OK'''.&lt;br /&gt;
&lt;br /&gt;
Again click on '''OK''' with default settings.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| The data is saved in a '''.csv''' file.&lt;br /&gt;
&lt;br /&gt;
We can open this file in '''LibreOffice Calc''' and compare with an analytical solution.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on File &amp;gt;&amp;gt; Save Screenshot...'''&lt;br /&gt;
|| Now go to the '''File''' menu in the menu bar and select '''Save Screenshot.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''File name - velocity'''&lt;br /&gt;
&lt;br /&gt;
'''File type - .png'''&lt;br /&gt;
|| Give a '''File Name''' and select''' file type'''.&lt;br /&gt;
&lt;br /&gt;
Here I am saving the screenshot as '''velocity''' with the '''.png''' file type.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| Click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| The '''Save Screenshot''' option window pops up.&lt;br /&gt;
&lt;br /&gt;
We can change the '''size''', '''scaling''', '''coloring''' and other image options here.&lt;br /&gt;
&lt;br /&gt;
With the default values in the settings, click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Screenshot''' of '''Parabolic curve profile''' is saved in our '''case '''directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] &lt;br /&gt;
&lt;br /&gt;
'''Click on Z Axis'''&lt;br /&gt;
|| Go to the '''Properties''' panel. &lt;br /&gt;
&lt;br /&gt;
Click on '''Z Axis''' and then click on the '''Apply''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Uncheck U_Magnitude and check p'''&lt;br /&gt;
|| Then go to the '''series parameter''' section in the '''Properties''' panel.&lt;br /&gt;
&lt;br /&gt;
Uncheck '''U_Magnitude''' field and check '''p field.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Press CTRL+S'''&lt;br /&gt;
&lt;br /&gt;
'''Select .csv file type'''&lt;br /&gt;
&lt;br /&gt;
'''Give a name - Z-Axis'''&lt;br /&gt;
&lt;br /&gt;
'''Press OK'''&lt;br /&gt;
&lt;br /&gt;
'''Press OK'''&lt;br /&gt;
|| Save this data to''' Z-Axis.csv''' file as explained earlier.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Close ParaView'''&lt;br /&gt;
|| Close the '''ParaView''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| '''Open File explorer'''&lt;br /&gt;
|| Open the '''File explorer '''from the '''taskbar'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; OpenFOAM'''&lt;br /&gt;
|| Open the '''OpenFOAM''' directory. &lt;br /&gt;
&lt;br /&gt;
Here we can see the '''username '''directory of our computer.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; “username directory”'''&lt;br /&gt;
|| Now open your current '''user '''directory. &lt;br /&gt;
&lt;br /&gt;
In the '''user''' directory we can see the “'''run'''” directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Open &amp;gt;&amp;gt; run'''&lt;br /&gt;
|| Open the “'''run'''” directory. &lt;br /&gt;
&lt;br /&gt;
Our saved work is available here in the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer] '''Open &amp;gt;&amp;gt; pipe '''&lt;br /&gt;
|| Now open the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| '''Only Narration'''&lt;br /&gt;
|| Here we can see all files including '''screenshot image''' and '''.csv files''' that we have saved.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Right click on &amp;gt;&amp;gt; Z-Axis.csv'''&lt;br /&gt;
|| Right click on '''Z-Axis.csv''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; Open With Other Application'''&lt;br /&gt;
|| From the list, click on the “'''Open With Other Application'''” option.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; View All Application'''&lt;br /&gt;
|| Now click on the “'''View All Application'''” button.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Double click on &amp;gt;&amp;gt; LibreOffice Calc'''&lt;br /&gt;
|| A list of all the '''applications''' available in your computer will appear. &lt;br /&gt;
&lt;br /&gt;
From this list find “'''LibreOffice Calc'''” and double click on it.&lt;br /&gt;
|- &lt;br /&gt;
|| [File explorer]&lt;br /&gt;
&lt;br /&gt;
'''Click on &amp;gt;&amp;gt; OK'''&lt;br /&gt;
|| A “'''Text Import'''” window will open on your screen. &lt;br /&gt;
&lt;br /&gt;
At the bottom right corner click on the '''OK''' button.&lt;br /&gt;
|- &lt;br /&gt;
|| Highlight '''LibreOffice suite calc'''&lt;br /&gt;
|| Our file is now open in '''LibreOffice Calc.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| We have &lt;br /&gt;
&lt;br /&gt;
'''velocity U:0''' at '''Point:0'''&lt;br /&gt;
&lt;br /&gt;
'''Velocity U:1''' at '''Point:1 '''and &lt;br /&gt;
&lt;br /&gt;
'''Velocity U:2''' at '''Point:2'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| We have '''kinematic pressure p''', '''vtkValidPointMask''' and '''arc_length''' also.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
'''Highlight cells'''&lt;br /&gt;
|| Necessary data to plot the graph is '''U:2''', '''Point:2''' and '''p'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
Show Graphs&lt;br /&gt;
|| For this demonstration I have created a graph on '''z-axis''' versus '''kinematic pressure'''.&lt;br /&gt;
&lt;br /&gt;
And another graph for '''z-axis''' versus '''velocity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [LibreOffice suite calc]&lt;br /&gt;
&lt;br /&gt;
Show Graphs&lt;br /&gt;
|| In the same way I have created a '''y-axis''' versus '''velocity''' graph with a '''y-axis.csv''' file. &lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here you can also compare '''analytical '''solutions with '''OpenFoam''' solutions.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt,&lt;br /&gt;
* Some basic '''visualization techniques''' in '''ParaView'''&lt;br /&gt;
* Export''' field data '''to''' .csv''' file&lt;br /&gt;
* Plot''' graph''' in '''LibreOffice suite calc'''&lt;br /&gt;
* Save screenshot of a '''view'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Assignment&lt;br /&gt;
|| As an assignment:&lt;br /&gt;
* Simulate the '''Hagen Poiseuille flow''' for the '''pipe''' of '''0.5 cm''' diameter with&lt;br /&gt;
* '''Inlet''' '''velocity''' '''0.05 m/s''' and '''outlet pressure''' '''0 Pascal''' and,&lt;br /&gt;
* Plot graphs of '''velocity''' and '''pressure '''in''' ParaView '''and''' LibreOffice Calc'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| Pls post your timed queries on this website&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off. Thank you for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Simulating-Hagen-Poiseuille-flow-through-a-pipe-in-OpenFOAM/English"/>
				<updated>2020-07-21T05:18:26Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: Created page with &amp;quot;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM  '''Author:''' Divyesh Variya  '''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, ic...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Simulating Hagen Poiseuille flow through a pipe in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, Hagen Poiseuille, Pipe flow, icoFoam, controlDict, Video-Tutorial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| Border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening Slide&lt;br /&gt;
|| Welcome to this tutorial on '''Simulating Hagen Poiseuille flow through a pipe in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit Text editor'''&lt;br /&gt;
&lt;br /&gt;
You may use any other '''text editor''' of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
&lt;br /&gt;
* You should be familiar with '''Hagen Poiseuille flow''' and basic '''Fluid Dynamics '''concepts&lt;br /&gt;
* You should also be familiar with creation of a '''3D pipe Geometry''' in '''OpenFOAM'''&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Problem Setup&lt;br /&gt;
|| In this diagram, a '''section view''' of a '''3D pipe''' is shown.&lt;br /&gt;
&lt;br /&gt;
This describes the '''problem statement'''.&lt;br /&gt;
&lt;br /&gt;
* The '''diameter''' of the '''pipe''' is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
* It has one '''inlet''', one '''outlet''' and a '''cylindrical''' '''wall'''.&lt;br /&gt;
&lt;br /&gt;
* The fluid here is water''' '''and its '''kinematic viscosity''' is taken as '''1e-06'''.&lt;br /&gt;
&lt;br /&gt;
* The '''Inlet velocity '''is '''0.025 m/s '''and''' Outlet pressure '''is''' 0 Pascals '''as shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Check&lt;br /&gt;
&lt;br /&gt;
Highlight '''250'''&lt;br /&gt;
&lt;br /&gt;
Highlight''' laminar'''&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le = 0.06*Re*D&lt;br /&gt;
&lt;br /&gt;
Highlight''' 0.15 m'''&lt;br /&gt;
&lt;br /&gt;
|| Let us check whether our '''geometry''' is suitable or not.&lt;br /&gt;
&lt;br /&gt;
* '''Reynolds number''' of the problem is '''250'''. &lt;br /&gt;
&lt;br /&gt;
* Hence, the flow is '''laminar'''.&lt;br /&gt;
&lt;br /&gt;
* For '''fully developed flow''', length of the '''geometry''' should be greater than the '''Entrance length'''.&lt;br /&gt;
&lt;br /&gt;
* '''Entrance length''' can be calculated by this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* The length we have taken is greater than the '''entrance length'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Solver detail&lt;br /&gt;
|| * To simulate this problem, we will use the '''icoFoam''' solver.&lt;br /&gt;
&lt;br /&gt;
* '''icoFoam''' is a''' transient solver''' for '''incompressible''', '''laminar flow''' of '''Newtonian fluids'''.&lt;br /&gt;
&lt;br /&gt;
* This is the most '''suitable solver''' for '''Hagen Poiseuille flow.'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide : Pressure Boundary Condition&lt;br /&gt;
|| The''' Pressure boundary conditions''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - zero gradient'''&lt;br /&gt;
* At '''outlet - fixed Pressure'''&lt;br /&gt;
* At '''wall - zero gradient'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Velocity Boundary Condition&lt;br /&gt;
|| The''' Velocity boundary condition''' used are,&lt;br /&gt;
&lt;br /&gt;
* At '''inlet - fixed value'''&lt;br /&gt;
* At '''outlet - zero Gradient'''&lt;br /&gt;
* At '''wall - No Slip'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We will use the '''mesh''' that we have created in the tutorial “'''Creating 3D Pipe Geometry and Mesh in OpenFoam'''”.&lt;br /&gt;
|- &lt;br /&gt;
|| Press Ctrl + Alt + T keys&lt;br /&gt;
|| Open the '''terminal''' by pressing the '''Ctrl''', '''Alt''' and '''T''' keys together.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal]&lt;br /&gt;
&lt;br /&gt;
Only Narration&lt;br /&gt;
|| From now onwards please remember to press the '''Enter''' key after typing each '''command.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Navigate to the '''pipe case folder'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv 0.Orig 0'''&lt;br /&gt;
|| Now, '''rename''' '''0.Orig''' folder to''' 0''' by typing this '''command'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''gedit 0/p'''&lt;br /&gt;
|| Let’s open the “'''p'''” file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 2 -2 0 0 0 0];'''&lt;br /&gt;
|| Here we can see, the '''p''' file is in the form of '''pressure divided by density'''.&lt;br /&gt;
&lt;br /&gt;
This means, it is '''kinematic pressure'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''internalField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure''']&lt;br /&gt;
|| Open the file '''pressure.txt''', that you had downloaded in any '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pressure'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p''']&lt;br /&gt;
|| Let me switch back to the “'''p”''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''p” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField'''&lt;br /&gt;
|| Right after '''dimensions''', we have to define the '''initial condition'''.&lt;br /&gt;
&lt;br /&gt;
It could be '''uniform''', '''non-uniform''' or in the form of '''code'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''uniform 0;'''&lt;br /&gt;
|| In this case, we will use the '''initial condition''' as''' uniform 0'''.&lt;br /&gt;
&lt;br /&gt;
This means that the '''kinematic pressure''' inside the entire '''domain''' is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''pressure''' is defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''zeroGradient'''.&lt;br /&gt;
&lt;br /&gt;
'''Zero Gradient boundary '''extrapolates the quantity to the '''patch''' from the nearest '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
So, the value at '''patch''' will be the same as the '''cell value'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''z''' is small and '''G''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; wall'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as the same as '''inlet'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' in '''pressure''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''p'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value 0;'''&lt;br /&gt;
|| Type of '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
'''Value''' given is '''zero'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''p '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit 0/U'''&lt;br /&gt;
|| Now, let’s set the '''initial''' and '''boundary condition''' for '''velocity'''. &lt;br /&gt;
&lt;br /&gt;
To do so, open the '''U''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''dimensions [0 1 -1 0 0 0 0];'''&lt;br /&gt;
|| '''Dimensions''' here are in '''meters per second'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''internalField uniform (0 0 0);'''&lt;br /&gt;
|| '''Velocity''' is a '''vector field''', so the '''internal initial field''' is set as '''uniform (0 0 0)'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''boundaryField''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity''']&lt;br /&gt;
|| Open the '''velocity.txt '''file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''velocity'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] '''Paste '''&lt;br /&gt;
|| Paste the copied contents into the “'''U” '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''boundaryField'''&lt;br /&gt;
|| In the '''boundaryField''', we will specify '''boundary conditions''' for all '''patches''' and '''walls'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| '''Boundary condition''' for '''inlet''' in '''velocity''' is defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type fixedValue;'''&lt;br /&gt;
&lt;br /&gt;
'''value uniform (0 0 0.025);'''&lt;br /&gt;
|| Type of the '''boundary condition''' is '''fixedValue'''.&lt;br /&gt;
&lt;br /&gt;
Value of '''velocity''' is 0.025 m/s in the '''Z direction'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type noSlip;'''&lt;br /&gt;
|| '''Boundary condition''' for the '''wall''' is defined as '''noSlip'''.&lt;br /&gt;
&lt;br /&gt;
This means '''velocity''' at the '''wall '''is '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''U'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''type zeroGradient;'''&lt;br /&gt;
|| '''Boundary condition''' for '''outlet''' is '''zeroGradient''', defined as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''U '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit constant/transportProperties'''&lt;br /&gt;
|| Open '''transport properties''' file from '''constant folder''' in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''nu'''&lt;br /&gt;
|| All '''properties''' of '''fluid''' which remain '''constant''' during the '''simulation''' is to be specified in the '''constant folder'''.&lt;br /&gt;
&lt;br /&gt;
Here, we will set the value of '''kinematic viscosity'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''[0 2 -1 0 0 0 0]'''&lt;br /&gt;
|| Dimensions of '''kinematic viscosity''' are specified here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''transportProperties''']&lt;br /&gt;
&lt;br /&gt;
'''Change: 0.01 &amp;gt;&amp;gt; 1e-06'''&lt;br /&gt;
|| To set the value of '''nu,''' replace '''0.01''' to '''1e-06'''.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''transportProperties '''file and close the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| '''Solve &amp;amp; write control parameters''' can be modified in the '''controlDict''' file.&lt;br /&gt;
&lt;br /&gt;
The '''controlDict '''file is located in the '''system folder'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit system/controlDict'''&lt;br /&gt;
|| Open the '''controlDict''' file in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete '''&lt;br /&gt;
|| Delete the lines from '''application''' to the end of the file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control''']&lt;br /&gt;
|| Open the '''control.txt''' file that you had downloaded in a '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''control'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] '''Paste '''&lt;br /&gt;
&lt;br /&gt;
|| Paste the copied contents into the “'''controlDict” '''file as shown here.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''application icoFoam;'''&lt;br /&gt;
|| First line of the '''controlDict''' file shows the name of the '''solver'''.&lt;br /&gt;
&lt;br /&gt;
In our case it is '''icoFoam'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''startFrom startTime;'''&lt;br /&gt;
&lt;br /&gt;
'''startTime 0;'''&lt;br /&gt;
|| The second and third lines are '''start simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
Our '''simulation''' will start from the value specified in '''start time'''.&lt;br /&gt;
&lt;br /&gt;
Here our '''start time''' is set to '''0'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''stopAt endTime;'''&lt;br /&gt;
&lt;br /&gt;
'''endTime 5;'''&lt;br /&gt;
|| The fourth and fifth lines are '''stop simulation controls'''.&lt;br /&gt;
&lt;br /&gt;
'''Simulation''' will stop at the''' endTime''' of '''5 seconds'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''deltaT 1e-2;'''&lt;br /&gt;
|| Then the value of '''deltaT''' is given, which is '''1e-02'''.&lt;br /&gt;
&lt;br /&gt;
So, it will '''simulate''' for '''5 seconds''' with a '''1e-02 time step'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''writeInterval 100;'''&lt;br /&gt;
|| '''Write interval''' is 100. So it will print and save every 100 '''time-step value''' that '''OpenFOAM''' solves.&lt;br /&gt;
&lt;br /&gt;
So we will get '''results''' written for 1, 2, 3, 4, and 5 seconds.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''controlDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''purgeWrite 2;'''&lt;br /&gt;
|| '''OpenFOAM''' gives the option to save only the last few '''time steps. '''&lt;br /&gt;
&lt;br /&gt;
To enable that option, you can use the '''purgeWrite''' value.&lt;br /&gt;
&lt;br /&gt;
By changing it to 2, we will get the 2 latest updated '''time-step''' results. &lt;br /&gt;
&lt;br /&gt;
The old files will automatically be deleted.&lt;br /&gt;
&lt;br /&gt;
At the end of the '''simulation''' we will get results of 4 &amp;amp; 5 seconds.&lt;br /&gt;
&lt;br /&gt;
This option will save''' space''' on your computer.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Rest of the options are for the format of writing''' data''' files in '''OpenFOAM'''.&lt;br /&gt;
&lt;br /&gt;
We do not need to change them.&lt;br /&gt;
&lt;br /&gt;
Therefore, we won’t be making any more changes to the '''controlDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''controlDict '''file and close the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We are done setting up the '''case'''. &lt;br /&gt;
&lt;br /&gt;
Now we will '''run''' the '''simulation'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type: '''icoFoam'''&lt;br /&gt;
|| To do so, type '''icoFoam''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| It will take some time to '''simulate,''' based on your computer’s '''hardware'''. &lt;br /&gt;
&lt;br /&gt;
For me it took around 4 minutes to '''simulate'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| Once the '''simulation''' is finished, you will get this line at the end.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Formula and Analytical Solution&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Highlight '''2.4 Pa'''&lt;br /&gt;
&lt;br /&gt;
Highlight '''0.05 m/s'''&lt;br /&gt;
&lt;br /&gt;
|| &lt;br /&gt;
* To calculate''' pressure '''at''' inlet,''' let’s put the values of the '''U, L, D '''and '''Po''' in this '''formula'''.&lt;br /&gt;
&lt;br /&gt;
* We will get an '''inlet pressure''' value of '''2.4 Pascal'''. &lt;br /&gt;
&lt;br /&gt;
* '''Maximum velocity''' will be twice of average '''velocity''' as per '''analytical solution'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Result Comparison&lt;br /&gt;
|| &lt;br /&gt;
* From the '''simulation''' we get,&lt;br /&gt;
** '''Maximum velocity''' 0.05 m/s and &lt;br /&gt;
** '''inlet Pressure 2.8 Pascals.'''&lt;br /&gt;
&lt;br /&gt;
* In '''CFD''', there are always some deviations in results of '''analytical''' and '''numerical''' '''solutions'''.&lt;br /&gt;
&lt;br /&gt;
* We will discuss '''results''' in detail later in this series.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
To summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Set up the '''boundary''' and '''initial''' '''conditions'''&lt;br /&gt;
* Set up the '''physical properties'''&lt;br /&gt;
* Set up the '''solve &amp;amp; write control parameter '''and&lt;br /&gt;
* Run the '''simulation'''&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Creating-3D-Pipe-Geometry-and-Mesh-in-OpenFOAM/English</id>
		<title>OpenFOAM-version-7/C2/Creating-3D-Pipe-Geometry-and-Mesh-in-OpenFOAM/English</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php/OpenFOAM-version-7/C2/Creating-3D-Pipe-Geometry-and-Mesh-in-OpenFOAM/English"/>
				<updated>2020-07-20T15:04:25Z</updated>
		
		<summary type="html">&lt;p&gt;Divyesh7: Created page with &amp;quot;'''Title of the script:''' Creating 3D Pipe Geometry and Mesh in OpenFOAM  '''Author:''' Divyesh Variya  '''Keywords:''' OpenFOAM, 3D-Geometry, Pipe, Meshing, ParaView, Pre-Pr...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Title of the script:''' Creating 3D Pipe Geometry and Mesh in OpenFOAM&lt;br /&gt;
&lt;br /&gt;
'''Author:''' Divyesh Variya&lt;br /&gt;
&lt;br /&gt;
'''Keywords:''' OpenFOAM, 3D-Geometry, Pipe, Meshing, ParaView, Pre-Processing, Video-Tutorial, blockMesh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
|- &lt;br /&gt;
|| '''Visual Cue'''&lt;br /&gt;
|| '''Narration'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Opening slide&lt;br /&gt;
|| Welcome to this tutorial on '''Creating 3D Pipe Geometry and Mesh in OpenFOAM.'''&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Learning Objective&lt;br /&gt;
|| In this tutorial, we will learn to:&lt;br /&gt;
&lt;br /&gt;
* Create a '''3D Geometry''' using '''blockMeshDict'''&lt;br /&gt;
* '''Mesh''' a '''3D''' '''geometry'''&lt;br /&gt;
* Label the''' boundary patches'''&lt;br /&gt;
* Check the '''mesh results '''using''' checkMesh command'''&lt;br /&gt;
* View the '''3D geometry''' and '''mesh '''in''' ParaView'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: System Specifications&lt;br /&gt;
|| To record this tutorial, I am using,&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux OS''' version 18.04&lt;br /&gt;
* '''OpenFOAM''' version 7&lt;br /&gt;
* '''ParaView''' version 5.6.0&lt;br /&gt;
* '''gedit''' Text editor&lt;br /&gt;
&lt;br /&gt;
You may use any other editor of your choice.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Prerequisites&lt;br /&gt;
* If not, please go through the prerequisite '''OpenFOAM '''tutorial on https://spoken-tutorial.org&lt;br /&gt;
&lt;br /&gt;
|| As a prerequisite:&lt;br /&gt;
* You should be familiar with creation of a basic '''geometry''' using the '''blockMesh''' utility.&lt;br /&gt;
* If you are not, please go through the prerequisite '''OpenFOAM '''tutorial on this website.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Code Files&lt;br /&gt;
|| &lt;br /&gt;
* The files used in this tutorial are available in the '''Code''' '''Files''' link on this tutorial page &lt;br /&gt;
* Please download and extract them&lt;br /&gt;
* Make a copy and then use them while practising&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Hagen Poiseuille flow through a pipe&lt;br /&gt;
|| &lt;br /&gt;
* In this tutorial, we will learn to create the '''geometry''' for '''Hagen Poiseuille flow through a pipe'''.&lt;br /&gt;
* The problem description of '''Hagen Poiseuille flow through a pipe''' is shown in the diagram.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Pipe Geometry&lt;br /&gt;
|| &lt;br /&gt;
* This is the diagram of the '''geometry''' for '''Hagen Poiseuille flow through a pipe.'''&lt;br /&gt;
* The left and right faces are the '''inlet''' and '''outlet''' respectively.&lt;br /&gt;
* The cylindrical face of the '''geometry''' is a '''wall'''.&lt;br /&gt;
* The '''diameter''' of the pipe is 1 centimeter and its '''length''' is 30 centimeters.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL + ALT + T&lt;br /&gt;
|| Open the '''terminal''' by pressing '''Ctrl''', '''Alt''' &amp;amp; '''T''' keys.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd $FOAM_RUN'''&lt;br /&gt;
|| At the '''prompt''', type the following '''command''' to go to the '''run directory'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Here onwards, please remember to press the '''Enter''' key after typing each '''command'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity pipe'''&lt;br /&gt;
|| Let’s now copy the '''cavity case''' from the '''icoFoam''' '''tutorial directory''' to the '''run directory'''.&lt;br /&gt;
&lt;br /&gt;
Type the following '''command''' to do so.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight: '''pipe'''&lt;br /&gt;
|| Note that the '''cavity case''' is copied to the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''mv pipe/0 pipe/0.Orig'''&lt;br /&gt;
|| In this tutorial we don’t need to define '''initial''' and '''boundary''' '''conditions''' in '''zero''' time.&lt;br /&gt;
&lt;br /&gt;
Type this '''command''' to '''rename''' '''“0”''' folder to '''“0.Orig”'''&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''gedit pipe/system/blockMeshDict'''&lt;br /&gt;
|| The '''blockMeshDict''' file is located in the '''system''' folder.&lt;br /&gt;
&lt;br /&gt;
Open this file in a '''text editor'''. I am doing it in the '''gedit text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict''']&lt;br /&gt;
|| Now we can see the '''blockMeshDict''' file in the '''text editor.'''&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Delete'''&lt;br /&gt;
|| '''Delete''' the lines from '''convertToMeters''' to the end of the file as shown here.&lt;br /&gt;
&lt;br /&gt;
The remaining content is common for all '''blockMeshDict''' files.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''pipe''']&lt;br /&gt;
|| Next, open the '''pipe.txt''' file that you had downloaded in the '''text editor'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; Copy'''&lt;br /&gt;
|| Copy the entire content of the text file.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict''']&lt;br /&gt;
|| Now switch back to the '''blockMeshDict''' file.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict''']&lt;br /&gt;
&lt;br /&gt;
'''Paste '''&lt;br /&gt;
|| And paste the copied contents into the '''blockMeshDict '''file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''0.01'''&lt;br /&gt;
|| Note that all the '''dimensions''' will be in '''centimeters'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Vertices Detail&lt;br /&gt;
|| &lt;br /&gt;
* '''Vertices''' are shown in the slide. &lt;br /&gt;
* Here we are going to use '''18''' '''vertices''' to define the '''geometry''' of a '''pipe'''.&lt;br /&gt;
* For example, '''two reference points''' 0 and 17 are on (0 0 0) and (0 0 30) respectively.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; vertices '''&lt;br /&gt;
|| All '''18''' '''points''' are defined in the '''vertices''' '''section''' in the '''blockMeshDict''' file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Now let me switch back to the '''Slides'''.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Block Detail&lt;br /&gt;
|| &lt;br /&gt;
* Here we will use 5 '''hexahedral blocks''' to define the''' pipe geometry'''.&lt;br /&gt;
* As you can see, the '''center hexahedral block''' is separately shown in the '''figure''' on the right.&lt;br /&gt;
* To '''define''' this '''block''', we need to type the '''back plane’s vertices '''first.&lt;br /&gt;
* The '''vertices''' should be ordered''' anti-clockwise''' when viewed '''along the negative z-axis'''.&lt;br /&gt;
* The '''front plane’s vertices''' should also follow the same order.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Block Detail&lt;br /&gt;
&lt;br /&gt;
Highlight: '''hex (1 2 3 4 9 10 11 12) (8 8 80) simpleGrading (1 1 1)'''&lt;br /&gt;
|| An '''example''' is shown in the '''slide'''.&lt;br /&gt;
&lt;br /&gt;
The same '''block''' can be defined correctly in more than one way.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Block Detail&lt;br /&gt;
&lt;br /&gt;
Highlight: '''(8 8 80)'''&lt;br /&gt;
|| To generate '''3D mesh''' we are using:&lt;br /&gt;
&lt;br /&gt;
* '''8 cells''' in '''X direction''', &lt;br /&gt;
* '''8 cells '''in '''Y direction''' and &lt;br /&gt;
* '''80 cells''' in '''Z direction'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; blocks'''&lt;br /&gt;
|| Other '''4''' '''blocks''' are defined in the '''blockMeshDict''' file as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Arc Detail&lt;br /&gt;
|| For the '''curved geometry''', we need to define the '''edges'''. &lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Arc Detail&lt;br /&gt;
|| &lt;br /&gt;
* There are a total of '''16 arcs''' that we need to define.&lt;br /&gt;
* The '''arcs''' and the '''intermediate points''' are shown in the slide.&lt;br /&gt;
* Note that I have used the '''midpoint''' of the '''arc''' as the '''intermediate point'''.&lt;br /&gt;
* However, '''any other point''' through which the '''arc''' passes is acceptable.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Geometry Arc Detail&lt;br /&gt;
&lt;br /&gt;
Highlight: '''arc 5 6 (0 0.5 0)'''&lt;br /&gt;
|| For example, the''' edge''' from '''Point''' number '''5''' to '''6''' is passing through (0 0.5 0).&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; edges'''&lt;br /&gt;
|| All '''16''' '''arcs''' are defined in the '''edges''' '''section''' in the '''blockMeshDict''' file as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''arc 5 6 (0 0.5 0)'''&lt;br /&gt;
|| The '''curved edge''' connecting '''points 5''' and '''6''' is defined as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''arc'''&lt;br /&gt;
|| The edge is an '''arc'''.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''5 6'''&lt;br /&gt;
|| Its two '''end''' '''points''' are 5 and 6.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''(0 0.5 0)'''&lt;br /&gt;
|| The '''coordinates''' of the '''point''' through which the '''arc''' passes through is 0, 0.5, 0&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Let’s label the '''boundary patches'''.&lt;br /&gt;
&lt;br /&gt;
The '''boundary faces''' should be labelled appropriately.&lt;br /&gt;
&lt;br /&gt;
The labels are used to impose '''boundary conditions''' on the respective faces.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; inlet'''&lt;br /&gt;
|| The '''inlet boundary''' is defined as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt;'''&lt;br /&gt;
|| The''' inlet boundary''' has 5 faces.&lt;br /&gt;
&lt;br /&gt;
These faces are defined as shown.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; outlet and wall'''&lt;br /&gt;
|| The '''outlet '''and''' wall boundary''' is defined as shown.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| Note that all '''boundaries''' have more than one face.&lt;br /&gt;
|- &lt;br /&gt;
|| [gedit - '''blockMeshDict'''] Highlight &lt;br /&gt;
&lt;br /&gt;
'''Selection in the Text Editor &amp;gt;&amp;gt; mergePatchPairs'''&lt;br /&gt;
|| We do not have any '''patches '''or''' internal faces''' to merge.&lt;br /&gt;
&lt;br /&gt;
Therefore, we leave the '''mergePatchPairs''' field empty.&lt;br /&gt;
|- &lt;br /&gt;
|| CTRL+S &amp;gt;&amp;gt; Close Text Editor&lt;br /&gt;
|| Now, save the '''blockMeshDict '''file and close the text editor.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''cd pipe'''&lt;br /&gt;
|| Now, go to the '''terminal''' and navigate to the '''pipe''' directory.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''blockMesh'''&lt;br /&gt;
|| Type '''blockMesh command''' and press '''Enter'''. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''End'''&lt;br /&gt;
|| The '''meshing''' is now complete.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Patches section'''&lt;br /&gt;
|| As we can see in '''terminal results''', three patches are created.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type:&lt;br /&gt;
&lt;br /&gt;
'''checkMesh'''&lt;br /&gt;
|| Now, let’s '''check''' '''mesh''' '''results''' and '''quality'''.&lt;br /&gt;
&lt;br /&gt;
To do that type '''checkMesh''' in the '''terminal''' and press '''Enter'''.&lt;br /&gt;
&lt;br /&gt;
Note that '''M '''in''' checkMesh''' is capital.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| We get the '''results''' printed of the '''mesh''' we created.&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Max skewness = 0.6954 OK.'''&lt;br /&gt;
&lt;br /&gt;
'''Non-orthogonality check OK.'''&lt;br /&gt;
&lt;br /&gt;
'''Max aspect ratio = 30.3404 OK.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Overall domain bounding box '''&lt;br /&gt;
|| Here we can see:&lt;br /&gt;
&lt;br /&gt;
* '''Skewness'''&lt;br /&gt;
&lt;br /&gt;
* '''Orthogonality'''&lt;br /&gt;
&lt;br /&gt;
* '''Aspect ratio'''&lt;br /&gt;
&lt;br /&gt;
* '''Negative volume''' values if they are present&lt;br /&gt;
&lt;br /&gt;
In our case, no negative volume is present.&lt;br /&gt;
&lt;br /&gt;
* '''Bounding box '''coordinates and&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Highlight&lt;br /&gt;
&lt;br /&gt;
'''Overall number of cells of each type:'''&lt;br /&gt;
&lt;br /&gt;
'''hexahedra: 25600'''&lt;br /&gt;
&lt;br /&gt;
'''prisms: 0'''&lt;br /&gt;
&lt;br /&gt;
'''wedges: 0'''&lt;br /&gt;
&lt;br /&gt;
'''pyramids: 0'''&lt;br /&gt;
&lt;br /&gt;
'''tet wedges:0'''&lt;br /&gt;
&lt;br /&gt;
'''tetrahedra:0'''&lt;br /&gt;
&lt;br /&gt;
'''polyhedra: 0'''&lt;br /&gt;
|| &lt;br /&gt;
* '''Number of cells''' with their '''types'''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| [Terminal] Type '''paraFoam'''&lt;br /&gt;
&lt;br /&gt;
|| To view '''mesh''' in '''paraview''' type '''paraFoam''' and press '''Enter'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] Click &lt;br /&gt;
&lt;br /&gt;
'''Apply'''&lt;br /&gt;
|| Click on '''Apply''' on the left side of your window in the '''Properties''' tab.&lt;br /&gt;
&lt;br /&gt;
Now you can see '''pipe geometry''' in the''' Layout window'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Rotate geometry'''&lt;br /&gt;
|| You can''' rotate''' geometry in the '''Layout''' '''window''' by pressing the left mouse button and dragging.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
'''Click on Surface &amp;gt;&amp;gt; Click on Surface with Edges'''&lt;br /&gt;
|| Click on '''Surface''' available in the '''Active Variable Controls.'''&lt;br /&gt;
&lt;br /&gt;
Then change it to '''Surface with Edges'''.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Click on vtkBlockColors &amp;gt;&amp;gt; SolidColor'''&lt;br /&gt;
|| Click on '''vtkBlockColors''' available in the '''Active Variable Controls.''' &lt;br /&gt;
and change it to '''SolidColor'''.&lt;br /&gt;
&lt;br /&gt;
You can now see the '''mesh structure''' of '''pipe geometry''' that we created.&lt;br /&gt;
|- &lt;br /&gt;
|| [ParaView] '''Close ParaView'''&lt;br /&gt;
|| You can close the '''ParaView''' window.&lt;br /&gt;
|- &lt;br /&gt;
|| Only Narration&lt;br /&gt;
|| With this we have come to the end of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Let’s summarize.&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Summary&lt;br /&gt;
|| In this tutorial, we have learnt to,&lt;br /&gt;
&lt;br /&gt;
* Create a '''3D Geometry''' using '''blockMeshDict'''&lt;br /&gt;
* Mesh a '''3D''' '''geometry'''&lt;br /&gt;
* Label the''' boundary patches'''&lt;br /&gt;
* Check the '''mesh results '''using''' checkMesh command'''&lt;br /&gt;
* View the '''3D geometry''' and '''mesh '''in''' ParaView'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: About the Spoken Tutorial Project&lt;br /&gt;
|| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Workshops&lt;br /&gt;
|| We conduct workshops using Spoken Tutorials and give certificates.&lt;br /&gt;
&lt;br /&gt;
Please contact us.&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: Spoken Tutorial Forum&lt;br /&gt;
|| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Forum&lt;br /&gt;
|| &lt;br /&gt;
* Do you have any general/technical questions?&lt;br /&gt;
* Please visit the forum given in the link.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|| Slide: FOSSEE Case Study Project&lt;br /&gt;
|| &lt;br /&gt;
* The FOSSEE team coordinates solving feasible CFD problems of reasonable complexity using OpenFOAM.&lt;br /&gt;
* We give honorarium and certificates to those who do this.&lt;br /&gt;
* For more details, please visit these sites.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|| Slide: Spoken Tutorial &lt;br /&gt;
|| The Spoken Tutorial project is supported by MHRD, Govt. of India.&lt;br /&gt;
&lt;br /&gt;
The script for this tutorial is contributed by Divyesh Variya.&lt;br /&gt;
&lt;br /&gt;
And this is Swetha Sridhar from IIT Bombay signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for joining.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Divyesh7</name></author>	</entry>

	</feed>