|
[Sponsors] |
September 14, 2010, 16:54 |
Modifying Mixer Ggi
|
#1 |
Senior Member
Robert
Join Date: Sep 2010
Posts: 158
Rep Power: 16 |
EDIT: SOLUTION IN THIRD POST
Hello everyone, I have been trying to modify mixerggi for it to run an arbitrary rotor and stator mesh. I followed the procedure here: http://www.cfd-online.com/Forums/ope...m-dummies.html . My calculations show that the empty faces to cells ratio is an integer. I performed the calculation based off of the numbers from the polyMesh files 'boundary' (for empty faces) and 'cellZones' (for cell count). No calculations were actually even required, as the number of empty faces and the corresponding cellzone count were equal. However, I still got the error: Code:
... Reading field rAU if present This mesh contains patches of type empty but is not 1D or 2D by virtue of the fact that the number of faces of this empty patch is not divisible by the number of cells. From function emptyFvPatchField<Type>::updateCoeffs() in file fields/fvPatchFields/constraint/empty/emptyFvPatchField.C at line 148. FOAM exiting Code:
if ( this->patch().patch().size() % this->dimensionedInternalField().mesh().nCells() ) { FatalErrorIn("emptyFvPatchField<Type>::updateCoeffs()") << "This mesh contains patches of type empty but is not 1D or 2D\n" " by virtue of the fact that the number of faces of this\n" " empty patch is not divisible by the number of cells." << exit(FatalError); } Well, I first intended to attach my files, but the forum wont let me (many cells in this case). So I have to ask for help even though I can't give you all the files, but of course, if you need a specific part of the files to look at, i can post it. Last edited by lordvon; September 15, 2010 at 19:01. |
|
September 14, 2010, 21:53 |
|
#2 |
Senior Member
Robert
Join Date: Sep 2010
Posts: 158
Rep Power: 16 |
I tried changing the c file to show the values that OpenFOAM is using to check the empty faces vs. cells ratio, but it does not change the run. Do i need to recompile? How would I do so? (Version 1.5-dev)
Last edited by lordvon; September 15, 2010 at 07:29. |
|
September 15, 2010, 15:26 |
Yes
|
#3 |
Senior Member
Robert
Join Date: Sep 2010
Posts: 158
Rep Power: 16 |
(I was running Ubuntu 10.04, OpenFOAM 1.5-dev, svn revision 1284)
SOLVED, thanks to some other threads on this forum. Here's what I did, and it should work for any arbitrary setup of 2D flow, that has a cylindrical rotating mesh and a stator mesh. 1) Create two meshes: the rotating one and the stator. Make sure of course that the rotor mesh fits in the stator (same size). I created it in gmsh, and there is a complete, easy, and well-written procedure here: http://openfoamwiki.net/index.php/2D...ial_using_GMSH . A few necessary modifications though: do not make a surface group of any of the intended empty faces; leave the empty surfaces unnamed. They will be put into defaultFaces when the mesh is converted, and the ggi script as used in mixerGgi assumes empty faces are in the defaultFaces group (I named my empty surfaces, and even though I set them empty, I still got the error in my first post above; the gmsh conversion always automatically makes defaultFaces, even if the number ends up being zero). Also important: you may have to do a simple and quick edit the .msh file if gmshToFoam is giving you an error. Delete the the first 'physical dimension' numbers; they are in front of all of the things you had to give names to. These numbers can only be 1, 2, or 3 (denoting number of dimensions) and messes with what gmshToFoam is expecting to read. Oh, also I named the slider faces and the volumes the same as they are in the mixerGgi tutorial file (outsideSlider, insideSlider, insideZone, outsideZone). This saves you some time as you will not have to edit some other files in the ggi tutorial. You may get errors if you have narrow gaps to mesh; but it is no problem, just set a finer mesh there (see my other thread: 'Graded Mesh from gmsh?'). 2) Combine the mesh and prepare for ggi simulation: http://www.cfd-online.com/Forums/ope...m-dummies.html . Make sure you have the initial conditions set in the '0' folder and the 'boundary' file set appropriately. 3) Rename 'insideZone' (or whatever you called it, the cells/volume in the rotating mesh) to 'movingCells' in the file 'contant/polyMesh/cellZones'. This is necessary; reference here: http://www.cfd-online.com/Forums/ope...rbdymfoam.html . 4) Run simulation! (turbDyMFoam or icoDyMFoam) Last edited by lordvon; September 19, 2010 at 14:56. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Floating point exception error | Alan | OpenFOAM Running, Solving & CFD | 11 | July 1, 2021 22:51 |
Difference between ggi and overlapGgi? GGI Tips and Tricks? | philippose | OpenFOAM Running, Solving & CFD | 7 | January 16, 2013 10:40 |
GGI in OpenFOAM-1.5-dev | philippose | OpenFOAM Running, Solving & CFD | 14 | November 13, 2011 15:55 |
Problem using GGI | besto | OpenFOAM | 13 | October 30, 2010 08:34 |
GGI bug?? | rieuk | OpenFOAM Running, Solving & CFD | 2 | April 25, 2010 11:47 |