|
[Sponsors] |
May 15, 2013, 15:36 |
Generate mesh for MRF solvers
|
#1 |
Member
Pengchuan Wang
Join Date: Nov 2012
Location: Michigan USA
Posts: 58
Rep Power: 14 |
Hello everyone,
I'm new to OpenFOAM. Now I'm working on a project including rotating refrence frames. I want to use MRF solvers. However, it seems that the mesh for MRF solvers is very complicated. It is not just blockMesh. So I want to know how to generate a mesh for MRF solvers. Do you guys have any suggestions or tutorials for me to start with? Many thanks. |
|
May 17, 2013, 13:19 |
|
#2 |
Senior Member
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 621
Rep Power: 0 |
You could use snappyHexMesh if you have your geometry in STL format. You can easily add creation of MRF zones in the snappyHexMeshDict.
In the geometry section add a searchable cylinder like: Code:
impellerMRF { type searchableCylinder; point1 (0.0 0.0 0.07 ); point2 (0.0 0.0 0.14 ); radius 0.1; } Code:
impellerMRF { level (3 4 ); cellZoneInside inside; cellZone impellerMRF; faceZone impellerMRF; } Last edited by chegdan; May 17, 2013 at 13:24. Reason: grammar |
|
May 22, 2013, 09:51 |
|
#3 |
Member
Pengchuan Wang
Join Date: Nov 2012
Location: Michigan USA
Posts: 58
Rep Power: 14 |
Hi Daniel,
Thank you for your reply. But right now I have nothing except a blockMeshDict. Originally I use blockMesh in icoFoam, Now I want to use MRFsimpleFoam, I just don't know how to move to that. Can you tell me what I can do that I can move from icoFoam to MRFsimpleFoam? Thanks, Pengchuan |
|
May 22, 2013, 10:56 |
|
#4 |
Senior Member
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 621
Rep Power: 0 |
Pechwang
There are several ways to go about this. If you just want to use blockMesh, there is an example in tutorials/incompressible/simpleFoam/mixerVessel2D. Dan |
|
May 22, 2013, 11:17 |
|
#5 |
Senior Member
Kent Wardle
Join Date: Mar 2009
Location: Illinois, USA
Posts: 219
Rep Power: 21 |
Like Dan said, it really depends on the shape of your domain. What the MRF solver requires is that you define a cellZone for the rotating region and have this assigned as a MRFZone (where this happens is different if you are using 2.2 or earlier). There are lots of specific commands to select a block of cells and create a cellZone from them and it depends on the shape of the rotating region. You can do this 'on the fly' in snappy as was suggested or you can create the mesh and then run topoSet after the fact to create your cellZone from selections defined in system/topoSetDict. Have a look at OpenFOAM-<version>/applications/utilities/mesh/manipulation/topoSet/topoSetDict to see all the options and how to do this. Basically you will need to run some sort of <shape>ToCell command to create a cellSet and then a setToCellZone source type to make a cellZone from that cellSet.
|
|
May 22, 2013, 12:09 |
|
#6 | |
Member
Pengchuan Wang
Join Date: Nov 2012
Location: Michigan USA
Posts: 58
Rep Power: 14 |
Hi Dan,
Thank you for your reply. My domain right now is very simple. There are two plates, one is flate, and the other has some grooves and it can be more complex. Then the grooved plate is rotaing and the smooth wall is stationary. The fluid flows from the inner radius to out redius. I think the whole domain is rotating and the whole domain is MRFzone. Do I make sense? Quote:
|
||
May 23, 2013, 09:32 |
|
#7 | |
Senior Member
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 621
Rep Power: 0 |
Quote:
|
||
May 23, 2013, 10:17 |
|
#8 |
Member
Pengchuan Wang
Join Date: Nov 2012
Location: Michigan USA
Posts: 58
Rep Power: 14 |
Hi Dan,
I tried SRFsimpleFoam before and yes, it works. But later as the geometry becomes complex, I have to use the MRFsimpleFoam and MRFinterFoam, since there is no SRFinterFoam. So I think I have to learn to use MRF eventually. |
|
May 23, 2013, 16:13 |
|
#9 |
Senior Member
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 621
Rep Power: 0 |
pechwang
Then we go back to the comment by kwardle. You can use topoSet to define a group of cells to be an MRF zone and then use your MRF solver. You could always extract your surfaces that you have in your mesh with Code:
surfaceMeshTriangulate [options] <outputFile> Dan Last edited by chegdan; May 24, 2013 at 09:27. Reason: fixed some inocrrect information..sorry |
|
September 10, 2013, 10:27 |
|
#10 | |
New Member
Pablo Alejandro
Join Date: Jul 2013
Location: Nuevo León, México
Posts: 3
Rep Power: 13 |
Quote:
Hi everyone, I think that maybe I'm misunderstanding how to use MRF zones. My question is: if you have a .stl geometry (impeller.stl) , can you define it in snappyHexMeshDict as a MRF zone?? or must you create a searchableCylinder that surrounds the .stl geometry and define that cylinder as the MRF zone? Thank you in advance for any comment. Regards! |
||
Tags |
mesh generation, mrfzones |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[ICEM] How to generate this kind of mesh? | mingersai | ANSYS Meshing & Geometry | 51 | February 16, 2017 08:32 |
[snappyHexMesh] SnappyHexMesh for internal Flow | vishwa | OpenFOAM Meshing & Mesh Conversion | 24 | June 27, 2016 09:54 |
[snappyHexMesh] No layers in a small gap | bobburnquist | OpenFOAM Meshing & Mesh Conversion | 6 | August 26, 2015 10:38 |
engrid -> save as .stl with boundarie codes | Zymon | enGrid | 31 | August 29, 2011 14:40 |
Convergence moving mesh | lr103476 | OpenFOAM Running, Solving & CFD | 30 | November 19, 2007 15:09 |