Difference between revisions of "OpenFOAM/C3/Using-PyFoam-Utilities/English"
Viraj20feb (Talk | contribs) (Created page with "Tutorial : 22 Name : Using PyFoam Utilities Script : Anmol Sahoo and Rahul Joshi Narration : Rahul Joshi Keywords : OpenFOAM, PyFoam, CFD, Linux, PyFoam utilities,shockTub...") |
Nancyvarkey (Talk | contribs) |
||
| Line 21: | Line 21: | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show Slide : Learning Objectives | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show Slide : Learning Objectives | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| In this tutorial we will learn : | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| In this tutorial we will learn : | ||
| − | |||
* About '''PyFoam Utilities''' | * About '''PyFoam Utilities''' | ||
* How to use '''PyFoam Utilites''' | * How to use '''PyFoam Utilites''' | ||
| − | * How to run and plot | + | * How to run and plot data for the '''shockTube''' case using '''PyFoam Utilites''' |
| − | + | ||
| − | + | ||
|- | |- | ||
| Line 34: | Line 31: | ||
System Requirement | System Requirement | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| To record this tutorial I am using: | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| To record this tutorial I am using: | ||
| − | |||
* '''Ubuntu Linux '''14.04 | * '''Ubuntu Linux '''14.04 | ||
* '''OpenFOAM v2.3.0''' | * '''OpenFOAM v2.3.0''' | ||
* '''PyFoam 0.6.5''' | * '''PyFoam 0.6.5''' | ||
| − | |||
| − | |||
|- | |- | ||
| Line 46: | Line 40: | ||
Pre-requisite | Pre-requisite | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| As a prerequisite user should have : | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| As a prerequisite user should have: |
| − | + | * Basic knowledge of running commands on the '''Linux terminal''' | |
| − | * | + | |
* And some experience of running and analyzing '''OpenFOAM''' cases | * And some experience of running and analyzing '''OpenFOAM''' cases | ||
| Line 55: | Line 48: | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Let me introduce you to '''PyFoam utilities.''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Let me introduce you to '''PyFoam utilities.''' | ||
| − | + | * '''Utilities '''are''' Python programs '''which come inbuilt with '''PyFoam.''' | |
| − | * '''Utilities '''are''' Python programs '''which come inbuilt with '''PyFoam.''' | + | * Each '''utility''' has a specific function. |
| − | + | ||
| − | * Each '''utility''' has a specific function. | + | |
| − | + | ||
* '''Utilities''' are executed from the '''command line.''' | * '''Utilities''' are executed from the '''command line.''' | ||
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : List of Utilities | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : List of Utilities | ||
| + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| List of '''utilites''' that can be viewed using '''tab completion''' | ||
| − | + | |- | |
| − | Open terminal | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Open terminal |
Type '''pyFoam''' and press '''Tab''' twice | Type '''pyFoam''' and press '''Tab''' twice | ||
| − | |||
| − | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Open the '''terminal'''. | |
| − | + | ||
| − | + | ||
| − | Open the terminal | + | |
The list of '''utilities''' can be viewed by | The list of '''utilities''' can be viewed by | ||
| − | |||
* typing '''pyFoam ''' | * typing '''pyFoam ''' | ||
* and then pressing '''Tab '''key twice | * and then pressing '''Tab '''key twice | ||
| − | |||
| − | |||
|- | |- | ||
| Line 89: | Line 73: | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Let me switch back to the slides. | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Let me switch back to the slides. | ||
| − | Each '''utility''' can be executed with the '''–help''' option | + | Each '''utility''' can be executed with the '''–help''' option. |
| − | This helps us to find out what it does and what its options are | + | This helps us to find out what it does and what its options are. |
|- | |- | ||
| Line 107: | Line 91: | ||
* '''PyFoamSamplePlot.py''' | * '''PyFoamSamplePlot.py''' | ||
| − | And then plot the necessary data using '''PyFoam''' | + | And then plot the necessary data using '''PyFoam'''. |
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : PyFoamRunner.py | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : PyFoamRunner.py | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| '''PyFoamRunner.py''' can be used to run '''cases''' | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| '''PyFoamRunner.py''' can be used to run '''cases'''. |
| − | It also generates '''log files '''for later use | + | It also generates '''log files '''for later use. |
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : PyFoamSamplePlot.py | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : PyFoamSamplePlot.py | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| This '''utility''' is used to plot the various data obtained from the previously set up '''sampleDict.''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| This '''utility''' is used to plot the various data obtained from the previously set up '''sampleDict.''' | ||
| − | |||
| − | |||
| − | |||
|- | |- | ||
| Line 140: | Line 121: | ||
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''run/tutorials/compressible/rhoCentralFoam''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''run/tutorials/compressible/rhoCentralFoam''' | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Open the '''Terminal''' | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Open the '''Terminal'''. |
| + | |||
| + | Type the path for '''rhoCentralFoam''' inside '''compressible solver.''' | ||
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''ls''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''ls''' | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Type '''ls''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Type '''ls''' | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''ls''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''ls''' | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| You can see the '''shockTube''' case |
|- | |- | ||
| Line 171: | Line 148: | ||
| − | So type '''cp -r 0.org 0''' | + | So type '''cp -r 0.org 0''' and press '''Enter'''. |
|- | |- | ||
| Line 190: | Line 167: | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Go to the bottom of the file and ''' | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Go to the bottom of the file and remove '''U.Component(0).''' |
| Line 204: | Line 181: | ||
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''cd ..''' | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Type '''cd ..''' | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Go one level back by typing cd .. | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Go one level back by typing '''cd ..''' |
|- | |- | ||
| Line 218: | Line 195: | ||
'''pyFoamRunner.py rhoCentralFoam''' | '''pyFoamRunner.py rhoCentralFoam''' | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Now we will use the '''pyFoam utility of pyFoamRunner.py''' | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Now we will use the '''pyFoam utility''' of '''pyFoamRunner.py''' |
| Line 231: | Line 208: | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Go back to the terminal and type '''ls.''' | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Go back to the '''terminal''' and type '''ls.''' |
| − | We can see the log files which are generated. | + | We can see the '''log''' files which are generated. |
|- | |- | ||
| Line 272: | Line 249: | ||
|- | |- | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : Summary | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:none;padding:0.097cm;"| Show slide : Summary | ||
| − | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| | + | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| In this tutorial, we learnt about '''PyFoam Utilities.''' |
| − | + | ||
| − | + | ||
| − | In this tutorial, we learnt about '''PyFoam Utilities.''' | + | |
| Line 283: | Line 257: | ||
# '''pyFoamRunner.py''' to run the '''solver''' | # '''pyFoamRunner.py''' to run the '''solver''' | ||
# '''pyFoamSamplePlot''' utility to generate a '''png''' file | # '''pyFoamSamplePlot''' utility to generate a '''png''' file | ||
| − | |||
| − | |||
|- | |- | ||
| Line 292: | Line 264: | ||
Forum to answer questions | Forum to answer questions | ||
| style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Please post your timed queries in this forum. | | style="border-top:none;border-bottom:0.05pt solid #000000;border-left:0.05pt solid #000000;border-right:0.05pt solid #000000;padding:0.097cm;"| Please post your timed queries in this forum. | ||
| − | |||
| − | |||
| − | |||
|- | |- | ||
Revision as of 18:14, 17 January 2017
Tutorial : 22
Name : Using PyFoam Utilities
Script : Anmol Sahoo and Rahul Joshi
Narration : Rahul Joshi
Keywords : OpenFOAM, PyFoam, CFD, Linux, PyFoam utilities,shockTube
| |
|
| Show Slide : Title | Welcome to the spoken tutorial on Using PyFoam Utilities |
| Show Slide : Learning Objectives | In this tutorial we will learn :
|
| Show Slide :
System Requirement |
To record this tutorial I am using:
|
| Show Slide :
Pre-requisite |
As a prerequisite user should have:
|
| Show slide : Introduction to PyFoam Utilities | Let me introduce you to PyFoam utilities.
|
| Show slide : List of Utilities | List of utilites that can be viewed using tab completion |
| Open terminal
|
Open the terminal.
|
| Show slide : List of utilities | Let me switch back to the slides.
Each utility can be executed with the –help option.
|
| Show Slide : using utilties
|
We are going to use the below PyFoam Utilities to run the Shock Tube case.
And then plot the necessary data using PyFoam. |
| Show slide : PyFoamRunner.py | PyFoamRunner.py can be used to run cases.
|
| Show slide : PyFoamSamplePlot.py | This utility is used to plot the various data obtained from the previously set up sampleDict. |
| Show slide : Problem definition
|
Shock Tube is an instrument -
In this case, the rectangular tube has low pressure on the right side and high pressure on the left side.
|
| Type run/tutorials/compressible/rhoCentralFoam | Open the Terminal.
Type the path for rhoCentralFoam inside compressible solver. |
| Type ls | Type ls |
| Type ls | You can see the shockTube case |
| Type cd shockTube | Type cd shockTube |
| Point to the 3 files | You can see three folders 0.org , constant and system. |
| On Terminal type
cp -r 0.org 0 |
We need to copy the 0 file from 0.org
|
| Type cd system | Now, go to the system folder by typing
cd system |
| Type
gedit sampleDict |
Open the sampleDict file using gedit. |
| In sampleDict file, do as narrated
|
Go to the bottom of the file and remove U.Component(0).
|
| Save the file and exit | Save and exit the file. |
| Type cd .. | Go one level back by typing cd .. |
| Type blockMesh | Run the command blockMesh to mesh the geometry. |
| Type setFields | After this type setFields to set the pressure boundary condition. |
| Type
pyFoamRunner.py rhoCentralFoam |
Now we will use the pyFoam utility of pyFoamRunner.py
|
| Switch to the terminal and type ls
|
Go back to the terminal and type ls.
|
| Type sample | Now type sample to run the sample utility. |
| Type
pyFoamSamplePlot.py ./ --dir=postProcessing/sets –info |
After this we can plot for various time steps using-
|
| Type pyFoamSamplePlot.py ./ --dir=postProcessing/sets --field=T --mode=timesInOne | gnuplot | Then type pyFoamSamplePlot.py ./ --dir=postProcessing/sets --field=T --mode=timesInOne | gnuplot |
| The output generated will be a png file. | |
| Type ls
|
Type ls.
|
| Show slide : Summary | In this tutorial, we learnt about PyFoam Utilities.
|
| Show Slide
|
Please post your timed queries in this forum. |
| Show Slide
|
Please post your general queries on OpenFOAM in this forum. |
| Show Slide
|
The FOSSEE team coordinates the TBC project. |
| Show Slide
Acknowledgement
|
The Spoken Tutorial Project is funded by NMEICT, MHRD, Govt. of India
|
| Thank You | This is Rahul Joshi from IIT Bombay signing off. Thanks for watching |