Adapting chtmultiregionsimplefoam to include the effects of a rotating frame of reference and heat source term

Size: px
Start display at page:

Download "Adapting chtmultiregionsimplefoam to include the effects of a rotating frame of reference and heat source term"

Transcription

1 Cite as: Niebles Atencio, B.: Adapting chtmultiregionsimplefoam to include the effects of a rotating frame of reference and heat source term. In Proceedings of CFD with OpenSource Software, 2017, Edited by Nilsson. H., CFD with OpenSource software A course at Chalmers University of Technology Taught by Håkan Nilsson Adapting chtmultiregionsimplefoam to include the effects of a rotating frame of reference and heat source term Developed for Foam-extend-4.0 Author: Bercelay Niebles Atencio Chalmers University of Technology bercelay.niebles@chalmers.se Peer reviewed by: Alexandre Capitao Patrao Ebrahim Ghahramani Licensed under CC-BY-NC-SA, Disclaimer: This is a student project work, done as part of a course where OpenFOAM and some other OpenSource software are introduced to the students. Any reader should be aware that it might not be free of errors. Still, it might be useful for someone who would like learn some details similar to the ones presented in the report and in the accompanying files. The material has gone through a review process. The role of the reviewer is to go through the tutorial and make sure that it works, that it is possible to follow, and to some extent correct the writing. The reviewer has no responsibility for the contents. March 1, 2018

2 Learning outcomes At the end of this tutorial, the reader will learn: How to use it how to set up a chtmultiregionsimplefoam case with included rotation and heat source terms. how to use the compressible::turbulenttemperaturecoupledbaffle boundary condition. how to use the directmappedwall patch type. how to create regions with splitmeshregions and manually. The theory of it how the chtmultiregionsimplefoam code is written and organized. the main motivations behind the modifications of chtmultiregionsimplefoam. how modifying this code can help in special engineering applications. How it is implemented how to manipulate the chtmultiregionsimplefoam solver in order to add rotation and heat sources. How to modify it how to edit chtmultiregionsimplefoam and add code to it. 1

3 Prerequisites The reader is expected to have some knowledge of the following in order to get maximum benefit out of this report: The three heat transfer modes: conduction, convection and radiation. Dimensional groups like Reynolds Number and Prandtl Number. Run and understand some standard openfoam tutorials such as the mixervessel2d. 2

4 Contents 1 The chtmultiregionsimplefoam solver Introduction Description of the chtmultiregionsimplefoam solver The chtmultiregionsimplefoam.c file The solvefluid.h and solvesolid.h files Boundary condition for the interface between regions Running a chtmultiregionsimplefoam tutorial The MRFSimpleFoam solver Introduction The MRFSimpleFoam.C file The createfiles.h file A MRFSimpleFoam tutorial case The chtmrfsimplefoam solver Introduction The chtmrfsimplefoam.c file The createfluidfields.h file UEqn.H and peqn.h Tutorial for chtmrfsimplefoam in Foam-extend The chtsourcemrfsimplefoam solver Introduction Modifications in the code The solvesolids.h file The setsolidfields.h file and createsolidfields.h Tutorial for chtsourcemrfsimplefoam Conclusions 35 3

5 Introduction The purpose of this report is to provide the reader with guidelines for the manipulation of the chtmultiregionsimplefoam solver in order to include additional features for solving flows in certain applications such as hydropower. Through a series of tutorials, the reader is guided through a step-by-step procedure which describes how to modify the solver and add an an important feature: rotation, which more or less implies a combination of chtmultiregionsimplefoam and MRFSimple- Foam. Individually, these solvers have proven to be great tools for dealing with many engineering problems, but on the other hand, some of these problems involve physics where a combination of both solvers is justified and really needed. One of such cases is, for example, electric generators, rotating machines in which heat transfer processes also take place during the operation. Unfortunately, there is no current solver in Foam-extend-4.0 for cases as the one mentioned before. However, a great attempt of closing this gap was done previously by a report authored by Jamshidi, H [1], who developed a solution for OpenFOAM-1.6.ext. First, a detailed description of chtmultiregionsimplefoam is presented, together with the main code files and a typical tutorial case for running. A review of the MRFSimpleFoam solver and the tutorial case are later shown. Lastly, modifications will be carried out in the chtmultiregionsimplefoam solver in order to add the rotating features of MRFSimpleFoam and enhance the capabilities of the solver by including heat sources in the code which are not currently existing in the original chtmultiregionsimplefoam solver either. 4

6 Chapter 1 The chtmultiregionsimplefoam solver 1.1 Introduction chtmultiregionsimplefoam is a steady-state code that was conceived to solve conjugate heat transfer problems involving solid and fluid regions. Conjugate heat transfer is referred to the heat transfer that occurs by interaction of solid and fluids. In solids, the conduction of heat is the dominating process, whereas in fluids the heat transfer is dominated by convection. The solver takes into account buoyant effects if present and the interaction between both solid and fluid regions is achieved by using a special boundary condition called directmappedwall. 1.2 Description of the chtmultiregionsimplefoam solver In Foam-extend-4.0, the chtmultiregionsimplefoam solver code can be found by going to: $FOAM_SOLVERS/heatTransfer/chtMultiRegionSimpleFoam As in any other openfoam and Foam-extend solver, chtmultiregionsimplefoam keeps the same file structure and organization: A main.c file (chtmultiregionsimplefoam.c) A /Make directory which contains the known /files and /option files Files to create, read and write the different fields (createsolidfields.h and createfluidfields.h) The files for creating, reading and writing the solid and fluid region fields are contained in two different directories called /solid and /fluid, respectively. The complete list of files contained in these directories is: create(solid/fluid)fields.h: creates, reads and writes fields for the solid/fluid region. create(solid/fluid)meshes.h: creates the solid/fluid mesh for the region. setregion(solid/fluid)fields.h: all the required solid/fluid fields are populated. read(solid/fluid)multiregionsimplecontrols.h: non-orthogonal correction number is looked up from the SIMPLE settings in fvsolution solve(solid/fluid).h: defines the equations to solve the solid/fluid fields 5

7 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 6 Figure 1.1: Included files in the chtmultiregionsimplefoam.c file The chtmultiregionsimplefoam.c file This is the main solver code and its header contains the following includes as shown in figure 1.1 A brief explanation of every file follows: fvcfd.h: is the standard file for the finite volume method and is basically always included. basicpsithermo.h: Basic thermodynamic properties based on compressibility. turbulencemodel.h: Abstract base class for compressible turbulence models (RAS, LES and laminar). fixedgradientfvpatchfields.h: Defines the fixed boundary conditions. regionproperties.h: Holds region information for coupled region simulations. compressiblecourantno.h: Calculates and outputs mean and maximum Courant Numbers. setrootcase.h: Checks the structure of the folder for the case. createtime.h: Checks the runtime according to the controldict file and initiates time variables. createfluidmeshes.h and createsolidmeshes.h: as described in section 1.2 createfluidfields.h and createsolidfields.h: as described in section 1.2 initcontinuityerrs.h: Declares and initialises the cumulative continuity error. Once all these files are included, the solver starts the loop, shown in figure 1.2. It is time now to mention two important files which are included in the loop:

8 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 7 Figure 1.2: The loop in the chtmultiregionsimplefoam.c file The solvefluid.h and solvesolid.h files In the solvefluid.h file, the momentum equation is first solved. Then, the energy and finally the pressure are computed. See figure 1.3. Figure 1.3: content of the solvefluid.h file Figure 1.4 shows the content of the UEqn.H file, which is only concerning the fluid regions. In this file, the momentum equation is solved. The reader can see here that a matrix of vectors is first created. Then, the solution is relaxed and finally a residual is computed.

9 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 8 Figure 1.4: content of the UEqn.H file The next to take care of is the heat in the fluid and therefore, a heqn is solved. Figure 1.5 shows the content of the heqn.h file, which computes more specifically the enthalpy field. The structure of this file is basically the same as the UEqn.H file. Figure 1.5: content of the heqn.h file

10 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 9 In the peqn.h file, one can observe that before the actual pressure solving, there are some computations of velocities and fluxes in case we are dealing with closed volumes or in case we deal with buoyancy effects. Then the loop for the pressure solving starts, residuals are computed and correctors are also applied if the option is enabled during the simulation cases set-up (figure 1.6). Figure 1.6: content of the peqn.h file

11 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 10 In the solvesolid.h file, the laplacian term of the temperature equation is the only one to be solved, as can be seen in figure 1.7. Figure 1.7: content of the solvesolid.h file Boundary condition for the interface between regions In Foam-extend-4.0, there is a special boundary patch type used for connecting the solid and the fluid part. This boundary patch type is called directmappedwall, which is specified as shown below in the polymesh/boundary files of the 0/(region)/ and constant/ folders. In the next section this is better explained. Figure 1.8: The boundary condition for the interface between regions 1.3 Running a chtmultiregionsimplefoam tutorial For better understanding of how to set-up a chtmultiregionsimplefoam case, a simplified version of the multiregionheater tutorial will be set up and run. Copy the multiregionheater tutorial to the run directory: cp -r $FOAM_TUTORIALS/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater $FOAM_RUN cd $FOAM_RUN mv multiregionheater mymultiregionheater cd mymultiregionheater

12 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 11 The file structure of the mymultiregionheater case is similar to other OpenFOAM tutorials where the case directory has a /0, /constant and /system directory. As usual in OpenFOAM tutorials, the solver write and time control can be found in the /system directory and the mesh setup in /constant/polymesh. For the sake of simplicity and as an exercise, some manipulations of files are carried out. More specifically, only two regions (fluid and solid) will be set up in this case. For the new domain, we keep the /constant/polymesh/blockmeshdict file untouched, so the definition of the blocks that form the mesh remains the same as in the original tutorial file (figure 1.9). In the blockmeshdict we define not only the limits of the blocks, but also the patches and boundaries. This file however, does not determine how the regions will be defined. We need help from another file for that. What we need to modify is a file that is located inside the case folder (/mymultiregionheater/). Figure 1.9: Definition of vertices for the blocks in the blockmeshdict file That file is called makecellsets.setset and its purpose is to select cells that will belong to the different regions, using the cellset command. See figure As can be seen from the figure, the original definitions of the cellsets have changed and instead two cellsets are defining the regions that will be used in this tutorial. Let s go through these definitions: cellset solid new boxtocell ( ) ( ) This cellset definition tells us that a new set of cells is created and will be called solid (we can use any name). The cells that are selected are those within the box bounded by coordinates ( ) ( ). The same applies for the fluid cellset (observing that the coordinates are different).

13 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 12 Figure 1.10: Modified makecellsets file Next, we need to tell the solver which region corresponds to the solid one and which one is the fluid region, so the solver can use and solve different equations depending on the region. We do this in the /constant/regionproperties file. In this case, our solid and fluid regions are called solid and fluid, which is how we defined them in the makecellsets.setset file, but any name can be used for denominating the regions. See figure It is time now to create the mesh and the regions as such. For doing that, the following commands should be run: blockmesh setset -batch makecellsets.setset setstozones -noflipmap splitmeshregions -cellzones -overwrite Figure 1.11: Content of the regionproperties file setstozones is used to transform the cellsets that were defined before into a cellzone and a /constant/polymesh/cellzones file is created. Finally, the last command takes the zones created by the cells defined in the cellzones to form a physical region in the domain. The splitmeshregions command also creates folders inside the /0 directory; one for the solid region and one for the fluid (/0/solid/ and /0/fluid/). In these folders, corresponding files for fluid and solid fields are located and will dictate the initial conditions of those fields. splitmeshregions also creates directories for the different regions in the system/ folder of the case. Figure 1.12 shows how the regions (and patches) look like in paraview after applying the splitmeshregions command.

14 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 13 Figure 1.12: Fluid (upper) and solid (bottom) regions More modifications are required in the files. This turn is now for the /0/solid/polyMesh/boundary file that was created during the splitting of the mesh during the previous step. Here is where a special patch type for the interface between the solid and fluid regions is used: directmappedwall and more keywords are required for this new boundary type to work properly, which are basically the samplemode, the sampleregion, the samplepatch and the offset. These keywords are used as illustrated in The same is done for the /0/fluid/polyMesh/boundary file and the interface boundary between fluid and solid is changed as can be seen in figure If more regions were present, the interface boundaries in the /0/(other regions)/polymesh/boundary files should be modified accordingly. Next step now is to create manually as many directories as number of fluid regions exist inside the constant/ directory and name them with the same names of the fluid regions. In this particular case, the /constant/fluid/ directory should be created. Then, some files need to be placed inside the new created directory: g, RASProperties, thermophysicalproperties and turbulenceproperties. These files will account for the buoyancy effects, the turbulence models used in the simulations (if we include turbulence), the thermophysical properties of the fluid and whether or not the simulation is for turbulent or laminar flow, respectively. These files already exist in the original /constant/topair directory, so it would be enough changing the name of the topair directory into fluid, to keep the files inside. Next, the boundary conditions for the fluid and solid fields need to be prescribed. We can do this in the regular way (in the 0/fluid or 0/solid directories, prescribing boundary conditions for their files), but we could also go to the system/fluid and the system/solid and edit the changedictionarydict files inside these folders, to prescribe the boundary conditions for all fields at once. This changedictionarydict file can be copied from system/bottomair/ and system/heater/, which are fluid and solid regions created in the system folder of the original tutorial. For this tutorial, a temperature of 600 K is prescribed at the bottom patch of the solid region (miny) as seen in figure This is basically the only modification required for the solid region, since the rest of the solid fields are concerned with material properties which will not be touched.

15 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 14 Figure 1.13: Part of the boundary file for the new solid region Field minx maxx walls U fixedvalue inletoutlet fixedvalue Table 1.1: Boundary types for velocity field Figure 1.16 shows the changedictionarydict file for the fluid region and its modifications in the temperature field. Boundary types for velocity field in this file are shown in the table 1.1 for the inlet, outlet (minx, maxx) and wall boundaries. Suitabe values are required. It s noticeable in table 1.1 a special boundary condition for the outlet boundary (maxx), which is inletoutlet. This boundary condition is used to avoid reverse flow when this might occur. The boundary condition requires the inletvalue keyword to be provided. The value of this keyword will be the velocity of the reversing fluid if that s the case. If no reverse flow is desired, it is customary to use uniform (0 0 0) as value. On the other hand, for the fluid-solid interface there is a special boundary condition for temperature of the type compressible::turbulenttemperaturecoupledbaffle which is used as shown in figures 1.15 and Boundary conditions are also required for the turbulence and pressure fields, but in this case no modifications will be made here for simplicity.

16 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 15 Figure 1.14: Part of the boundary file for the new fluid region Figure 1.15: changedictionarydict file for the solid region To prescribe boundary conditions, run changedictionary -region solid (same for fluid region) Finally, the fvschemes and fvsolutions files for the fluid and solid region folders are needed. The corresponding files for these regions can also be copied from the original folders. For simplicity, no modifications are done here. Then the simulation starts by using the command chtmultiregionsimplefoam > log & Figure 1.17 shows the results for the temperature field. It is clearly seen how the heat goes through the solid region and is translated to the fluid region via the coupling at the interface. The fluid right at the solid-fluid interface has a higher temperature compared to the fluid away from the interface. There is also a region in the fluid where some buoyancy can be observed (hotter fluid going upwards).

17 CHAPTER 1. THE CHTMULTIREGIONSIMPLEFOAM SOLVER 16 Figure 1.16: changedictionarydict file for the fluid region Figure 1.17: Temperature field

18 Chapter 2 The MRFSimpleFoam solver 2.1 Introduction Turbomachines are one example of an engineering field in which rotation and its effects are present and need to be addressed. In this kind of applications, stationary parts are solved in a stationary reference frame, whereas the rotational regions are solved in rotational reference frames, which imply getting steady-state solutions with less computational efforts. In Foam-extend-4.0 this is done by using the MRFSimpleFoam solver, which is a steady-state solver for incompressible and turbulent flow for fluids with regions with multiple reference frames. The solver can be found here: $FOAM_SOLVERS/incompressible/MRFSimpleFoam The structure of the solver is basically as any other, with a Make folder and two important files which are described in the following sections: 2.2 The MRFSimpleFoam.C file Figure 2.1 shows the include files of the MRFSimpleFoam.C file, among these files, the MRFZones.H is the one that makes the difference between simplefoam and \verbmrfsimplefoam+, since some functions are defined there to account for the effects of rotation. Figure 2.1: Header in the MRFSimpleFoam.C file 17

19 CHAPTER 2. THE MRFSIMPLEFOAM SOLVER 18 Figure 2.2 shows the loop in the solver, which is a simple loop to solve the momentum and pressure equations. Figure 2.2: The loop in MRFSimpleFoam.C

20 CHAPTER 2. THE MRFSIMPLEFOAM SOLVER The createfiles.h file This file contains the fields that will be solved in the fluid. The last two lines in the file represent the difference with respect to simplefoam (figure 2.3). The code of the MRFZones and the class definition can be found here: $FOAM_SRC/finiteVolume/cfdTools/general/MRF Figure 2.3: createfields.h file in MRFSimpleFoam

21 CHAPTER 2. THE MRFSIMPLEFOAM SOLVER A MRFSimpleFoam tutorial case In Foam-extend-4.0, a tutorial for the MRFSimpleFoam solver can be found here: $FOAM_TUTORIALS/incompressible/MRFSimpleFoam/mixerVessel2D As for other tutorials it is recommended to copy this one into the run directory of the user: cp -r $FOAM_TUTORIALS/incompressible/MRFSimpleFoam/mixerVessel2D $FOAM_RUN cd $FOAM_RUN/mixerVessel2D This tutorial case is about a fluid in a mixer which will be solved. Part of this fluid will rotate. There are two regions in the mixer: a stator and a rotor. Both regions consist of four blades as shown in figure 2.4. The cells of the mesh in the rotor area conform the MRF zone (rotor cellzone) and in the /constant/mrfzones file the axis of rotation and angular speed can be prescribed. The mesh generation and creation of the rotating zone is defined during the meshing process via a file in the case directory called makemesh. In the constant directory there are also RASProperties and transportproperties files to define the turbulence model and whether we deal with Newtonian or non-newtonian fluid, respectively. We can also prescribe fluid properties there. Figure 2.4: The mixervessel2d case

22 CHAPTER 2. THE MRFSIMPLEFOAM SOLVER 21 As with many other tutorials, we can also find an Allrun file, which contains the following (figure 2.5): Figure 2.5: Content of the Allrun file in MRFSimpleFoam It is clearly seen in this file that the mesh is first created by running the makemesh file. Then the solver is called. The content of the makemesh file is shown in figure 2.6. This file basically runs a code (m4 file) before running blockmesh. Then the rotor cellzone is created. As already mentioned, this zone will be subjected to rotation. Figure 2.6: Content of the makemesh file Let s run the case:./allrun > log_allrun & Figures 2.7 and 2.8 show the steady state solution for the velocity and pressure fields in the mixervessel2d case.

23 CHAPTER 2. THE MRFSIMPLEFOAM SOLVER 22 Figure 2.7: Velocity field in the mixervessel2d case Figure 2.8: Pressure field in the mixervessel2d case

24 Chapter 3 The chtmrfsimplefoam solver 3.1 Introduction Heat is generated in all machines, but in some rotating machines is critical to keep heat at some permissible level. This is especially true for electric generators, rotating machines in which the efficiency varies indirectly to the operating temperature. Therefore, understanding heat transfer processes in this kind of machines is required in order to understand how to cool them down properly. Electric generators are a perfect example of an application in which a special solver is required. Since the operation of these machines involve both rotation and heat transfer processes, then a solver able to solve such processes is needed. This can be achieved by merging chtmultiregionsimplefoam and MRFSimpleFoam. This new solver will be called chtmrfsimplefoam and is a steady-state solver for incompressible and turbulent flow with rotating frames in the fluid regions and conjugate heat transfer in both solid and fluid regions. Figure 3.1: Included files in the chtmrfsimplefoam.c file 23

25 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER The chtmrfsimplefoam.c file The chtmrfsimplefoam solver results from having chtmultiregionsimplefoam as the base solver while adding some features to account for the rotating reference frames as in MRFSimpleFoam. This means, a copy of the chtmultiregionsimplefoam solver is required because it will be modified. As always, the recommendation is to place this copy in the $FOAM_RUN directory. Figure 3.1 shows the include files in the header of the chtmrfsimplefoam.c file. It is clearly seen that this file is quite the same as the one of the base solver, but the difference is the inclusion of the MRFZones.H file, also present and a distinct feature in MRFSimpleFoam. 3.3 The createfluidfields.h file The original file requires also a modification and as can be seen in figure 3.2, this modification consists in adding the last two lines of the createfields.h file in MRFSimpleFoam. Figure 3.2: The new createfluidfields.h file 3.4 UEqn.H and peqn.h Since the fluid will also be solved with the MRF algorithm, then the equations that take care of the fluid fields should also be modified to account for MRF zones. As it is already known, these files are contained in the fluid/ directory inside the base solver. See figures 3.3 and 3.4. Finally, in order to compile the solver properly, a modification of the Make/files should be carried out to allow the solver to be found by the compiler (see figure 3.5). The Make/options should look as shown in figure 3.6. The new solver is now ready for wmake.

26 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 25 Figure 3.3: Modified momentum equation Figure 3.4: Modified pressure field equation

27 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 26 Figure 3.5: Modification in the Make/file file Figure 3.6: The Make/options file 3.5 Tutorial for chtmrfsimplefoam in Foam-extend-4.0 This tutorial has been designed by using the mixervessel2d case (MRFSimpleFoam) as the base case and building above it the required new fields and regions to solve heat equation. In this tutorial, a solid region will be added to the existing mixervessel2d mesh. The region is basically an external ring that encloses the fluid region of the original mesh and one of the boundaries of this region will be heated. The mixervessel2d tutorial will be renamed chtmixervessel2d. The following steps are required forlocating, copying and renaming the tutorial: cd $FOAM_TUTORIALS/incompressible/MRFSimpleFoam/ cp -r mixervessel2d $FOAM_RUN/ cd $FOAM_RUN/ mv mixervessel2d chtmixervessel2d A new solid region is required, so the /constant/polymesh/blockmeshdict.m4 file (which creates the blockmesh file) should be modified. First, two new directories should be created in the constant/ folder: one for the fluid region (fluid) and one for the solid one (which will be called HeatingRing). In each of these directories, the constant/polymesh folder is copied (including the files in it). Once the directories are created, the modification of the /constant/polymesh/blockmeshdict.m4 file in the solid region follows. Figure 3.7 shows part of the modifications that have to be carried out in this file. First, general dimensions are defined (as shown in the figure). Then, angles to define coordinates of the vertices are specified, blocks are defined with the vertices, edges and boundaries are finally specified. Some command of the m4 language is required and the reader is referred to check some online resources such as: which explains how to create and run m4 codes. As appendix, the complete content of the m4 for the

28 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 27 HeatingRing region is shown. The m4 file is run once it is ready (as shown in section 2.4) and then the blockmesh command can be run to create the mesh: blockmesh -region HeatingRing The same is done for the fluid region. The meshes can then be displayed in paraview, but first, the mesh for each region should be individually created: parafoam -touch -region HeatingRing And the same for the fluid region. New files will be created in the case directory that can be opened in paraview. The mesh should now look like in figure 3.8. Figure 3.7: Some modifications in the blockmeshdict.m4 file

29 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 28 Figure 3.8: The new mesh with the added solid region As already known, the blockmesh utility writes out the boundary file in the polymesh/ directory and this file will show the patches with the names that were chosen in the blockmeshdict.m4 file before creating the blockmeshdict file. The new solid region consists of 8 blocks and 4 patches. The patch that will be in contact with the fluid region is called HeatingRing_to_fluid. The external patch is called outring and the other two patches are the front and back ones. In case that different patch names are required, the boundary file can be edited with the new patch names. The next step now is to copy the HeatingRing and fluid region folders from the constant/ directory, to the 0/ directory: cp -r constant/heatingring/ 0/ (the same is done for the fluid region). Figure 3.9: The interface solid-fluid patch

30 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 29 Once the corresponding polymesh/ directory is located in the fluid and HeatingRing regions of the 0/ directory, some modifications should be made to the boundary file to account for the solid-fluid interface patch type. These modifications could have also been made before copying polymesh/ to the 0/ folder. The respective modification in the boundary file of the HeatingRing region is shown in figure 3.9. In the fluid region is the same, but of course with the correct name for the patches. The files of the 0/ should now be moved to the 0/fluid/ directory to represent the initial conditions of the fields for the fluid region. The files in the 0/HeatingRing/ directory can be obtained from the original multiregionheater tutorial (of the chtmultiregionsimplefoam solver): cp $FOAM_TUTORIALS/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/{Kappa, cp,rho,t} $FOAM_RUN/chtMixerVessel2D/0/HeatingRing/ The fluid will also be solved for temperature, so a temperature file from the solid region should be copied to the fluid region. Boundary names should be modified accordingly for fluid and solid fields. In the constant/ directory a regionproperties file is needed (from the chtmultiregionsimplefoam tutorial this file can be copied) to tell the solver which region will be solid and which will be fluid. Also, the /constant/fluid directory requires these files: g, thermophysicalproperties, turbulenceproperties, RASProperties, transportproperties and MRFZones. Again, all these missing files can be copied from the original tutorial cases. Figure 3.10: Part of the changedictionarydict in the fluid region showing velocity and temperature fields

31 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 30 Figure 3.11: changedictionarydict with the temperature field in the HeatingRing region Finally, the system/ directory should also contain a fluid and HeatingRing folders with the changedirectorydict, fvschemes and fvsolution files. Part of the changedictionarydict file looks as shown in figures 3.10 and 3.11 for the fluid and for the HeatingRing regions, respectively. It is noticeable in the changedictionarydict file the prescribed temperature for the external boundary of the HeatingRing region. This temperature is fixed and uniform with value 700K. Diffusion is then expected in the solid region. All required files for the HeatingRing and fluid regions can also be copied from the original system/heater and system/topair directories of the multiregionheater tutorial case. The changedictionarydict file consists, as explained in section 1.3, of a list of all fields and all boundary conditions for those fields (partially shown in figure 3.10). The file is run (as described at the end of section 1.3) and those boundary conditions are written in the field files of the 0/ directory. For the fluid region, the boundary conditions to be prescribed in this file are those of the original mixervessel2d tutorial case. For the HeatingRing region, it is easier using the same boundary conditions as in the system/heater/changedictionarydict file of the multiregionheater tutorial case (with the respective modifications of the boundary names). The set up is ready and the simulation can start: chtmrfsimplefoam > log_chtmrf & Figures 3.12 and 3.13 show the temperature and velocity fields respectively once the simulation is finalized. As it is clearly seen, the temperature in the solid region (HeatingRing) is uniformly distributed and some heat has been transferred to the fluid by convection. Since the solid part does not move, then there is no velocity field displayed for this part and only the fluid is resolved for the velocity. As shown in the results.

32 CHAPTER 3. THE CHTMRFSIMPLEFOAM SOLVER 31 Figure 3.12: Temperature field in the entire domain Figure 3.13: Velocity field in the fluid domain

33 Chapter 4 The chtsourcemrfsimplefoam solver 4.1 Introduction In the previous chapter the way to modify the chtmultiregionsimplefoam solver to include the effects of rotating reference of frames was shown. The new solver is called chtmrfsimplefoam and as previously indicated, it is useful for engineering applications such as electric generators, in which both heat transfer and rotating processes occur at the same time. However, chtmrfsimplefoam is only useful if temperature distributions are known, or if the values of the heat transferred between solid and fluid regions is also known. Most of the times, the temperatures in the solid and fluid regions are not known, but it is the losses in the solid part of the electric generator. This losses are in the form of heat that is dissipated to the fluid. Therefore, the solver for simulating this kind of applications should be able to use a heat source which is evenly generated in the solid region and work with it to calculate hot spots and temperature distribution in the entire domain. This can be done by modifying the existing chtmrfsimplefoam solver. The result: a new solver called chtsourcemrfsimplefoam. 4.2 Modifications in the code As previously mentioned, this new solver is based on chtmrfsimplefoam and therefore, some of the files of the latter should be modified. The folder in which the source code of chtmrfsimplefoam should be copied and names should be changed. cp -r username-4.0/applications/solvers/chtmrfsimplefoam username-4.0/applications/ solvers/chtsourcemrfsimplefoam The name of the.c file should also be modified accordingly, but no modifications are needed in the coding of this file. chtsourcemrfsimplefoam is basically about inserting a new field to be used during the simulations and therefore, the required modifications are basically in the code where this new field should be called The solvesolids.h file The /solid/solvesolids.h file is modified as shown in figure 4.1. In this file the equation for steady-state conduction of heat in solids is described and any source term should be placed here. In this case the new source term is designated by Sc. 32

34 CHAPTER 4. THE CHTSOURCEMRFSIMPLEFOAM SOLVER 33 Figure 4.1: Modification in the solvesolid.h file The setsolidfields.h file and createsolidfields.h These files are also inside the /solid/ folder of the source code and the modifications are basically intended to let the solver know that there is another field to be solved for. If this is not properly done, the compilation process will result in error. See figures 4.2 and 4.3. Figure 4.2: Modification of the setsolidfields.h file Figure 4.3: Modification in the createsolidfields.h The solver is now ready for being compiled with wmake.

35 CHAPTER 4. THE CHTSOURCEMRFSIMPLEFOAM SOLVER Tutorial for chtsourcemrfsimplefoam The purpose of this tutorial is to test if the solver actually solves the heat field with the new source term. The case is basically the same as in chtmrfsimplefoam. The following modifications to the existing chtmrfsimplefoam case is required: A source term file in the 0/HeatingRing/ directory, which is basically done by copying any existing solid field file and changing its name to Sc. The units of the new field is [ ], which is the same as W/m 3. The internalfield value in this file can be Adapting the changedictionarydict file (if it is used for changing boundary conditions). No need to account for this source term in the fvschemes or fvsolution files. Temperature boundary conditions for the HeatingRing should be fixedvalue at 300K or zerogradient. Once these changes have been taken inito account, the new solver is run by typing: chtsourcemrfsimplefoam > log_chtsourcemrf & And the resulting temperature field due to the heating source term can be seen in figure 4.4. Figure 4.4: Temperature field distribution after running the solver

36 Chapter 5 Conclusions In this report, instructions on how to modify an existing solver for conjugate heat transfer have been presented. The main motivations behind the modifications in the code are the need of having a solver to be used for electric generators. A detailed procedure for adding rotation and heat source terms have been described and tutorials for testing each modification have also been shown. The new solvers are able to predict heat transfer phenomena in rotating machines and therefore is a suitable for engineering cases as described before, without any complicated modification in the code. 35

37 References 1. Jamshidi, H: Combination of MRFSimpleFoam and conjugatheatfoam. In Proceedings of CFD with OpenSource Software, 2012, Edited by Nilsson, H Nilsson, H: Turbomachinery training at OFW7; 36

38 Appendix Rest of the content of the blockmeshdict.m4 file which needs to be modified to create the solid region in the tutorial of section 3.5. converttometers 0.1; // Hub radius define(r, 0.2) // Impeller-tip radius define(rb, 0.5) // Baffle-tip radius define(rb, 0.7) //Inner radius of HeatingRing define(r, 1) //Outside radius of HeatingRing define(ro, 1.5) // MRF region radius define(ri, calc(0.5*(rb + Rb))) // Thickness of 2D slab define(z, 0.1) // Base z define(zb, 0) // Top z define(zt, calc(zb + z)) // Number of cells radially between hub and impeller tip define(nr, 12) // Number of cells radially in each of the two regions between // impeller and baffle tips define(ni, 4) // Number of cells radially between baffle tip and tank define(nr, 12) 37

39 // Number of cells azimuthally in each of the 8 blocks define(na, 12) // Number of cells in the thickness of the slab define(nz, 1) //Number of cells radially between stator and outside of HeatingRing define(no, 12) // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // define(vert, (x$1$2 y$1$2 $3)) define(evert, (ex$1$2 ey$1$2 $3)) define(a0, 0) define(a1, -45) define(a2, -90) define(a3, -135) define(a4, 180) define(a5, 135) define(a6, 90) define(a7, 45) define(ea0, -22.5) define(ea1, -67.5) define(ea2, ) define(ea3, ) define(ea4, 157.5) define(ea5, 112.5) define(ea6, 67.5) define(ea7, 22.5) define(ca0, calc(cos((pi/180)*a0))) define(ca1, calc(cos((pi/180)*a1))) define(ca2, calc(cos((pi/180)*a2))) define(ca3, calc(cos((pi/180)*a3))) define(ca4, calc(cos((pi/180)*a4))) define(ca5, calc(cos((pi/180)*a5))) define(ca6, calc(cos((pi/180)*a6))) define(ca7, calc(cos((pi/180)*a7))) define(sa0, calc(sin((pi/180)*a0))) define(sa1, calc(sin((pi/180)*a1))) define(sa2, calc(sin((pi/180)*a2))) define(sa3, calc(sin((pi/180)*a3))) define(sa4, calc(sin((pi/180)*a4))) define(sa5, calc(sin((pi/180)*a5))) define(sa6, calc(sin((pi/180)*a6))) define(sa7, calc(sin((pi/180)*a7))) define(cea0, calc(cos((pi/180)*ea0))) define(cea1, calc(cos((pi/180)*ea1))) define(cea2, calc(cos((pi/180)*ea2))) define(cea3, calc(cos((pi/180)*ea3)))

40 define(cea4, calc(cos((pi/180)*ea4))) define(cea5, calc(cos((pi/180)*ea5))) define(cea6, calc(cos((pi/180)*ea6))) define(cea7, calc(cos((pi/180)*ea7))) define(sea0, calc(sin((pi/180)*ea0))) define(sea1, calc(sin((pi/180)*ea1))) define(sea2, calc(sin((pi/180)*ea2))) define(sea3, calc(sin((pi/180)*ea3))) define(sea4, calc(sin((pi/180)*ea4))) define(sea5, calc(sin((pi/180)*ea5))) define(sea6, calc(sin((pi/180)*ea6))) define(sea7, calc(sin((pi/180)*ea7))) define(x00, calc(r*ca0)) define(x01, calc(r*ca1)) define(x02, calc(r*ca2)) define(x03, calc(r*ca3)) define(x04, calc(r*ca4)) define(x05, calc(r*ca5)) define(x06, calc(r*ca6)) define(x07, calc(r*ca7)) define(x10, calc(ro*ca0)) define(x11, calc(ro*ca1)) define(x12, calc(ro*ca2)) define(x13, calc(ro*ca3)) define(x14, calc(ro*ca4)) define(x15, calc(ro*ca5)) define(x16, calc(ro*ca6)) define(x17, calc(ro*ca7)) define(y00, calc(r*sa0)) define(y01, calc(r*sa1)) define(y02, calc(r*sa2)) define(y03, calc(r*sa3)) define(y04, calc(r*sa4)) define(y05, calc(r*sa5)) define(y06, calc(r*sa6)) define(y07, calc(r*sa7)) define(y10, calc(ro*sa0)) define(y11, calc(ro*sa1)) define(y12, calc(ro*sa2)) define(y13, calc(ro*sa3)) define(y14, calc(ro*sa4)) define(y15, calc(ro*sa5)) define(y16, calc(ro*sa6)) define(y17, calc(ro*sa7)) define(ex00, calc(r*cea0)) define(ex01, calc(r*cea1)) define(ex02, calc(r*cea2)) define(ex02, calc(r*cea2))

41 define(ex03, calc(r*cea3)) define(ex04, calc(r*cea4)) define(ex05, calc(r*cea5)) define(ex06, calc(r*cea6)) define(ex07, calc(r*cea7)) define(ex10, calc(ro*cea0)) define(ex11, calc(ro*cea1)) define(ex12, calc(ro*cea2)) define(ex13, calc(ro*cea3)) define(ex14, calc(ro*cea4)) define(ex15, calc(ro*cea5)) define(ex16, calc(ro*cea6)) define(ex17, calc(ro*cea7)) define(ey00, calc(r*sea0)) define(ey01, calc(r*sea1)) define(ey02, calc(r*sea2)) define(ey03, calc(r*sea3)) define(ey04, calc(r*sea4)) define(ey05, calc(r*sea5)) define(ey06, calc(r*sea6)) define(ey07, calc(r*sea7)) define(ey10, calc(ro*sea0)) define(ey11, calc(ro*sea1)) define(ey12, calc(ro*sea2)) define(ey13, calc(ro*sea3)) define(ey14, calc(ro*sea4)) define(ey15, calc(ro*sea5)) define(ey16, calc(ro*sea6)) define(ey17, calc(ro*sea7)) // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // vertices ( (x00 y00 Zb) vlabel(r0b) (x01 y01 Zb) vlabel(r1b) (x02 y02 Zb) vlabel(r2b) (x03 y03 Zb) vlabel(r3b) (x04 y04 Zb) vlabel(r4b) (x05 y05 Zb) vlabel(r5b) (x06 y06 Zb) vlabel(r6b) (x07 y07 Zb) vlabel(r7b) (x10 y10 Zb) vlabel(ro0b) (x11 y11 Zb) vlabel(ro1b) (x12 y12 Zb) vlabel(ro2b) (x13 y13 Zb) vlabel(ro3b) (x14 y14 Zb) vlabel(ro4b) (x15 y15 Zb) vlabel(ro5b)

42 (x16 y16 Zb) vlabel(ro6b) (x17 y17 Zb) vlabel(ro7b) (x00 y00 Zt) vlabel(r0t) (x01 y01 Zt) vlabel(r1t) (x02 y02 Zt) vlabel(r2t) (x03 y03 Zt) vlabel(r3t) (x04 y04 Zt) vlabel(r4t) (x05 y05 Zt) vlabel(r5t) (x06 y06 Zt) vlabel(r6t) (x07 y07 Zt) vlabel(r7t) (x10 y10 Zt) vlabel(ro0t) (x11 y11 Zt) vlabel(ro1t) (x12 y12 Zt) vlabel(ro2t) (x13 y13 Zt) vlabel(ro3t) (x14 y14 Zt) vlabel(ro4t) (x15 y15 Zt) vlabel(ro5t) (x16 y16 Zt) vlabel(ro6t) (x17 y17 Zt) vlabel(ro7t) ); blocks ( // block0 hex2d(r0, R1, Ro1, Ro0) (Na No Nz) simplegrading (1 1 1) // block1 hex2d(r1, R2, Ro2, Ro1) (Na No Nz) simplegrading (1 1 1) // block2 hex2d(r2, R3, Ro3, Ro2) (Na No Nz) simplegrading (1 1 1) // block3 hex2d(r3, R4, Ro4, Ro3) (Na No Nz) simplegrading (1 1 1) // block4 hex2d(r4, R5, Ro5, Ro4) (Na No Nz) simplegrading (1 1 1) // block5

43 hex2d(r5, R6, Ro6, Ro5) (Na No Nz) simplegrading (1 1 1) // block6 hex2d(r6, R7, Ro7, Ro6) (Na No Nz) simplegrading (1 1 1) // block7 hex2d(r7, R0, Ro0, Ro7) (Na No Nz) simplegrading (1 1 1) ); edges ( arc R0b R1b (ex00 ey00 Zb) arc R1b R2b (ex01 ey01 Zb) arc R2b R3b (ex02 ey02 Zb) arc R3b R4b (ex03 ey03 Zb) arc R4b R5b (ex04 ey04 Zb) arc R5b R6b (ex05 ey05 Zb) arc R6b R7b (ex06 ey06 Zb) arc R7b R0b (ex07 ey07 Zb) arc Ro0b Ro1b (ex10 ey10 Zb) arc Ro1b Ro2b (ex11 ey11 Zb) arc Ro2b Ro3b (ex12 ey12 Zb) arc Ro3b Ro4b (ex13 ey13 Zb) arc Ro4b Ro5b (ex14 ey14 Zb) arc Ro5b Ro6b (ex15 ey15 Zb) arc Ro6b Ro7b (ex16 ey16 Zb) arc Ro7b Ro0b (ex17 ey17 Zb) arc R0t R1t (ex00 ey00 Zt) arc R1t R2t (ex01 ey01 Zt) arc R2t R3t (ex02 ey02 Zt) arc R3t R4t (ex03 ey03 Zt) arc R4t R5t (ex04 ey04 Zt) arc R5t R6t (ex05 ey05 Zt) arc R6t R7t (ex06 ey06 Zt) arc R7t R0t (ex07 ey07 Zt) arc Ro0t Ro1t (ex10 ey10 Zt) arc Ro1t Ro2t (ex11 ey11 Zt) arc Ro2t Ro3t (ex12 ey12 Zt) arc Ro3t Ro4t (ex13 ey13 Zt) arc Ro4t Ro5t (ex14 ey14 Zt) arc Ro5t Ro6t (ex15 ey15 Zt) arc Ro6t Ro7t (ex16 ey16 Zt) arc Ro7t Ro0t (ex17 ey17 Zt)

44 ); boundary ( HeatingRing_to_Fluid { type wall; faces ( quad2d(r0, R1) quad2d(r1, R2) quad2d(r2, R3) quad2d(r3, R4) quad2d(r4, R5) quad2d(r5, R6) quad2d(r6, R7) quad2d(r7, R0) ); } outring { type wall; faces ( quad2d(ro0, Ro1) quad2d(ro1, Ro2) quad2d(ro2, Ro3) quad2d(ro3, Ro4) quad2d(ro4, Ro5) quad2d(ro5, Ro6) quad2d(ro6, Ro7) quad2d(ro7, Ro0) ); } front { type empty; faces ( frontquad(r0, R1, Ro1, Ro0) frontquad(r1, R2, Ro2, Ro1) frontquad(r2, R3, Ro3, Ro2) frontquad(r3, R4, Ro4, Ro3) frontquad(r4, R5, Ro5, Ro4) frontquad(r5, R6, Ro6, Ro5) frontquad(r6, R7, Ro7, Ro6) frontquad(r7, R0, Ro0, Ro7) } );

45 back { type empty; faces ( backquad(r0, R1, Ro1, Ro0) backquad(r1, R2, Ro2, Ro1) backquad(r2, R3, Ro3, Ro2) backquad(r3, R4, Ro4, Ro3) backquad(r4, R5, Ro5, Ro4) backquad(r5, R6, Ro6, Ro5) backquad(r6, R7, Ro7, Ro6) backquad(r7, R0, Ro0, Ro7) ); } );

OpenFOAM Project: Different ways to treat rotating geometries

OpenFOAM Project: Different ways to treat rotating geometries /*-------------------------------------------------------------------------------------------------------*\ ======== \\ / F ield OpenFOAM: The Open Source CFD Toolbox \\ / O peration \\ / A nd Copyright

More information

Combination of MRFSimpleFoam and conjugatheatfoam

Combination of MRFSimpleFoam and conjugatheatfoam CFD with OpenSource Software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: Combination of MRFSimpleFoam and conjugatheatfoam Developed for OpenFOAM-1.6.ext Author:

More information

Convective Heat transfer in a vertical slot for the course CFD with OpenSource Software

Convective Heat transfer in a vertical slot for the course CFD with OpenSource Software for the course CFD with OpenSource Software Applied Mechanics/Fluid Dynamics, Chalmers University of Technology, Gothenburg, Sweden December 10, 2016 December 10, 2016 1 / Contents 1 Introduction 2 buoyantboussinesqsimplefoam

More information

A FSI tutorial on the axialturbine tutorial case

A FSI tutorial on the axialturbine tutorial case CFD with OpenSource software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: A FSI tutorial on the axialturbine tutorial case Developed for FOAM-3.1-ext Case files:

More information

Tutorial Two Built in Mesh

Tutorial Two Built in Mesh Built in Mesh 4 th edition, Jan. 2018 This offering is not approved or endorsed by ESI Group, ESI-OpenCFD or the OpenFOAM Foundation, the producer of the OpenFOAM software and owner of the OpenFOAM trademark.

More information

Setting up a case for turbomachinery problems. OpenFOAM kurs 2009 Håkan Nilsson Olivier Petit

Setting up a case for turbomachinery problems. OpenFOAM kurs 2009 Håkan Nilsson Olivier Petit Setting up a case for turbomachinery problems OpenFOAM kurs 2009 Håkan Nilsson Olivier Petit Outline Pre-processing utilities: import a mesh, mergemesh, stitchmesh, transformpoints, creation of zones and

More information

Introduction to the Computer Exercices Turbulence: Theory and Modelling R.Z. Szasz, Energy Sciences, LTH Lund University

Introduction to the Computer Exercices Turbulence: Theory and Modelling R.Z. Szasz, Energy Sciences, LTH Lund University Introduction to the Computer Exercices Turbulence: Theory and Modelling R.Z. Szasz, Energy Sciences, LTH Lund University Outline VERY short CFD introduction Steps of problem solving The software used:

More information

OpenFOAM case: Mixing

OpenFOAM case: Mixing OpenFOAM case: Mixing nelson.marques@fsdynamics.pt; bruno.santos@fsdynamics.pt 30 th September 1 st October 2017 optim ises you rtec hnology 2 1 1. Case Description Overview Solver selection 2. Meshing

More information

MSc/PhD course in CFD with OpenSource software, 2011

MSc/PhD course in CFD with OpenSource software, 2011 MSc/PhD course in CFD with OpenSource software, 2011 Implementation of lift and drag coefficinets in transient condition Developed for OpenFOAM-1.7-x Håkan Nilsson, Chalmers/ Applied Mechanics/ Fluid Dynamics

More information

Project work for the PhD course in OpenFOAM

Project work for the PhD course in OpenFOAM Project work for the PhD course in OpenFOAM A tutorial on how to use Dynamic Mesh solver IcoDyMFOAM Performed by: Pirooz Moradnia Contact: pirooz.moradnia@forbrf.lth.se Spring 2008, Göteborg-Sweden Introduction:

More information

Force based motion of a submerged object using immersed boundary method

Force based motion of a submerged object using immersed boundary method Cite as: Siggeirsson, E.M.V.: Force based motion of a submerged object using immersed boundary metod. In Proceedings of CFD with OpenSource Software, 2016, http://www.tfd.chalmers.se/~hani/kurser/os_cfd_2016

More information

A interphasechangefoam tutorial

A interphasechangefoam tutorial CFD with OpenSource software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: A interphasechangefoam tutorial Developed for OpenFOAM-2.0.x Author: Martin Andersen Peer

More information

Turbo Tools and General Grid Interface

Turbo Tools and General Grid Interface Turbo Tools and General Grid Interface Theoretical Basis and Implementation Hrvoje Jasak, Wikki United Kingdom and Germany Turbo Tools and General Grid Interface p. 1 General Grid Interface Objective Present

More information

Tutorial Ten Residence Time Distribution

Tutorial Ten Residence Time Distribution Residence Time Distribution 4 th edition, Jan. 2018 This offering is not approved or endorsed by ESI Group, ESI-OpenCFD or the OpenFOAM Foundation, the producer of the OpenFOAM software and owner of the

More information

OpenFOAM. in wastewater applications: 2 - Getting Started th June 2015

OpenFOAM. in wastewater applications: 2 - Getting Started th June 2015 OpenFOAM in wastewater applications: 2 - Getting Started n elson.marques@bluecape.com.pt 13-14 th June 2015 Progress Introduction OpenFOAM characterization bluecfd installation Getting started Simulation

More information

A look inside icofoam (and pisofoam) Håkan Nilsson, Chalmers / Applied Mechanics / Fluid Dynamics 235

A look inside icofoam (and pisofoam) Håkan Nilsson, Chalmers / Applied Mechanics / Fluid Dynamics 235 A look inside icofoam (and pisofoam) Håkan Nilsson, Chalmers / Applied Mechanics / Fluid Dynamics 235 A look inside icofoam TheicoFoam directory consists of the following: createfields.h Make/ icofoam.c

More information

OpenFOAM Tutorials: Programming Session

OpenFOAM Tutorials: Programming Session OpenFOAM Tutorials: Programming Session Hrvoje Jasak and Henrik Rusche h.jasak@wikki.co.uk, h.rusche@wikki-gmbh.de Wikki, United Kingdom and Germany Advanced Training at the OpenFOAM Workshop 21.6.2010,

More information

Tutorial Four Discretization Part 1

Tutorial Four Discretization Part 1 Discretization Part 1 4 th edition, Jan. 2018 This offering is not approved or endorsed by ESI Group, ESI-OpenCFD or the OpenFOAM Foundation, the producer of the OpenFOAM software and owner of the OpenFOAM

More information

Pitz-Daily Turbulence Case. Jonathan Russell

Pitz-Daily Turbulence Case. Jonathan Russell Pitz-Daily Turbulence Case Jonathan Russell Content Pitz-Daily Problem 1) Description of the Case 2) Hypothesis 3) Physics of the problem 4) Preprocessing a. Mesh Generation b. Initial/Boundary Conditions

More information

The ERCOFTAC centrifugal pump OpenFOAM case study

The ERCOFTAC centrifugal pump OpenFOAM case study The ERCOFTAC centrifugal pump OpenFOAM case study Olivier Petit and Håkan Nilsson Chalmers University of Technology, SVC Maryse Page and Martin Beaudoin Hydro Québec, Research Institute 4 th OpenFOAM workshop

More information

Tutorial Turbulent Flow and Minor Loss through a Pipe Elbow, Page 1 Pointwise to OpenFOAM Tutorial Minor Losses through a Pipe Elbow

Tutorial Turbulent Flow and Minor Loss through a Pipe Elbow, Page 1 Pointwise to OpenFOAM Tutorial Minor Losses through a Pipe Elbow Tutorial Turbulent Flow and Minor Loss through a Pipe Elbow, Page 1 Pointwise to OpenFOAM Tutorial Minor Losses through a Pipe Elbow Introduction This tutorial provides instructions for meshing an internal

More information

A look inside icofoam (and pisofoam)

A look inside icofoam (and pisofoam) A look inside icofoam (and pisofoam) Håkan Nilsson, Chalmers / Mechanics and Maritime Sciences / Fluid Dynamics 1 A look inside icofoam TheicoFoam directory ($FOAM_SOLVERS/incompressible/icoFoam) consists

More information

snappyhexmesh Basic Training multi Region meshing simulation of heat transfer with chtmultiregionfoam

snappyhexmesh Basic Training multi Region meshing simulation of heat transfer with chtmultiregionfoam Basic Training multi Region meshing simulation of heat transfer with chtmultiregionfoam 1 st edition, Aug. 2015 Editor: Philipp Schretter (TU Wien) Tutorial Two: Multi Region Meshing Mesh creation The

More information

Using the Discrete Ordinates Radiation Model

Using the Discrete Ordinates Radiation Model Tutorial 6. Using the Discrete Ordinates Radiation Model Introduction This tutorial illustrates the set up and solution of flow and thermal modelling of a headlamp. The discrete ordinates (DO) radiation

More information

Open Source Software Course: Assignment 1

Open Source Software Course: Assignment 1 Open Source Software Course: Assignment 1 Mengmeng Zhang Aeronautical and Vehicle Engineering, Royal Insistute of Technology (KTH), Stockholm, Sweden 2012-09-09 Mengmeng Zhang Open Source Software Course

More information

Using Multiple Rotating Reference Frames

Using Multiple Rotating Reference Frames Tutorial 10. Using Multiple Rotating Reference Frames Introduction Many engineering problems involve rotating flow domains. One example is the centrifugal blower unit that is typically used in automotive

More information

Free Convection Cookbook for StarCCM+

Free Convection Cookbook for StarCCM+ ME 448/548 February 28, 2012 Free Convection Cookbook for StarCCM+ Gerald Recktenwald gerry@me.pdx.edu 1 Overview Figure 1 depicts a two-dimensional fluid domain bounded by a cylinder of diameter D. Inside

More information

2. Plane-parallel plates laminar

2. Plane-parallel plates laminar OPENFOAM GUIDE FOR BEGINNERS 2. Plane-parallel plates laminar flow 2.1 Description of the case This first tutorial studies the flow between two plane-parallel plates separated by a distance h so that their

More information

OpenFOAM. q Open source CFD toolbox, which supplies preconfigured solvers, utilities and libraries.

OpenFOAM. q Open source CFD toolbox, which supplies preconfigured solvers, utilities and libraries. OpenFOAM q Open source CFD toolbox, which supplies preconfigured solvers, utilities and libraries. q Flexible set of efficient C++ modules---object-oriented. q Use Finite-Volume Method (FVM) to solve systems

More information

Implementing an application from scratch

Implementing an application from scratch Let us do a little bit of high level programming, this is the hard part of working with OpenFOAM. At this point, you can work in any directory. But we recommend you to work in your OpenFOAM user directory,

More information

Using Multiple Rotating Reference Frames

Using Multiple Rotating Reference Frames Tutorial 9. Using Multiple Rotating Reference Frames Introduction Many engineering problems involve rotating flow domains. One example is the centrifugal blower unit that is typically used in automotive

More information

Flow and Heat Transfer in a Mixing Elbow

Flow and Heat Transfer in a Mixing Elbow Flow and Heat Transfer in a Mixing Elbow Objectives The main objectives of the project are to learn (i) how to set up and perform flow simulations with heat transfer and mixing, (ii) post-processing and

More information

A simple validation case Hagen-Poiseuille solution

A simple validation case Hagen-Poiseuille solution Hagen-Poiseuille solution Re = 100 Incompressible flow Physical and numerical side of the problem: The governing equations of the problem are the incompressible laminar Navier-Stokes equations. We are

More information

Using a Single Rotating Reference Frame

Using a Single Rotating Reference Frame Tutorial 9. Using a Single Rotating Reference Frame Introduction This tutorial considers the flow within a 2D, axisymmetric, co-rotating disk cavity system. Understanding the behavior of such flows is

More information

CFD with OpenFOAM Andreu Oliver González 14/12/2009

CFD with OpenFOAM Andreu Oliver González 14/12/2009 CFD with OpenFOAM Andreu Oliver González 14/12/2009 Introduction Mesh motion approaches and classes Procedure to define a mesh with motion Explanation of dynamicinkjetfvmesh class Modification of dynamicinkjetfvmesh

More information

Open Source Computational Fluid Dynamics

Open Source Computational Fluid Dynamics Open Source Computational Fluid Dynamics An MSc course to gain extended knowledge in Computational Fluid Dynamics (CFD) using open source software. Zoltán Hernádi Department of Fluid Mechanics Budapest

More information

OpenFOAM and Third Party Structural Solver for Fluid Structure Interaction Simulations

OpenFOAM and Third Party Structural Solver for Fluid Structure Interaction Simulations OpenFOAM and Third Party Structural Solver for Fluid Structure Interaction Simulations Robert L. Campbell rlc138@arl.psu.edu Fluids and Structural Mechanics Office Applied Research Laboratory The Pennsylvania

More information

Introduction to fluid mechanics simulation using the OpenFOAM technology

Introduction to fluid mechanics simulation using the OpenFOAM technology Introduction to fluid mechanics simulation using the OpenFOAM technology «Simulation in porous media from pore to large scale» Part II: Mesh complex geometries, application to the evaluation of permeability,

More information

This tutorial illustrates how to set up and solve a problem involving solidification. This tutorial will demonstrate how to do the following:

This tutorial illustrates how to set up and solve a problem involving solidification. This tutorial will demonstrate how to do the following: Tutorial 22. Modeling Solidification Introduction This tutorial illustrates how to set up and solve a problem involving solidification. This tutorial will demonstrate how to do the following: Define a

More information

Coupling of Serpent Neutron Transport Code to OpenFOAM

Coupling of Serpent Neutron Transport Code to OpenFOAM Coupling of Serpent Neutron Transport Code to OpenFOAM Ashkhen Nalbandyan Center for Nuclear Technologies, Technnical University of Denmark, Roskilde, Denmark 2018-11-29 Ashkhen Nalabndyan Beamer slides

More information

Multi-Block Structured Meshing and Pre-Processing for OpenFOAM Turbomachinery Analysis. Dr. Chris Sideroff, Pointwise

Multi-Block Structured Meshing and Pre-Processing for OpenFOAM Turbomachinery Analysis. Dr. Chris Sideroff, Pointwise Multi-Block Structured Meshing and Pre-Processing for OpenFOAM Turbomachinery Analysis Dr. Chris Sideroff, Pointwise TOC Axial turbine meshing demo Advanced feature meshing demo Mesh topology Mesh quality

More information

interphasechangefoam

interphasechangefoam interphasechangefoam This assignment is solved in OpenFOAM 2.0.x. How to apply a heat source to interphasechangefoam to evaporate water. In this presentation will go through the following steps: Short

More information

CastNet: GUI environment for OpenFOAM

CastNet: GUI environment for OpenFOAM CastNet: GUI environment for OpenFOAM CastNet is a preprocessing system and job-control system for OpenFOAM. CastNet works with the standard OpenFOAM releases provided by ESI Group as well as ports for

More information

A COUPLED FINITE VOLUME SOLVER FOR THE SOLUTION OF LAMINAR TURBULENT INCOMPRESSIBLE AND COMPRESSIBLE FLOWS

A COUPLED FINITE VOLUME SOLVER FOR THE SOLUTION OF LAMINAR TURBULENT INCOMPRESSIBLE AND COMPRESSIBLE FLOWS A COUPLED FINITE VOLUME SOLVER FOR THE SOLUTION OF LAMINAR TURBULENT INCOMPRESSIBLE AND COMPRESSIBLE FLOWS L. Mangani Maschinentechnik CC Fluidmechanik und Hydromaschinen Hochschule Luzern Technik& Architektur

More information

Contributions to the Turbomachinery Working Group: Case Study: Single-Channel Pump & Function Object: turboperformance

Contributions to the Turbomachinery Working Group: Case Study: Single-Channel Pump & Function Object: turboperformance Contributions to the Turbomachinery Working Group: : & Function Object: M. Auvinen 1, N. Pedersen 2, K. Dahl 2, H. Nilsson 3 1 Department of Applied Mechanics, Fluid Mechanics Aalto University 2 Structural

More information

How to implement a new boundary condition

How to implement a new boundary condition How to implement a new boundary condition The implementations of the boundary conditions are located in $FOAM_SRC/finiteVolume/fields/fvPatchFields/ To add a new boundary condition, start by finding one

More information

Lab 9: FLUENT: Transient Natural Convection Between Concentric Cylinders

Lab 9: FLUENT: Transient Natural Convection Between Concentric Cylinders Lab 9: FLUENT: Transient Natural Convection Between Concentric Cylinders Objective: The objective of this laboratory is to introduce how to use FLUENT to solve both transient and natural convection problems.

More information

CCP-WSI Programming Day : Course Notes

CCP-WSI Programming Day : Course Notes CCP-WSI Programming Day : Course Notes Learning Outcomes: Modifying, writing and compiling OpenFOAM apps, model (shared object) libraries for runtime selection. These notes accompny the code examples which

More information

Tutorial 2. Modeling Periodic Flow and Heat Transfer

Tutorial 2. Modeling Periodic Flow and Heat Transfer Tutorial 2. Modeling Periodic Flow and Heat Transfer Introduction: Many industrial applications, such as steam generation in a boiler or air cooling in the coil of an air conditioner, can be modeled as

More information

Folder structure and pre-defined File Names in OpenFOAM

Folder structure and pre-defined File Names in OpenFOAM Folder structure and re-defined File Names in OenFOAM Folder Sub-Folders Files / Folder Files / Folder Files / Folder Files / Folder Exlanation constant/ Allclean Allrun olymesh/ - - - oints File to remove

More information

How to implement a new boundary condition

How to implement a new boundary condition How to implement a new boundary condition Håkan Nilsson, Chalmers / Applied Mechanics / Fluid Dynamics 1 How to implement a new boundary condition The implementations of the boundary conditions are located

More information

Tutorial: Modeling Domains with Embedded Reference Frames: Part 2 Sliding Mesh Modeling

Tutorial: Modeling Domains with Embedded Reference Frames: Part 2 Sliding Mesh Modeling Tutorial: Modeling Domains with Embedded Reference Frames: Part 2 Sliding Mesh Modeling Introduction The motion of rotating components is often complicated by the fact that the rotational axis about which

More information

Axisymmetric Viscous Flow Modeling for Meridional Flow Calculation in Aerodynamic Design of Half-Ducted Blade Rows

Axisymmetric Viscous Flow Modeling for Meridional Flow Calculation in Aerodynamic Design of Half-Ducted Blade Rows Memoirs of the Faculty of Engineering, Kyushu University, Vol.67, No.4, December 2007 Axisymmetric Viscous Flow Modeling for Meridional Flow alculation in Aerodynamic Design of Half-Ducted Blade Rows by

More information

AM119: HW4 and more OpenFOAM tutorials

AM119: HW4 and more OpenFOAM tutorials AM119: HW4 and more OpenFOAM tutorials Prof. Trask April 25, 2016 1 Final assignment: the k ɛ model in Open- Foam In the last two lectures we ve learned a little bit about the ideas behind turbulence modeling.

More information

Roll Motion of a Box and Interaction with Free-Surface

Roll Motion of a Box and Interaction with Free-Surface CHALMERS UNIVERSITY OF TECHNOLOGY Project work for the PhD course in CFD WITH OPEN SOURCE SOFTWARE Roll Motion of a Box and Interaction with Free-Surface Author: Arash Eslamdoost arash.eslamdoost@chalmers.se

More information

CFD Modeling of a Radiator Axial Fan for Air Flow Distribution

CFD Modeling of a Radiator Axial Fan for Air Flow Distribution CFD Modeling of a Radiator Axial Fan for Air Flow Distribution S. Jain, and Y. Deshpande Abstract The fluid mechanics principle is used extensively in designing axial flow fans and their associated equipment.

More information

Presentation slides for the course CFD with OpenSource Software 2015

Presentation slides for the course CFD with OpenSource Software 2015 Presentation slides for the course CFD with OpenSource Software 2015 Sebastian Kohlstädt Applied Mechanics/Fluid Dynamics, Chalmers University of Technology, Gothenburg, Sweden 2015-12-08 Sebastian Kohlstädt

More information

Modelling of chemical batch reactor

Modelling of chemical batch reactor CFD with OpenSource software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: Modelling of chemical batch reactor Developed for OpenFOAM-2.4x Author: Rajukiran Antham

More information

Non-Newtonian Transitional Flow in an Eccentric Annulus

Non-Newtonian Transitional Flow in an Eccentric Annulus Tutorial 8. Non-Newtonian Transitional Flow in an Eccentric Annulus Introduction The purpose of this tutorial is to illustrate the setup and solution of a 3D, turbulent flow of a non-newtonian fluid. Turbulent

More information

Write your own solver

Write your own solver Write your own solver Prof Gavin Tabor Friday 25th May 2018 Prof Gavin Tabor Write your own solver Friday 25th May 2018 1 / 16 Writing Apps where to start? Installation directory structure /opt/foam/openfoam

More information

More tutorials. Håkan Nilsson, Chalmers/ Applied Mechanics/ Fluid Dynamics 67

More tutorials. Håkan Nilsson, Chalmers/ Applied Mechanics/ Fluid Dynamics 67 More tutorials Wewillnowlearnhowtousea(small)numberofusefulutilitiesandlibraries. Some of them are described in the UserGuide and ProgrammersGuide, and some ofthemhavebeendiscussedintheforum. Inyourhomeassignmentyouwillbeaskedtogothroughallthewrittentutorials

More information

Tutorial 1. Introduction to Using FLUENT: Fluid Flow and Heat Transfer in a Mixing Elbow

Tutorial 1. Introduction to Using FLUENT: Fluid Flow and Heat Transfer in a Mixing Elbow Tutorial 1. Introduction to Using FLUENT: Fluid Flow and Heat Transfer in a Mixing Elbow Introduction This tutorial illustrates the setup and solution of the two-dimensional turbulent fluid flow and heat

More information

Hands-On Training with OpenFOAM

Hands-On Training with OpenFOAM Hands-On Training with OpenFOAM Flow Around a 2-D Airfoil Hrvoje Jasak hrvoje.jasak@fsb.hr Faculty of Mechanical Engineering and Naval Architecture University of Zagreb, Croatia Hands-On Training with

More information

OpenFOAM Basic Training

OpenFOAM Basic Training OpenFOAM Basic Training 4th edition, Jan. 2018 This offering is not approved or endorsed by ESI Group, ESI-OpenCFD or the OpenFOAM Foundation, the producer of the OpenFOAM software and owner of the OpenFOAM

More information

Open Source Computational Fluid Dynamics

Open Source Computational Fluid Dynamics Open Source Computational Fluid Dynamics An MSc course to gain extended knowledge in Computational Fluid Dynamics (CFD) using open source software. Teachers: Miklós Balogh and Zoltán Hernádi Department

More information

Auto Injector Syringe. A Fluent Dynamic Mesh 1DOF Tutorial

Auto Injector Syringe. A Fluent Dynamic Mesh 1DOF Tutorial Auto Injector Syringe A Fluent Dynamic Mesh 1DOF Tutorial 1 2015 ANSYS, Inc. June 26, 2015 Prerequisites This tutorial is written with the assumption that You have attended the Introduction to ANSYS Fluent

More information

Calculate a solution using the pressure-based coupled solver.

Calculate a solution using the pressure-based coupled solver. Tutorial 19. Modeling Cavitation Introduction This tutorial examines the pressure-driven cavitating flow of water through a sharpedged orifice. This is a typical configuration in fuel injectors, and brings

More information

Moving Wave class. 1. Introduction

Moving Wave class. 1. Introduction Moving Wave class 1. Introduction This tutorial describes how to generate moving waves in OpenFoam. This class can be used to simulate for example the effect of ocean waves on offshore structures. A mesh

More information

Implementing third order compressible flow solver for hexahedral meshes in OpenFoam

Implementing third order compressible flow solver for hexahedral meshes in OpenFoam Tutorial/Report in OpenFoam Course 8 Implementing third order compressible flow solver for hexahedral meshes in OpenFoam Martin Olausson, Chalmers University of Technology, SE-1 9 Gothenburg, Sweden Abstract

More information

OpenFOAM Tutorial. [ ] Numerical Methods in Fluid Dynamics. Finite Volume Method, Dictionary Syntax, and Implementation Details

OpenFOAM Tutorial. [ ] Numerical Methods in Fluid Dynamics. Finite Volume Method, Dictionary Syntax, and Implementation Details [302.044] Numerical Methods in Fluid Dynamics Tutorial Finite Volume Method, Dictionary Syntax, and Implementation Details Univ. Assist. MSc. Francesco Romanò francesco.romano@tuwien.ac.at December 11th,

More information

Using the Eulerian Multiphase Model for Granular Flow

Using the Eulerian Multiphase Model for Granular Flow Tutorial 21. Using the Eulerian Multiphase Model for Granular Flow Introduction Mixing tanks are used to maintain solid particles or droplets of heavy fluids in suspension. Mixing may be required to enhance

More information

A description of isoadvector - a numerical method for improved surface sharpness in two-phase flows

A description of isoadvector - a numerical method for improved surface sharpness in two-phase flows Cite as: Olsson, E.: A description of isoadvector - a numerical method for improved surface sharpness in two-phase flows. In Proceedings of CFD with OpenSource Software, 2017, Edited by Nilsson. H., http://dx.doi.org/10.17196/os_cfd#year_2017

More information

Estimating Vertical Drag on Helicopter Fuselage during Hovering

Estimating Vertical Drag on Helicopter Fuselage during Hovering Estimating Vertical Drag on Helicopter Fuselage during Hovering A. A. Wahab * and M.Hafiz Ismail ** Aeronautical & Automotive Dept., Faculty of Mechanical Engineering, Universiti Teknologi Malaysia, 81310

More information

Modifying sixdofrigidbodymotion library to match eigenfrequency of a sprung rod with vortex shedding due to

Modifying sixdofrigidbodymotion library to match eigenfrequency of a sprung rod with vortex shedding due to CFD with OpenSource software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: Modifying sixdofrigidbodymotion library to match eigenfrequency of a sprung rod with vortex

More information

Implementation of a myinterfoamdiabatic Solver with OpenFOAM

Implementation of a myinterfoamdiabatic Solver with OpenFOAM CFD with OpenSource Software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: Implementation of a myinterfoamdiabatic Solver with OpenFOAM Developed for OpenFOAM-1.7.x

More information

Speed and Accuracy of CFD: Achieving Both Successfully ANSYS UK S.A.Silvester

Speed and Accuracy of CFD: Achieving Both Successfully ANSYS UK S.A.Silvester Speed and Accuracy of CFD: Achieving Both Successfully ANSYS UK S.A.Silvester 2010 ANSYS, Inc. All rights reserved. 1 ANSYS, Inc. Proprietary Content ANSYS CFD Introduction ANSYS, the company Simulation

More information

Open FOAM. The Open Source CFD Toolbox. User Guide

Open FOAM. The Open Source CFD Toolbox. User Guide Open FOAM The Open Source CFD Toolbox User Guide Version 1.6 24th July 2009 U-2 Copyright c 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 OpenCFD Limited. Permission is granted to copy, distribute

More information

Simulation of Turbulent Flow around an Airfoil

Simulation of Turbulent Flow around an Airfoil 1. Purpose Simulation of Turbulent Flow around an Airfoil ENGR:2510 Mechanics of Fluids and Transfer Processes CFD Lab 2 (ANSYS 17.1; Last Updated: Nov. 7, 2016) By Timur Dogan, Michael Conger, Andrew

More information

Co-Simulation von Flownex und ANSYS CFX am Beispiel einer Verdrängermaschine

Co-Simulation von Flownex und ANSYS CFX am Beispiel einer Verdrängermaschine Co-Simulation von Flownex und ANSYS CFX am Beispiel einer Verdrängermaschine Benoit Bosc-Bierne, Dr. Andreas Spille-Kohoff, Farai Hetze CFX Berlin Software GmbH, Berlin Contents Positive displacement compressors

More information

Introduction to ANSYS CFX

Introduction to ANSYS CFX Workshop 03 Fluid flow around the NACA0012 Airfoil 16.0 Release Introduction to ANSYS CFX 2015 ANSYS, Inc. March 13, 2015 1 Release 16.0 Workshop Description: The flow simulated is an external aerodynamics

More information

November c Fluent Inc. November 8,

November c Fluent Inc. November 8, MIXSIM 2.1 Tutorial November 2006 c Fluent Inc. November 8, 2006 1 Copyright c 2006 by Fluent Inc. All Rights Reserved. No part of this document may be reproduced or otherwise used in any form without

More information

Team 194: Aerodynamic Study of Airflow around an Airfoil in the EGI Cloud

Team 194: Aerodynamic Study of Airflow around an Airfoil in the EGI Cloud Team 194: Aerodynamic Study of Airflow around an Airfoil in the EGI Cloud CFD Support s OpenFOAM and UberCloud Containers enable efficient, effective, and easy access and use of MEET THE TEAM End-User/CFD

More information

CEE 618 Scientific Parallel Computing (Lecture 10)

CEE 618 Scientific Parallel Computing (Lecture 10) 1 / 20 CEE 618 Scientific Parallel Computing (Lecture 10) Computational Fluid Mechanics using OpenFOAM: Cavity (2) Albert S. Kim Department of Civil and Environmental Engineering University of Hawai i

More information

TUTORIAL#4. Marek Jaszczur. Turbulent Thermal Boundary Layer on a Flat Plate W1-1 AGH 2018/2019

TUTORIAL#4. Marek Jaszczur. Turbulent Thermal Boundary Layer on a Flat Plate W1-1 AGH 2018/2019 TUTORIAL#4 Turbulent Thermal Boundary Layer on a Flat Plate Marek Jaszczur AGH 2018/2019 W1-1 Problem specification TUTORIAL#4 Turbulent Thermal Boundary Layer - on a flat plate Goal: Solution for Non-isothermal

More information

Introduction to CFX. Workshop 2. Transonic Flow Over a NACA 0012 Airfoil. WS2-1. ANSYS, Inc. Proprietary 2009 ANSYS, Inc. All rights reserved.

Introduction to CFX. Workshop 2. Transonic Flow Over a NACA 0012 Airfoil. WS2-1. ANSYS, Inc. Proprietary 2009 ANSYS, Inc. All rights reserved. Workshop 2 Transonic Flow Over a NACA 0012 Airfoil. Introduction to CFX WS2-1 Goals The purpose of this tutorial is to introduce the user to modelling flow in high speed external aerodynamic applications.

More information

myenginefoam Implementation of different combustion model and newjanafthermo model

myenginefoam Implementation of different combustion model and newjanafthermo model myenginefoam Implementation of different and Lorenzo Bartolucci Department of Industrial Engineering University of Rome Tor Vergata Italy 28/11/2014 Lorenzo Bartolucci myenginefoam 1 Outline: implementation

More information

Simulation of Flow Development in a Pipe

Simulation of Flow Development in a Pipe Tutorial 4. Simulation of Flow Development in a Pipe Introduction The purpose of this tutorial is to illustrate the setup and solution of a 3D turbulent fluid flow in a pipe. The pipe networks are common

More information

Fully turbulent flow around a sphere using OpenFOAM

Fully turbulent flow around a sphere using OpenFOAM Fully turbulent flow around a sphere using OpenFOAM In this tutorial you will simulate a fully turbulent flow with a Reynolds number of 1 million around a sphere with a radius of 1 m using a given CAD

More information

Accurate and Efficient Turbomachinery Simulation. Chad Custer, PhD Turbomachinery Technical Specialist

Accurate and Efficient Turbomachinery Simulation. Chad Custer, PhD Turbomachinery Technical Specialist Accurate and Efficient Turbomachinery Simulation Chad Custer, PhD Turbomachinery Technical Specialist Outline Turbomachinery simulation advantages Axial fan optimization Description of design objectives

More information

reactingfoam Solver to Calculate Radiative Heat Transfer

reactingfoam Solver to Calculate Radiative Heat Transfer reactingfoam Solver Calculate Radiative Heat Transfer By: Sajjad Haider Assignment for the Course CFD with OpenSource software, 2011 Chalmers University of Technology In some combustion devices, involving

More information

Fluid Mechanics Simulation Essentials R2014X

Fluid Mechanics Simulation Essentials R2014X Fluid Mechanics Simulation Essentials R2014X About this Course Course objectives Upon completion of this course you will be able to: Set up and create CFD, CHT and FSI models in the 3DEXPERIENCE Platform

More information

Advances in Turbomachinery Simulation Fred Mendonça and material prepared by Chad Custer, Turbomachinery Technology Specialist

Advances in Turbomachinery Simulation Fred Mendonça and material prepared by Chad Custer, Turbomachinery Technology Specialist Advances in Turbomachinery Simulation Fred Mendonça and material prepared by Chad Custer, Turbomachinery Technology Specialist Usage From Across the Industry Outline Key Application Objectives Conjugate

More information

1 Motorbike with ParaFoam

1 Motorbike with ParaFoam Motorbike with ParaFoam Leon Kos, University of Ljubljana, Slovenia University of Ljubljana PRACE Summer of HPC 2017 Training Week 7 July 2017, Ostrava 1 Motorbike with ParaFoam Learning outcome After

More information

icofsifoam and interfsifoam

icofsifoam and interfsifoam icofsifoam and interfsifoam Constructing solvers for weakly coupled problems using OpenFOAM-1.5-dev Håkan Nilsson, Chalmers / Applied Mechanics / Fluid Dynamics 1 Fluid structure interaction Fluid structure

More information

An Unsteady-Periodic Flow generated by a Oscillating Moving Mesh

An Unsteady-Periodic Flow generated by a Oscillating Moving Mesh CFD with OpenSource software A course at Chalmers University of Technology Taught by Håkan Nilsson Project work: An Unsteady-Periodic Flow generated by a Oscillating Moving Mesh Developed for OpenFOAM-2.1.x

More information

NUMERICAL INVESTIGATION OF THE FLOW BEHAVIOR INTO THE INLET GUIDE VANE SYSTEM (IGV)

NUMERICAL INVESTIGATION OF THE FLOW BEHAVIOR INTO THE INLET GUIDE VANE SYSTEM (IGV) University of West Bohemia» Department of Power System Engineering NUMERICAL INVESTIGATION OF THE FLOW BEHAVIOR INTO THE INLET GUIDE VANE SYSTEM (IGV) Publication was supported by project: Budování excelentního

More information

CFD Simulation of Air Flow and Thermal Behavior of Electronics Assembly within Plastic Enclosure for Outdoor Environments

CFD Simulation of Air Flow and Thermal Behavior of Electronics Assembly within Plastic Enclosure for Outdoor Environments Keywords: CFD Simulation, Computational Fluid Dynamics, CFD conjugate heat transfer, CFD natural convection, CFD PCB simulation, CFD electronics enclosures, CFD ASICS, thermal predictions of electronic

More information

Axial Channel Water Jacket Cooling

Axial Channel Water Jacket Cooling 28 November 2017 Motor-CAD Software Tutorial: Axial Channel Water Jacket Cooling Contents 1. Description... 1 2. Setting up the housing and axial channels... 2 3. Setting the water jacket fluid and flow

More information

OpenFOAM directory organization

OpenFOAM directory organization OpenFOAM directory organization Håkan Nilsson, Chalmers / Mechanics and Maritime Sciences / Fluid Dynamics 1 OpenFOAM directory organization We will first browse the directories graphically in Linux. Below

More information

Automatic Hex-Dominant Mesh Generation for CFD Analysis of Formula One Car with cfmeshpro

Automatic Hex-Dominant Mesh Generation for CFD Analysis of Formula One Car with cfmeshpro Automatic Hex-Dominant Mesh Generation for CFD Analysis of Formula One Car with cfmeshpro Alen Cukrov and Franjo Juretić Creative Fields Ltd, X Vrbik 4, 10000 Zagreb, Croatia 1 Introduction This report

More information