SlideShare a Scribd company logo
1 of 24
Download to read offline
Tutorial to set up a case for
chtMultiRegionFoam in OpenFOAM
2.0.0
Arpit Singhal
University of Luxembourg
March 3, 2014
The OpenFOAM-solver chtMultiRegionFoam is meant to be used for heat-
transfer between a solid and a fluid originally. As it does work with different
regions of different properties, the setup is therefore different from the other
OpenFOAM cases.
This tutorial is written for setting up a basic case for chtMultiRegionFoam
(cMRF) in an Openfoam.
tutorial
Contents 1
Contents
1 Introduction 2
2 Basic Workflow 3
3 chtMRF Case Setup 4
3.1 Geometry and Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 Creating the Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.1 Declaring the Regions . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.2 Defining the Region by Zones . . . . . . . . . . . . . . . . . . . . 6
3.3 Splitting the Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.4 Necessary Files and Folders . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.4.1 Files setup by the user . . . . . . . . . . . . . . . . . . . . . . . . 9
3.4.2 Files setup by OpenFOAM utilities . . . . . . . . . . . . . . . . . 15
4 Running the case 18
5 Using scripting 18
6 Appendice 21
tutorial
1 Introduction 2
1 Introduction
What is meant by ”multiregion multi physics modeling”? It is inherently-coupled physics
on disparate continua (e.g. fluid, solid, different solids). In multiregion multi physics
separate governing equations for each continuum/region are solved, as shown in 1.1
seperate governing equations will be solved for Region 1 and Region 2 depending upon
their phase and Γ represents a region interface. A region can be defined as coherent
continum of the same phase.
Figure 1.1: Example
Generally two different approaches to solving such problems are distinguished:
• Monolithic: use same primitive variables, cast governing equations in terms of
these variables, solve a single coupled matrix equation system
• Partitioned: separate governing equations, solve separate matrix equation systems,
couple at the boundary interface, sub-iterate until coupled convergence is reached
Here, we focus on partitioned approaches using OpenFOAM’s multiregion function-
ality (conjugate heat/mass transfer). For a multiregion partitioned solver the working
steps are as follows:
1. Define multiple meshes, one for each ”region”
2. Create field variables on each mesh
3. Solve separate governing equations on each mesh
4. Multiregion coupling at the boundary interface between regions
5. Subiterate until fully-coupled solution is reached
tutorial
2 Basic Workflow 3
2 Basic Workflow
The basic work flow for a case setup is explained in fig. 2.1.
Create a Mesh of the full domain
Define regions inside the domain
by selecting cells (using cellSet)
Create cell zones from
the created cellSets
Split mesh into regions
according to defined zones
Basic work flow of a chtMultiRegion case
Run case
Prepare a general OpenFoam Case
Create patches and fields for all regions
changeDict
Define coupled patches
Define boundary conditions
Define region properties
Figure 2.1: The case visualization in 2D
tutorial
3 chtMRF Case Setup 4
3 chtMRF Case Setup
In this case we have four different regions (Air1, Air2, Solid1 and Solid2). The
case is a simple set up with warm solid parts (Solid1 and Solid2), which are subjected
to fluid parts (Air1 and Air2). In this case we are not taking into account any airflow
(i.e. there is no inlet or outlet airflow) but the buoyancy effects are considered, while
solving the case. There will be heat transfer taking place between the warm solid parts
and the fluid parts.
3.1 Geometry and Mesh
A graphical representation of the geometry can be seen in Fig. 3.1.
The geometry is defined and then meshed using the OpenFOAM blockMesh tool. After
Air2_to_Air1
Air1_to_Solid1
Air2_to_Solid2Solid1_to_Solid2
minX
maxY
maxX
minY
x
y
z
Air1_to_Solid2
Figure 3.1: The case visualization in 2D
running the blockMesh utility by typing
$ blockMesh
tutorial
3.2 Creating the Regions 5
the mesh is created as depicted in fig.3.2.
Figure 3.2: Mesh of the full domain
3.2 Creating the Regions
The regions are created in the domain depending upon their phases and they are created
on the basis of the zones defined.
3.2.1 Declaring the Regions
The regions and their property type are given in table 3.1.
Table 3.1: Table for region properties
Region Type
Air1 fluid
Solid1 solid
Air2 fluid
Solid2 solid
Every region has several patches for which boundary or coupling conditions have to
be specified. Thus, a patch can be of the following two types:
• boundary patch
tutorial
3.2 Creating the Regions 6
• coupling patch
A boundary patch is a regular type patch for which the user may define any possible
boundary condition available in OpenFOAM. Coupling patches are those patches where
the solutions of the different regions are coupled. A coupling patch belongs to a so-
called coupled patch pair. Such a pair consists of coinciding patches, one associated with
each region. Table 3.2 lists all patches, the region they belong to and their type for the
presented case.
Table 3.2: Table of patches
Patch Regions Type
minX Air1, Solid1 boundary patch
maxX Air2, Solid2 boundary patch
minY Solid1, Solid2 boundary patch
maxY Air1, Air2 boundary patch
minZ Air1, Air2, Solid1, Solid2 boundary patch
maxZ Air1, Air2, Solid1, Solid2 boundary patch
Solid1 to Solid2 Solid1, Solid2 coupling patch
Air1 to Solid1 Solid1, Air1 coupling patch
Air1 to Solid2 Air1, Solid2 coupling patch
Air1 to Air2 Air1, Air2 coupling patch
Air2 to Solid2 Air2, Solid2 coupling patch
3.2.2 Defining the Region by Zones
In the presented case the following regions must be created: Air1, Air2, Solid1 and
Solid2. In order to create these regions the domain is divided into zones. To do so a
subset of cells within the domain is selected to form a so-called cellSet. A cellSet is a
random selection of cells from the domain, whereas a zone is a coherent subset of cells
which finally can be used to define a region. According to the cellSets four zones are
defined which mark the different regions.
In order to define cellSets and cellZones a OpenFOAM commandline utility called setSet
(topoSet in newer versions of OpenFOAM) is used. This tool requires a dictionary-file as
input. Thus, within the case folder a file ending with .setSet must exist, which contains
the settings used to define the different cellSets/cellZones/regions in the domain. The
following command starts the utility with the dictionary file that contains the commands
to be executed.
tutorial
3.3 Splitting the Mesh 7
$ setSet −batch makeCellSets . setSet
An example of the dictionary file of the presented case is attached for simplicity (Listing
1).
Listing 1: Extract from makeCellSets.setSet
1 c e l l S e t Solid1 new boxToCell (0 0 0 )(10 0.3 1)
cellZoneSet Solid1 new setToCellZone Solid1
c e l l S e t Solid2 new boxToCell (10 0 0 )(20 0.5 1)
5 cellZoneSet Solid2 new setToCellZone Solid2
c e l l S e t Air1 new boxToCell (0 0.3 0 )(10 1 1)
cellZoneSet Air1 new setToCellZone Air1
10 c e l l S e t Air2 new boxToCell (10 0.5 0 )(20 1 1)
cellZoneSet Air2 new setToCellZone Air2
The first two lines used in the .setSet file are briefly explained as:
c e l l S e t Solid1 new boxToCell (0 0 0) (10 0.3 1)
This creates a new cellSet from a selection of cells. The new action shows it will
be a new set. The name of the cellSet is Solid1 and the source for the cellSet-function
is the boxToCell function. The numbers in brackets are parameters to the boxToCell-
function: All cells contained within the rectangular box spanning between the points
with coordinates (0 0 0) and (10 0.3 1) are selected for the cellSet Solid1. The line
cellZoneSet Solid1 new setToCellZone Solid1
builds a cellZoneSet from an existing cellSet (here using Solid1). Thus, within the
original domain a new zone has been created as depicted in fig.3.3.
This can be repeated in order to define the desired zones representing regions within
the domain.
3.3 Splitting the Mesh
After the user has defined all necessary regions by creating zones for them as described in
the previous section the mesh of the domain has to be split into several disjoint meshes.
Note that the originally created mesh of the full domain will be used within the regions.
tutorial
3.4 Necessary Files and Folders 8
Figure 3.3: Zone created by cellZone from the entire domain
Thus, proper grid resolution for the regional meshes must already be accounted for when
creating the mesh of the full domain.
$ splitMeshRegions −cellZones −overwrite
The splitted mesh can be checked/visualized in paraview using the command as shown
in the listing3.3 for Air1
$ paraFoam −touch −region Air1
Then in paraview, *.OpenFoam file should be loaded and can be visualized. The splitted
mesh is shown in fig. 3.4.
3.4 Necessary Files and Folders
A typical OpenFOAM case directory consists of the following three folders:
• 0
• constant
• system
This general case structure is also kept for multiregion cases. The final correct setup of
a multiregion case is shown in fig.3.5. Note that for each region a subdirectory containing
tutorial
3.4 Necessary Files and Folders 9
Figure 3.4: Splitted mesh
the information for the particular region exists. Some of the files are manually created
by the user while others are created by the OpenFOAM utilities. It is explained in the
further sections in detail.
In the following sections details about the individual directories will be given.
3.4.1 Files setup by the user
When starting a new multiregion case the directories and their content highlighted in
fig. 3.6 must be created manually by the user according to the problem definition.
0 directory: First, manually bring in the necessary field files as usual. For a chtMulti-
RegionFoam case it is necessary to have files for:epsilon, k, p, p rgh, T, U, Ychar and Ypmma.
These files are identical to what one would find in any other chtMultiRegionFoam case
/0-directory.
For the solid regions:T, Ychar and Ypmma are necessary, whereas for the fluid regions:epsilon, g, k,
are the required files.
constant directory: As is any standard OpenFOAM case, the constant folder must
contain a standard polymesh directory, including a standard blockMeshDict-file, which
tutorial
3.4 Necessary Files and Folders 10
Figure 3.5: Final case structure of a multiregion case before running the solver
tutorial
3.4 Necessary Files and Folders 11
Files for all desired fields
have to be created inside
0 directory by the user.
Folders for each region must
be created by the user. They
should contain default files for
any fluid and solid.
Defines the geometry and
mesh the full domain.
Defines desired regions
and their property.
Folders for each region must
be created by the user. They
should contain default files
for any fluid and solid. The
user must add and edit the
changeDictionaryDict
Figure 3.6: Case structure as prepared by the user before running scripts
tutorial
3.4 Necessary Files and Folders 12
created by splitMesh:
For each region a folder
is created inside the
0 folder and all originally
field files from the 0
folder are copied into the
region folders
created by splitMesh:
The mesh is splitted into
the different regions and
for every region a
separate mesh is defined.
created by changeDict:
This file defines all the
patches of a particular
region.
modified by changeDict:
boundary, initial and
coupling conditions for all
fields are modified according
to the changeDictionaryDict
file of the region
Figure 3.7: Files and directories created by OpenFOAM utilities
tutorial
3.4 Necessary Files and Folders 13
defines the full domain and its mesh.
In contrast to a standard case, the files defining the other properties have to go into the
different regional folders, i.e. transportProperties and thermophysicalProperties
within the folders for fluid regions and solidThermophysicalProperties within the
folders for the solid regions as shown in listing3 and listing4 .
Within the constant-folder it is necessary to produce all the region folders. Addition-
ally within the constant folder it also is necessary to build (or copy from elsewhere) a
file called regionProperties. This file assigns the physical phase to each region: Either
fluid or solid. An example for this file can be seen in the listing 2.
Listing 2: Extract from regionProperties
// ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ //
fluidRegionNames ( air1 air2 ) ;
solidRegionNames ( s o l i d 1 s o l i d 2 ) ;
// ∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗ //
Inside the solver fluidRegions and solidRegions are treated differently by solving
different governing equations for each phase.
For the fluid regions the default constant files should be included from any chtMulti-
RegionFoam case/constant file. For the fluid regions, the fluid region should contain a
thermophysicalProperties file containing the properties of the fluid in the fluid region.
Like the Air1 thermophysicalProperties file contains:
Listing 3: Extract from Air1 thermophysicalProperties file
mixture
{
specie
{
nMoles 1;
molWeight 2 8 . 9 ;
}
thermodynamics
{
tutorial
3.4 Necessary Files and Folders 14
Cp 1000;
Hf 0;
}
transport
{
mu 1.8 e −05;
Pr 0 . 7 ;
}
}
Similarly for solid regions a solidThermophysicalProperties must exist with the
folder of the region, an example of such a solidThermophysicalProperties is given
for Solid1:
Listing 4: Extract from Solid1 solidThermophysicalProperties file
constSolidThermoCoeffs
{
//− thermo properties
rho rho [1 −3 0 0 0 0 0] 8000;
Cp Cp [0 2 −2 −1 0 0 0] 450;
K K [1 1 −3 −1 0 0 0] 80;
//− radiation properties
kappa kappa [0 −1 0 0 0 0 0] 0;
sigmaS sigmaS [0 −1 0 0 0 0 0] 0;
emissivity emissivity [0 0 0 0 0 0 0] 0;
//− chemical properties
Hf Hf [0 2 −2 0 0 0 0] 0;
}
.
.
.
. . . . . .
. .
}
tutorial
3.4 Necessary Files and Folders 15
system directory: In the system directory, once again set up the folders for the regions.
In each region folder there should be a changeDictionaryDict file, which contains
details about the necessary fields in the region like T, U, etc.
Get a working controlDict file, for example from any tutorial into this folder. Af-
terwards get a dummy fvSchemes file. This one is the same as any other fvSchemes,
except for the different functions containing no values between the curly brackets. Fur-
theron one has to get a fvSolution which only defines the outer correctors into this
folder. It is optional to get a decomposeParDict file in case one opts for running parallel
computations. For all of the different regional folders: Get a decomposeParDict file
and get full fvSchemes and fvSolution files into the folders. For the latter ones, keep
in mind that they will be different for the fluids and for the solids.
3.4.2 Files setup by OpenFOAM utilities
Most of the necessary case files and folder (This is highlighted in 3.7 for the different
regions are created by automated generation using scripts and OpenFOAM utilities.
The most important OpenFOAM utilities for a multiregion case are:
splitMesh creates the polyMesh directories and their content within the constant/regionXYZ/
folders;
additionally it creates 0/regionXYZ/ directories for all regions and copies all the
field files existing in the 0 directory into the 0/regionXYZ/ directories
changeDictionary uses changeDictionaryDict files located in system/regionXYZ/ fold-
ers to create initial, boundary and coupling conditions for all fields existing in
0/regionXYZ/ directory for all regions
0 directory: During execution of splitMesh the user created field files are copied to
the region subdirectories. As a next step unnecessary fields are removed for some regions
(see extract given in Listing 5) and only those being part of the governing equations are
kept (for example solids are assumed to be stationary, thus no velocity field is required).
Listing 5: Extract from Allrun script
# remove f l u i d f i e l d s from s o l i d regions
for i in s o l i d 1 s o l i d 2
do
rm −f 0∗/ $i /{mut , alphat , epsilon , k , p ,U, p rgh}
tutorial
3.4 Necessary Files and Folders 16
done
# remove s o l i d f i e l d s from f l u i d regions
for i in air1 air2
do
rm −f 0∗/ $i /{Ychar ,Ypmma}
done
Now the initial, boundary and coupling conditions for all fields in every region have to
be specified appropriately. In order to do so the commandline utility changeDictionary
is used. For example for the region Air1 the following line must be executed:
$ changeDictionary −region Air1 > log . changeDictionary . Air1 2>&1
The utility expects a file called changeDictionaryDict to exist within the folder system/Air/.
Initial and coupling condition of the regions are defined with in changeDictionaryDict.
Boundary conditions for the boundaries on the outside of the complete simulation do-
main and boundary conditions or so-called coupling conditions for any of the coupling
patches between the regions are built using the following scheme: For example for region
Air1 in the changeDictionaryDict file contains the following code for the T field:
T
{
i n t e r n a l F i e l d uniform 300;
boundaryField
{
”.∗”
{
type zeroGradient ;
}
” a i r 1 t o .∗”
{
type compressible : : turbulentTemperatureCoupledBaffleMixed ;
neighbourFieldName T;
. . .
}
tutorial
3.4 Necessary Files and Folders 17
}
}
In this example the boundary patches are all treated the same (using a wildcard ".*")
and are given the boundary conditions of type zeroGradient. For the coupling patch
there is special kind of boundary condition required (here
compressible::turbulentTemperatureCoupledBaffleMixed).
The keyword neighbourFieldName indicates that the T field of air1 is coupled to the
T field of the other regions.
Similarly for all other regions, the initial, boundary and coupling conditions must be
taken care of.
In each of the region folders a file called cellToRegion is created during execution of
the changeDictionaryDict command. The content of these files are like any other
field file but not associated to a specific field. The BC type is either zeroGradient or
calculated. Possibly other parameters would work as well, but only these have been
tested. In any case every coupling patches to other regions have to be defined of type
calculated whereas boundary patches (to outside of domain) are of type zeroGradient.
for Air1 the entry used is shown by listing 6
Listing 6: Extract from cellToRegion
boundaryField
{
maxY
{
type zeroGradient ;
}
minX
{
type zeroGradient ;
}
minZ
{
type zeroGradient ;
}
maxZ
tutorial
4 Running the case 18
{
type zeroGradient ;
}
a i r 1 t o a i r 2
{
type calculated ;
value uniform 0;
}
a i r 1 t o s o l i d 2
{
type calculated ;
value uniform 0;
}
a i r 1 t o s o l i d 1
{
type calculated ;
value uniform 0;
}
}
constant directory: In the constant folder, the splitMesh utility creates a seperate
mesh for each region. This can be seen in the fig. 3.7
4 Running the case
After following each step as defined in the above tutorial. The case can be executed by
using the command in the terminal as depicted in the listing. 4
$ chtMultiRegionFoam
5 Using scripting
An Allrun can be explained as a script file which contains all the commands used to
execute the case, for example in this case the Allrun used can be seen as in Listing
tutorial
5 Using scripting 19
shown in 5.1. So just executing the Allrun will now run the case, instead of typing each
command seperately in the terminal.
tutorial
5 Using scripting 20
Figure 5.1: Allrun script
tutorial
6 Appendice 21
6 Appendice
Listing 7: Extract from Allrun
#!/bin/sh
cd ${0%/∗} | | exit 1 # run from t h i s directory
RUNPAR=”YES” ;
# Source t u t o r i a l run functions
. $WM PROJECT DIR/bin/ t o o l s /RunFunctions
# −−− (A) −− Defining geometry and mesh of f u l l domain
runApplication blockMesh
# −−− (B) −− Creating the regions in two steps :
# 1) defining c e l l S e t s
# 2) creating cellZones which define the regions
runApplication setSet −batch makeCellSets . setSet
# −−− (C) −− S p l i t t i n g the mesh according to the defined regions
runApplication splitMeshRegions −cellZones −overwrite
exit
# −−− (D) −− Remove unnecessary f i e l d f i l e s from regions
#
# −−−− (D. 1 ) − Remove f l u i d f i e l d s from s o l i d regions
for i in s o l i d 1 s o l i d 2
do
rm −f 0∗/ $i /{mut , alphat , epsilon , k , p ,U, p rgh}
done
tutorial
6 Appendice 22
# −−−− (D. 2 ) − Remove s o l i d f i e l d s from f l u i d regions
for i in air1 air2
do
rm −f 0∗/ $i /{Ychar ,Ypmma}
done
# −−− (E) −− Define i n i t i a l , boundary and coupling conditions
# for a l l f i e l d s
# of a l l regions
#
# loop over regions
for i in air1 air2 s o l i d 1 s o l i d 2
do
changeDictionary −region $i > log . changeDictionary . $i 2>&1
done
# −−− (F) −− RUN case
# choose between PARALLEL or SEQUENTIAL RUN
i f [ ”$RUNPAR” = ”YES” ] ;
then
echo ’ −−− Running in p a r a l l e l mode ’ ;
# Decompose
for i in air1 air2 s o l i d 1 s o l i d 2
do
decomposePar −region $i > log . decomposePar . $i 2>&1
done
# Run
mpirun . openmpi −np 4 chtMultiRegionFoam −p a r a l l e l > log
# Reconstruct
for i in air1 air2 s o l i d 1 s o l i d 2
tutorial
6 Appendice 23
do
reconstructPar −region $i > log . reconstructPar . $i2 >&1
done
e l s e
echo ’ −−− Running in sequential mode ’ ;
#−− Run on s i n g l e processor
chtMultiRegionFoam > log
f i
echo
echo ” creating f i l e s for paraview post−processing ”
echo
for i in s o l i d 1 s o l i d 2 air1 air2
do
paraFoam −touch −region $i
done
# −−−−−−−−−−−−−−−−−− end−of−f i l e
tutorial

More Related Content

What's hot

OpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件について
OpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件についてOpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件について
OpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件についてFumiya Nozaki
 
オープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみた
オープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみたオープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみた
オープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみたFumiya Nozaki
 
OpenFoamの混相流solver interFoamのパラメータによる解の変化
OpenFoamの混相流solver interFoamのパラメータによる解の変化OpenFoamの混相流solver interFoamのパラメータによる解の変化
OpenFoamの混相流solver interFoamのパラメータによる解の変化takuyayamamoto1800
 
Limited Gradient Schemes in OpenFOAM
Limited Gradient Schemes in OpenFOAMLimited Gradient Schemes in OpenFOAM
Limited Gradient Schemes in OpenFOAMFumiya Nozaki
 
自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた
自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた
自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた守淑 田村
 
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-Fumiya Nozaki
 
Turbulence Models in OpenFOAM
Turbulence Models in OpenFOAMTurbulence Models in OpenFOAM
Turbulence Models in OpenFOAMFumiya Nozaki
 
OpenFOAMの壁関数
OpenFOAMの壁関数OpenFOAMの壁関数
OpenFOAMの壁関数Fumiya Nozaki
 
Customization of LES turbulence model in OpenFOAM
Customization of LES turbulence	 model in OpenFOAMCustomization of LES turbulence	 model in OpenFOAM
Customization of LES turbulence model in OpenFOAMmmer547
 
OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方
OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方
OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方takuyayamamoto1800
 
OpenFOAMにおける相変化解析
OpenFOAMにおける相変化解析OpenFOAMにおける相変化解析
OpenFOAMにおける相変化解析takuyayamamoto1800
 
Basic Boundary Conditions in OpenFOAM v2.4
Basic Boundary Conditions in OpenFOAM v2.4Basic Boundary Conditions in OpenFOAM v2.4
Basic Boundary Conditions in OpenFOAM v2.4Fumiya Nozaki
 
About multiphaseEulerFoam
About multiphaseEulerFoamAbout multiphaseEulerFoam
About multiphaseEulerFoam守淑 田村
 
Inter flowによる軸対称milkcrown解析
Inter flowによる軸対称milkcrown解析Inter flowによる軸対称milkcrown解析
Inter flowによる軸対称milkcrown解析守淑 田村
 
Dynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAMDynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAMFumiya Nozaki
 
OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』
OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』
OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』Fumiya Nozaki
 
OpenFOAMによる混相流シミュレーション入門
OpenFOAMによる混相流シミュレーション入門OpenFOAMによる混相流シミュレーション入門
OpenFOAMによる混相流シミュレーション入門takuyayamamoto1800
 
OpenFOAM Programming Tips
OpenFOAM Programming TipsOpenFOAM Programming Tips
OpenFOAM Programming TipsFumiya Nozaki
 

What's hot (20)

OpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件について
OpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件についてOpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件について
OpenFOAM の cyclic、cyclicAMI、cyclicACMI 条件について
 
オープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみた
オープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみたオープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみた
オープンソースの CFD ソフトウェア SU2 のチュートリアルをやってみた
 
OpenFoamの混相流solver interFoamのパラメータによる解の変化
OpenFoamの混相流solver interFoamのパラメータによる解の変化OpenFoamの混相流solver interFoamのパラメータによる解の変化
OpenFoamの混相流solver interFoamのパラメータによる解の変化
 
Limited Gradient Schemes in OpenFOAM
Limited Gradient Schemes in OpenFOAMLimited Gradient Schemes in OpenFOAM
Limited Gradient Schemes in OpenFOAM
 
自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた
自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた
自宅PCでinterFoamを使ってミルククラウンの計算ができるかやってみた
 
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
OpenFOAM -空間の離散化と係数行列の取り扱い(Spatial Discretization and Coefficient Matrix)-
 
Turbulence Models in OpenFOAM
Turbulence Models in OpenFOAMTurbulence Models in OpenFOAM
Turbulence Models in OpenFOAM
 
OpenFOAMの壁関数
OpenFOAMの壁関数OpenFOAMの壁関数
OpenFOAMの壁関数
 
Customization of LES turbulence model in OpenFOAM
Customization of LES turbulence	 model in OpenFOAMCustomization of LES turbulence	 model in OpenFOAM
Customization of LES turbulence model in OpenFOAM
 
OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方
OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方
OpenFOAMの混相流用改造solver(S-CLSVOF法)の設定・使い方
 
OpenFOAMにおける相変化解析
OpenFOAMにおける相変化解析OpenFOAMにおける相変化解析
OpenFOAMにおける相変化解析
 
Basic Boundary Conditions in OpenFOAM v2.4
Basic Boundary Conditions in OpenFOAM v2.4Basic Boundary Conditions in OpenFOAM v2.4
Basic Boundary Conditions in OpenFOAM v2.4
 
About multiphaseEulerFoam
About multiphaseEulerFoamAbout multiphaseEulerFoam
About multiphaseEulerFoam
 
Inter flowによる軸対称milkcrown解析
Inter flowによる軸対称milkcrown解析Inter flowによる軸対称milkcrown解析
Inter flowによる軸対称milkcrown解析
 
Dynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAMDynamic Mesh in OpenFOAM
Dynamic Mesh in OpenFOAM
 
FMU4FOAM
FMU4FOAMFMU4FOAM
FMU4FOAM
 
Basic openfoa mtutorialsguide
Basic openfoa mtutorialsguideBasic openfoa mtutorialsguide
Basic openfoa mtutorialsguide
 
OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』
OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』
OpenFOAM v2.3.0のチュートリアル 『oscillatingInletACMI2D』
 
OpenFOAMによる混相流シミュレーション入門
OpenFOAMによる混相流シミュレーション入門OpenFOAMによる混相流シミュレーション入門
OpenFOAMによる混相流シミュレーション入門
 
OpenFOAM Programming Tips
OpenFOAM Programming TipsOpenFOAM Programming Tips
OpenFOAM Programming Tips
 

Viewers also liked

OpenFOAM for beginners: Hands-on training
OpenFOAM for beginners: Hands-on trainingOpenFOAM for beginners: Hands-on training
OpenFOAM for beginners: Hands-on trainingJibran Haider
 
Adjoint Shape Optimization using OpenFOAM
Adjoint Shape Optimization using OpenFOAMAdjoint Shape Optimization using OpenFOAM
Adjoint Shape Optimization using OpenFOAMFumiya Nozaki
 
Semcon oscic10 des_20101105_captured
Semcon oscic10 des_20101105_capturedSemcon oscic10 des_20101105_captured
Semcon oscic10 des_20101105_capturedUlf Bunge
 
Suse Studio: "How to create a live openSUSE image with OpenFOAM® and CFD tools"
Suse Studio: "How to create a live openSUSE image with  OpenFOAM® and CFD tools"Suse Studio: "How to create a live openSUSE image with  OpenFOAM® and CFD tools"
Suse Studio: "How to create a live openSUSE image with OpenFOAM® and CFD tools"Baltasar Ortega
 
openFoam Visualisation Rendering Using Blender
openFoam Visualisation Rendering Using BlenderopenFoam Visualisation Rendering Using Blender
openFoam Visualisation Rendering Using BlenderJulien de Charentenay
 
openFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScale
openFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScaleopenFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScale
openFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScaleJulien de Charentenay
 
OpenFOAMのinterfoamによる誤差
OpenFOAMのinterfoamによる誤差OpenFOAMのinterfoamによる誤差
OpenFOAMのinterfoamによる誤差takuyayamamoto1800
 
Chapter 10. VOF Free Surface Model
Chapter 10. VOF Free Surface ModelChapter 10. VOF Free Surface Model
Chapter 10. VOF Free Surface ModelRay Young
 
OpenFOAM の Function Object 機能について
OpenFOAM の Function Object 機能についてOpenFOAM の Function Object 機能について
OpenFOAM の Function Object 機能についてFumiya Nozaki
 
A first order hyperbolic framework for large strain computational computation...
A first order hyperbolic framework for large strain computational computation...A first order hyperbolic framework for large strain computational computation...
A first order hyperbolic framework for large strain computational computation...Jibran Haider
 
OpenFOAM LES乱流モデルカスタマイズ
OpenFOAM LES乱流モデルカスタマイズOpenFOAM LES乱流モデルカスタマイズ
OpenFOAM LES乱流モデルカスタマイズmmer547
 

Viewers also liked (17)

OpenFOAM for beginners: Hands-on training
OpenFOAM for beginners: Hands-on trainingOpenFOAM for beginners: Hands-on training
OpenFOAM for beginners: Hands-on training
 
report
reportreport
report
 
CFD - OpenFOAM
CFD - OpenFOAMCFD - OpenFOAM
CFD - OpenFOAM
 
OpenFOAM Training v5-1-en
OpenFOAM Training v5-1-enOpenFOAM Training v5-1-en
OpenFOAM Training v5-1-en
 
Adjoint Shape Optimization using OpenFOAM
Adjoint Shape Optimization using OpenFOAMAdjoint Shape Optimization using OpenFOAM
Adjoint Shape Optimization using OpenFOAM
 
THESIS
THESISTHESIS
THESIS
 
Semcon oscic10 des_20101105_captured
Semcon oscic10 des_20101105_capturedSemcon oscic10 des_20101105_captured
Semcon oscic10 des_20101105_captured
 
Suse Studio: "How to create a live openSUSE image with OpenFOAM® and CFD tools"
Suse Studio: "How to create a live openSUSE image with  OpenFOAM® and CFD tools"Suse Studio: "How to create a live openSUSE image with  OpenFOAM® and CFD tools"
Suse Studio: "How to create a live openSUSE image with OpenFOAM® and CFD tools"
 
rhoCentralFoam in OpenFOAM
rhoCentralFoam in OpenFOAMrhoCentralFoam in OpenFOAM
rhoCentralFoam in OpenFOAM
 
openFoam Visualisation Rendering Using Blender
openFoam Visualisation Rendering Using BlenderopenFoam Visualisation Rendering Using Blender
openFoam Visualisation Rendering Using Blender
 
openFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScale
openFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScaleopenFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScale
openFoam Hangout on Air #2 - Cloud Simulation, presentation by SimScale
 
OpenFOAMのinterfoamによる誤差
OpenFOAMのinterfoamによる誤差OpenFOAMのinterfoamによる誤差
OpenFOAMのinterfoamによる誤差
 
Avinash_PPT
Avinash_PPTAvinash_PPT
Avinash_PPT
 
Chapter 10. VOF Free Surface Model
Chapter 10. VOF Free Surface ModelChapter 10. VOF Free Surface Model
Chapter 10. VOF Free Surface Model
 
OpenFOAM の Function Object 機能について
OpenFOAM の Function Object 機能についてOpenFOAM の Function Object 機能について
OpenFOAM の Function Object 機能について
 
A first order hyperbolic framework for large strain computational computation...
A first order hyperbolic framework for large strain computational computation...A first order hyperbolic framework for large strain computational computation...
A first order hyperbolic framework for large strain computational computation...
 
OpenFOAM LES乱流モデルカスタマイズ
OpenFOAM LES乱流モデルカスタマイズOpenFOAM LES乱流モデルカスタマイズ
OpenFOAM LES乱流モデルカスタマイズ
 

Similar to Tutorial to set up a case for chtMultiRegionFoam in OpenFOAM 2.0.0

Steady state CFD analysis of C-D nozzle
Steady state CFD analysis of C-D nozzle Steady state CFD analysis of C-D nozzle
Steady state CFD analysis of C-D nozzle Vishnu R
 
Conditions for Stretched Hosts Cluster Support on EMC VPLEX Metro
Conditions for Stretched Hosts Cluster Support on EMC VPLEX MetroConditions for Stretched Hosts Cluster Support on EMC VPLEX Metro
Conditions for Stretched Hosts Cluster Support on EMC VPLEX MetroEMC
 
Multiprocessors(performance and synchronization issues)
Multiprocessors(performance and synchronization issues)Multiprocessors(performance and synchronization issues)
Multiprocessors(performance and synchronization issues)Gaurav Dalvi
 
Programming using Open Mp
Programming using Open MpProgramming using Open Mp
Programming using Open MpAnshul Sharma
 
Advanced FEM and Meshfree Class Workshop.pdf
Advanced FEM and Meshfree Class Workshop.pdfAdvanced FEM and Meshfree Class Workshop.pdf
Advanced FEM and Meshfree Class Workshop.pdfkeansheng
 
MultiLevelROM_ANS_Summer2015_RevMarch23
MultiLevelROM_ANS_Summer2015_RevMarch23MultiLevelROM_ANS_Summer2015_RevMarch23
MultiLevelROM_ANS_Summer2015_RevMarch23Mohammad Abdo
 
Development of Multi-level Reduced Order MOdeling Methodology
Development of Multi-level Reduced Order MOdeling MethodologyDevelopment of Multi-level Reduced Order MOdeling Methodology
Development of Multi-level Reduced Order MOdeling MethodologyMohammad
 
Algorithm2e package for Latex
Algorithm2e package for LatexAlgorithm2e package for Latex
Algorithm2e package for LatexChris Lee
 
COMSOL.Single Phase Flow Type 11.07.14
COMSOL.Single Phase Flow Type  11.07.14COMSOL.Single Phase Flow Type  11.07.14
COMSOL.Single Phase Flow Type 11.07.14Alvaro Lopez Arevalo
 
FEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart Guide
FEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart GuideFEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart Guide
FEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart GuideFEATool Multiphysics
 
AdvFS Storage (domain) Threshold Alerts
AdvFS Storage (domain) Threshold AlertsAdvFS Storage (domain) Threshold Alerts
AdvFS Storage (domain) Threshold AlertsJustin Goldberg
 

Similar to Tutorial to set up a case for chtMultiRegionFoam in OpenFOAM 2.0.0 (20)

Case studing
Case studingCase studing
Case studing
 
Steady state CFD analysis of C-D nozzle
Steady state CFD analysis of C-D nozzle Steady state CFD analysis of C-D nozzle
Steady state CFD analysis of C-D nozzle
 
Embedded c
Embedded cEmbedded c
Embedded c
 
Typeset equations
Typeset equationsTypeset equations
Typeset equations
 
Conditions for Stretched Hosts Cluster Support on EMC VPLEX Metro
Conditions for Stretched Hosts Cluster Support on EMC VPLEX MetroConditions for Stretched Hosts Cluster Support on EMC VPLEX Metro
Conditions for Stretched Hosts Cluster Support on EMC VPLEX Metro
 
Multiprocessors(performance and synchronization issues)
Multiprocessors(performance and synchronization issues)Multiprocessors(performance and synchronization issues)
Multiprocessors(performance and synchronization issues)
 
Programming using Open Mp
Programming using Open MpProgramming using Open Mp
Programming using Open Mp
 
Buffer overflow attack
Buffer overflow attackBuffer overflow attack
Buffer overflow attack
 
Advanced FEM and Meshfree Class Workshop.pdf
Advanced FEM and Meshfree Class Workshop.pdfAdvanced FEM and Meshfree Class Workshop.pdf
Advanced FEM and Meshfree Class Workshop.pdf
 
Dosass2
Dosass2Dosass2
Dosass2
 
MultiLevelROM_ANS_Summer2015_RevMarch23
MultiLevelROM_ANS_Summer2015_RevMarch23MultiLevelROM_ANS_Summer2015_RevMarch23
MultiLevelROM_ANS_Summer2015_RevMarch23
 
Development of Multi-level Reduced Order MOdeling Methodology
Development of Multi-level Reduced Order MOdeling MethodologyDevelopment of Multi-level Reduced Order MOdeling Methodology
Development of Multi-level Reduced Order MOdeling Methodology
 
Report_Ines_Swayam
Report_Ines_SwayamReport_Ines_Swayam
Report_Ines_Swayam
 
Algorithm2e package for Latex
Algorithm2e package for LatexAlgorithm2e package for Latex
Algorithm2e package for Latex
 
Introduction to FEA
Introduction to FEAIntroduction to FEA
Introduction to FEA
 
COMSOL.Single Phase Flow Type 11.07.14
COMSOL.Single Phase Flow Type  11.07.14COMSOL.Single Phase Flow Type  11.07.14
COMSOL.Single Phase Flow Type 11.07.14
 
FEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart Guide
FEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart GuideFEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart Guide
FEATool Multiphysics Matlab FEM and CFD Toolbox - v1.6 Quickstart Guide
 
Apache Storm Tutorial
Apache Storm TutorialApache Storm Tutorial
Apache Storm Tutorial
 
Basilisk Guide.pdf
Basilisk Guide.pdfBasilisk Guide.pdf
Basilisk Guide.pdf
 
AdvFS Storage (domain) Threshold Alerts
AdvFS Storage (domain) Threshold AlertsAdvFS Storage (domain) Threshold Alerts
AdvFS Storage (domain) Threshold Alerts
 

Recently uploaded

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?Watsoo Telematics
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutionsmonugehlot87
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 

Recently uploaded (20)

Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutions
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 

Tutorial to set up a case for chtMultiRegionFoam in OpenFOAM 2.0.0

  • 1. Tutorial to set up a case for chtMultiRegionFoam in OpenFOAM 2.0.0 Arpit Singhal University of Luxembourg March 3, 2014 The OpenFOAM-solver chtMultiRegionFoam is meant to be used for heat- transfer between a solid and a fluid originally. As it does work with different regions of different properties, the setup is therefore different from the other OpenFOAM cases. This tutorial is written for setting up a basic case for chtMultiRegionFoam (cMRF) in an Openfoam. tutorial
  • 2. Contents 1 Contents 1 Introduction 2 2 Basic Workflow 3 3 chtMRF Case Setup 4 3.1 Geometry and Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.2 Creating the Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.2.1 Declaring the Regions . . . . . . . . . . . . . . . . . . . . . . . . 5 3.2.2 Defining the Region by Zones . . . . . . . . . . . . . . . . . . . . 6 3.3 Splitting the Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.4 Necessary Files and Folders . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.4.1 Files setup by the user . . . . . . . . . . . . . . . . . . . . . . . . 9 3.4.2 Files setup by OpenFOAM utilities . . . . . . . . . . . . . . . . . 15 4 Running the case 18 5 Using scripting 18 6 Appendice 21 tutorial
  • 3. 1 Introduction 2 1 Introduction What is meant by ”multiregion multi physics modeling”? It is inherently-coupled physics on disparate continua (e.g. fluid, solid, different solids). In multiregion multi physics separate governing equations for each continuum/region are solved, as shown in 1.1 seperate governing equations will be solved for Region 1 and Region 2 depending upon their phase and Γ represents a region interface. A region can be defined as coherent continum of the same phase. Figure 1.1: Example Generally two different approaches to solving such problems are distinguished: • Monolithic: use same primitive variables, cast governing equations in terms of these variables, solve a single coupled matrix equation system • Partitioned: separate governing equations, solve separate matrix equation systems, couple at the boundary interface, sub-iterate until coupled convergence is reached Here, we focus on partitioned approaches using OpenFOAM’s multiregion function- ality (conjugate heat/mass transfer). For a multiregion partitioned solver the working steps are as follows: 1. Define multiple meshes, one for each ”region” 2. Create field variables on each mesh 3. Solve separate governing equations on each mesh 4. Multiregion coupling at the boundary interface between regions 5. Subiterate until fully-coupled solution is reached tutorial
  • 4. 2 Basic Workflow 3 2 Basic Workflow The basic work flow for a case setup is explained in fig. 2.1. Create a Mesh of the full domain Define regions inside the domain by selecting cells (using cellSet) Create cell zones from the created cellSets Split mesh into regions according to defined zones Basic work flow of a chtMultiRegion case Run case Prepare a general OpenFoam Case Create patches and fields for all regions changeDict Define coupled patches Define boundary conditions Define region properties Figure 2.1: The case visualization in 2D tutorial
  • 5. 3 chtMRF Case Setup 4 3 chtMRF Case Setup In this case we have four different regions (Air1, Air2, Solid1 and Solid2). The case is a simple set up with warm solid parts (Solid1 and Solid2), which are subjected to fluid parts (Air1 and Air2). In this case we are not taking into account any airflow (i.e. there is no inlet or outlet airflow) but the buoyancy effects are considered, while solving the case. There will be heat transfer taking place between the warm solid parts and the fluid parts. 3.1 Geometry and Mesh A graphical representation of the geometry can be seen in Fig. 3.1. The geometry is defined and then meshed using the OpenFOAM blockMesh tool. After Air2_to_Air1 Air1_to_Solid1 Air2_to_Solid2Solid1_to_Solid2 minX maxY maxX minY x y z Air1_to_Solid2 Figure 3.1: The case visualization in 2D running the blockMesh utility by typing $ blockMesh tutorial
  • 6. 3.2 Creating the Regions 5 the mesh is created as depicted in fig.3.2. Figure 3.2: Mesh of the full domain 3.2 Creating the Regions The regions are created in the domain depending upon their phases and they are created on the basis of the zones defined. 3.2.1 Declaring the Regions The regions and their property type are given in table 3.1. Table 3.1: Table for region properties Region Type Air1 fluid Solid1 solid Air2 fluid Solid2 solid Every region has several patches for which boundary or coupling conditions have to be specified. Thus, a patch can be of the following two types: • boundary patch tutorial
  • 7. 3.2 Creating the Regions 6 • coupling patch A boundary patch is a regular type patch for which the user may define any possible boundary condition available in OpenFOAM. Coupling patches are those patches where the solutions of the different regions are coupled. A coupling patch belongs to a so- called coupled patch pair. Such a pair consists of coinciding patches, one associated with each region. Table 3.2 lists all patches, the region they belong to and their type for the presented case. Table 3.2: Table of patches Patch Regions Type minX Air1, Solid1 boundary patch maxX Air2, Solid2 boundary patch minY Solid1, Solid2 boundary patch maxY Air1, Air2 boundary patch minZ Air1, Air2, Solid1, Solid2 boundary patch maxZ Air1, Air2, Solid1, Solid2 boundary patch Solid1 to Solid2 Solid1, Solid2 coupling patch Air1 to Solid1 Solid1, Air1 coupling patch Air1 to Solid2 Air1, Solid2 coupling patch Air1 to Air2 Air1, Air2 coupling patch Air2 to Solid2 Air2, Solid2 coupling patch 3.2.2 Defining the Region by Zones In the presented case the following regions must be created: Air1, Air2, Solid1 and Solid2. In order to create these regions the domain is divided into zones. To do so a subset of cells within the domain is selected to form a so-called cellSet. A cellSet is a random selection of cells from the domain, whereas a zone is a coherent subset of cells which finally can be used to define a region. According to the cellSets four zones are defined which mark the different regions. In order to define cellSets and cellZones a OpenFOAM commandline utility called setSet (topoSet in newer versions of OpenFOAM) is used. This tool requires a dictionary-file as input. Thus, within the case folder a file ending with .setSet must exist, which contains the settings used to define the different cellSets/cellZones/regions in the domain. The following command starts the utility with the dictionary file that contains the commands to be executed. tutorial
  • 8. 3.3 Splitting the Mesh 7 $ setSet −batch makeCellSets . setSet An example of the dictionary file of the presented case is attached for simplicity (Listing 1). Listing 1: Extract from makeCellSets.setSet 1 c e l l S e t Solid1 new boxToCell (0 0 0 )(10 0.3 1) cellZoneSet Solid1 new setToCellZone Solid1 c e l l S e t Solid2 new boxToCell (10 0 0 )(20 0.5 1) 5 cellZoneSet Solid2 new setToCellZone Solid2 c e l l S e t Air1 new boxToCell (0 0.3 0 )(10 1 1) cellZoneSet Air1 new setToCellZone Air1 10 c e l l S e t Air2 new boxToCell (10 0.5 0 )(20 1 1) cellZoneSet Air2 new setToCellZone Air2 The first two lines used in the .setSet file are briefly explained as: c e l l S e t Solid1 new boxToCell (0 0 0) (10 0.3 1) This creates a new cellSet from a selection of cells. The new action shows it will be a new set. The name of the cellSet is Solid1 and the source for the cellSet-function is the boxToCell function. The numbers in brackets are parameters to the boxToCell- function: All cells contained within the rectangular box spanning between the points with coordinates (0 0 0) and (10 0.3 1) are selected for the cellSet Solid1. The line cellZoneSet Solid1 new setToCellZone Solid1 builds a cellZoneSet from an existing cellSet (here using Solid1). Thus, within the original domain a new zone has been created as depicted in fig.3.3. This can be repeated in order to define the desired zones representing regions within the domain. 3.3 Splitting the Mesh After the user has defined all necessary regions by creating zones for them as described in the previous section the mesh of the domain has to be split into several disjoint meshes. Note that the originally created mesh of the full domain will be used within the regions. tutorial
  • 9. 3.4 Necessary Files and Folders 8 Figure 3.3: Zone created by cellZone from the entire domain Thus, proper grid resolution for the regional meshes must already be accounted for when creating the mesh of the full domain. $ splitMeshRegions −cellZones −overwrite The splitted mesh can be checked/visualized in paraview using the command as shown in the listing3.3 for Air1 $ paraFoam −touch −region Air1 Then in paraview, *.OpenFoam file should be loaded and can be visualized. The splitted mesh is shown in fig. 3.4. 3.4 Necessary Files and Folders A typical OpenFOAM case directory consists of the following three folders: • 0 • constant • system This general case structure is also kept for multiregion cases. The final correct setup of a multiregion case is shown in fig.3.5. Note that for each region a subdirectory containing tutorial
  • 10. 3.4 Necessary Files and Folders 9 Figure 3.4: Splitted mesh the information for the particular region exists. Some of the files are manually created by the user while others are created by the OpenFOAM utilities. It is explained in the further sections in detail. In the following sections details about the individual directories will be given. 3.4.1 Files setup by the user When starting a new multiregion case the directories and their content highlighted in fig. 3.6 must be created manually by the user according to the problem definition. 0 directory: First, manually bring in the necessary field files as usual. For a chtMulti- RegionFoam case it is necessary to have files for:epsilon, k, p, p rgh, T, U, Ychar and Ypmma. These files are identical to what one would find in any other chtMultiRegionFoam case /0-directory. For the solid regions:T, Ychar and Ypmma are necessary, whereas for the fluid regions:epsilon, g, k, are the required files. constant directory: As is any standard OpenFOAM case, the constant folder must contain a standard polymesh directory, including a standard blockMeshDict-file, which tutorial
  • 11. 3.4 Necessary Files and Folders 10 Figure 3.5: Final case structure of a multiregion case before running the solver tutorial
  • 12. 3.4 Necessary Files and Folders 11 Files for all desired fields have to be created inside 0 directory by the user. Folders for each region must be created by the user. They should contain default files for any fluid and solid. Defines the geometry and mesh the full domain. Defines desired regions and their property. Folders for each region must be created by the user. They should contain default files for any fluid and solid. The user must add and edit the changeDictionaryDict Figure 3.6: Case structure as prepared by the user before running scripts tutorial
  • 13. 3.4 Necessary Files and Folders 12 created by splitMesh: For each region a folder is created inside the 0 folder and all originally field files from the 0 folder are copied into the region folders created by splitMesh: The mesh is splitted into the different regions and for every region a separate mesh is defined. created by changeDict: This file defines all the patches of a particular region. modified by changeDict: boundary, initial and coupling conditions for all fields are modified according to the changeDictionaryDict file of the region Figure 3.7: Files and directories created by OpenFOAM utilities tutorial
  • 14. 3.4 Necessary Files and Folders 13 defines the full domain and its mesh. In contrast to a standard case, the files defining the other properties have to go into the different regional folders, i.e. transportProperties and thermophysicalProperties within the folders for fluid regions and solidThermophysicalProperties within the folders for the solid regions as shown in listing3 and listing4 . Within the constant-folder it is necessary to produce all the region folders. Addition- ally within the constant folder it also is necessary to build (or copy from elsewhere) a file called regionProperties. This file assigns the physical phase to each region: Either fluid or solid. An example for this file can be seen in the listing 2. Listing 2: Extract from regionProperties // ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ // fluidRegionNames ( air1 air2 ) ; solidRegionNames ( s o l i d 1 s o l i d 2 ) ; // ∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗ // Inside the solver fluidRegions and solidRegions are treated differently by solving different governing equations for each phase. For the fluid regions the default constant files should be included from any chtMulti- RegionFoam case/constant file. For the fluid regions, the fluid region should contain a thermophysicalProperties file containing the properties of the fluid in the fluid region. Like the Air1 thermophysicalProperties file contains: Listing 3: Extract from Air1 thermophysicalProperties file mixture { specie { nMoles 1; molWeight 2 8 . 9 ; } thermodynamics { tutorial
  • 15. 3.4 Necessary Files and Folders 14 Cp 1000; Hf 0; } transport { mu 1.8 e −05; Pr 0 . 7 ; } } Similarly for solid regions a solidThermophysicalProperties must exist with the folder of the region, an example of such a solidThermophysicalProperties is given for Solid1: Listing 4: Extract from Solid1 solidThermophysicalProperties file constSolidThermoCoeffs { //− thermo properties rho rho [1 −3 0 0 0 0 0] 8000; Cp Cp [0 2 −2 −1 0 0 0] 450; K K [1 1 −3 −1 0 0 0] 80; //− radiation properties kappa kappa [0 −1 0 0 0 0 0] 0; sigmaS sigmaS [0 −1 0 0 0 0 0] 0; emissivity emissivity [0 0 0 0 0 0 0] 0; //− chemical properties Hf Hf [0 2 −2 0 0 0 0] 0; } . . . . . . . . . . . } tutorial
  • 16. 3.4 Necessary Files and Folders 15 system directory: In the system directory, once again set up the folders for the regions. In each region folder there should be a changeDictionaryDict file, which contains details about the necessary fields in the region like T, U, etc. Get a working controlDict file, for example from any tutorial into this folder. Af- terwards get a dummy fvSchemes file. This one is the same as any other fvSchemes, except for the different functions containing no values between the curly brackets. Fur- theron one has to get a fvSolution which only defines the outer correctors into this folder. It is optional to get a decomposeParDict file in case one opts for running parallel computations. For all of the different regional folders: Get a decomposeParDict file and get full fvSchemes and fvSolution files into the folders. For the latter ones, keep in mind that they will be different for the fluids and for the solids. 3.4.2 Files setup by OpenFOAM utilities Most of the necessary case files and folder (This is highlighted in 3.7 for the different regions are created by automated generation using scripts and OpenFOAM utilities. The most important OpenFOAM utilities for a multiregion case are: splitMesh creates the polyMesh directories and their content within the constant/regionXYZ/ folders; additionally it creates 0/regionXYZ/ directories for all regions and copies all the field files existing in the 0 directory into the 0/regionXYZ/ directories changeDictionary uses changeDictionaryDict files located in system/regionXYZ/ fold- ers to create initial, boundary and coupling conditions for all fields existing in 0/regionXYZ/ directory for all regions 0 directory: During execution of splitMesh the user created field files are copied to the region subdirectories. As a next step unnecessary fields are removed for some regions (see extract given in Listing 5) and only those being part of the governing equations are kept (for example solids are assumed to be stationary, thus no velocity field is required). Listing 5: Extract from Allrun script # remove f l u i d f i e l d s from s o l i d regions for i in s o l i d 1 s o l i d 2 do rm −f 0∗/ $i /{mut , alphat , epsilon , k , p ,U, p rgh} tutorial
  • 17. 3.4 Necessary Files and Folders 16 done # remove s o l i d f i e l d s from f l u i d regions for i in air1 air2 do rm −f 0∗/ $i /{Ychar ,Ypmma} done Now the initial, boundary and coupling conditions for all fields in every region have to be specified appropriately. In order to do so the commandline utility changeDictionary is used. For example for the region Air1 the following line must be executed: $ changeDictionary −region Air1 > log . changeDictionary . Air1 2>&1 The utility expects a file called changeDictionaryDict to exist within the folder system/Air/. Initial and coupling condition of the regions are defined with in changeDictionaryDict. Boundary conditions for the boundaries on the outside of the complete simulation do- main and boundary conditions or so-called coupling conditions for any of the coupling patches between the regions are built using the following scheme: For example for region Air1 in the changeDictionaryDict file contains the following code for the T field: T { i n t e r n a l F i e l d uniform 300; boundaryField { ”.∗” { type zeroGradient ; } ” a i r 1 t o .∗” { type compressible : : turbulentTemperatureCoupledBaffleMixed ; neighbourFieldName T; . . . } tutorial
  • 18. 3.4 Necessary Files and Folders 17 } } In this example the boundary patches are all treated the same (using a wildcard ".*") and are given the boundary conditions of type zeroGradient. For the coupling patch there is special kind of boundary condition required (here compressible::turbulentTemperatureCoupledBaffleMixed). The keyword neighbourFieldName indicates that the T field of air1 is coupled to the T field of the other regions. Similarly for all other regions, the initial, boundary and coupling conditions must be taken care of. In each of the region folders a file called cellToRegion is created during execution of the changeDictionaryDict command. The content of these files are like any other field file but not associated to a specific field. The BC type is either zeroGradient or calculated. Possibly other parameters would work as well, but only these have been tested. In any case every coupling patches to other regions have to be defined of type calculated whereas boundary patches (to outside of domain) are of type zeroGradient. for Air1 the entry used is shown by listing 6 Listing 6: Extract from cellToRegion boundaryField { maxY { type zeroGradient ; } minX { type zeroGradient ; } minZ { type zeroGradient ; } maxZ tutorial
  • 19. 4 Running the case 18 { type zeroGradient ; } a i r 1 t o a i r 2 { type calculated ; value uniform 0; } a i r 1 t o s o l i d 2 { type calculated ; value uniform 0; } a i r 1 t o s o l i d 1 { type calculated ; value uniform 0; } } constant directory: In the constant folder, the splitMesh utility creates a seperate mesh for each region. This can be seen in the fig. 3.7 4 Running the case After following each step as defined in the above tutorial. The case can be executed by using the command in the terminal as depicted in the listing. 4 $ chtMultiRegionFoam 5 Using scripting An Allrun can be explained as a script file which contains all the commands used to execute the case, for example in this case the Allrun used can be seen as in Listing tutorial
  • 20. 5 Using scripting 19 shown in 5.1. So just executing the Allrun will now run the case, instead of typing each command seperately in the terminal. tutorial
  • 21. 5 Using scripting 20 Figure 5.1: Allrun script tutorial
  • 22. 6 Appendice 21 6 Appendice Listing 7: Extract from Allrun #!/bin/sh cd ${0%/∗} | | exit 1 # run from t h i s directory RUNPAR=”YES” ; # Source t u t o r i a l run functions . $WM PROJECT DIR/bin/ t o o l s /RunFunctions # −−− (A) −− Defining geometry and mesh of f u l l domain runApplication blockMesh # −−− (B) −− Creating the regions in two steps : # 1) defining c e l l S e t s # 2) creating cellZones which define the regions runApplication setSet −batch makeCellSets . setSet # −−− (C) −− S p l i t t i n g the mesh according to the defined regions runApplication splitMeshRegions −cellZones −overwrite exit # −−− (D) −− Remove unnecessary f i e l d f i l e s from regions # # −−−− (D. 1 ) − Remove f l u i d f i e l d s from s o l i d regions for i in s o l i d 1 s o l i d 2 do rm −f 0∗/ $i /{mut , alphat , epsilon , k , p ,U, p rgh} done tutorial
  • 23. 6 Appendice 22 # −−−− (D. 2 ) − Remove s o l i d f i e l d s from f l u i d regions for i in air1 air2 do rm −f 0∗/ $i /{Ychar ,Ypmma} done # −−− (E) −− Define i n i t i a l , boundary and coupling conditions # for a l l f i e l d s # of a l l regions # # loop over regions for i in air1 air2 s o l i d 1 s o l i d 2 do changeDictionary −region $i > log . changeDictionary . $i 2>&1 done # −−− (F) −− RUN case # choose between PARALLEL or SEQUENTIAL RUN i f [ ”$RUNPAR” = ”YES” ] ; then echo ’ −−− Running in p a r a l l e l mode ’ ; # Decompose for i in air1 air2 s o l i d 1 s o l i d 2 do decomposePar −region $i > log . decomposePar . $i 2>&1 done # Run mpirun . openmpi −np 4 chtMultiRegionFoam −p a r a l l e l > log # Reconstruct for i in air1 air2 s o l i d 1 s o l i d 2 tutorial
  • 24. 6 Appendice 23 do reconstructPar −region $i > log . reconstructPar . $i2 >&1 done e l s e echo ’ −−− Running in sequential mode ’ ; #−− Run on s i n g l e processor chtMultiRegionFoam > log f i echo echo ” creating f i l e s for paraview post−processing ” echo for i in s o l i d 1 s o l i d 2 air1 air2 do paraFoam −touch −region $i done # −−−−−−−−−−−−−−−−−− end−of−f i l e tutorial