CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

RefineMesh does not perform 2x2 refinement through the middle of edges

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   March 11, 2008, 05:20
Default Dear OpenFoamers, I have no
  #1
New Member
 
nicasch
Join Date: Mar 2009
Posts: 23
Rep Power: 17
nicasch is on a distinguished road
Dear OpenFoamers,

I have noticed some strange behavior of refineMesh utility. I have created an axisimetric 2D slice, using blockMesh, consisting of uniform hexahedra, here how it looks like:



After applying refineMesh I obtained a refined mesh, but it seems a little strange near the axis of symmetry. The mesh seems to be not refined in a 2x2 manner through the middle of edges, as the refineMeshDict says. I tried various combinations of HexTopology and geometricCut entries, but I was never able to get a fine 2x2 refined mesh. My refined meshes looks like this:






My blockMeshDict and refineMeshDict are:

// blockMesh mesh description file
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
convertToMeters 0.001;

vertices
(
(0 0 0)
(45 0 1.96474)
(45 0 -1.96474)
(0 45 0)
(45 45 1.96474)
(45 45 -1.96474)
);

blocks
(
hex (0 1 2 0 3 4 5 3) (45 1 45) simpleGrading (1 1 1)
);

patches
(
wedge wedgeFront
(
(4 3 0 1)
)
wedge wedgeBack
(
(5 2 0 3)
)
patch atmosphereTop
(
(3 4 5 3)
)
patch wallBottom
(
(0 2 1 0)
)
wall wallRightSide
(
(5 4 1 2)
)
empty centralAxis
(
(0 0 3 3)
)
);

mergePatchPairs
(
);
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */


// refineMesh description file
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object refineMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Cells to refine; name of cell set
set c0;
// Type of coordinate system:
// - global : coordinate system same for every cell. Usually aligned with
// x,y,z axis. Specify in globalCoeffs section below.
// - patchLocal : coordinate system different for every cell. Specify in
// patchLocalCoeffs section below.
coordinateSystem global;
//coordinateSystem patchLocal;
// .. and its coefficients. x,y in this case. (normal direction is calculated
// as tan1^tan2)
globalCoeffs
{
tan1 (1 0 0);
tan2 (0 1 0);
}
patchLocalCoeffs
{
patch outside; // Normal direction is facenormal of zero'th face of patch
tan1 (1 0 0);
}
// List of directions to refine
directions
(
tan1
tan2
);
// Whether to use hex topology. This will
// - if patchLocal: all cells on selected patch should be hex
// - split all hexes in 2x2x2 through the middle of edges.
useHexTopology no;
// Cut purely geometric (will cut hexes through vertices) or take topology
// into account. Incompatible with useHexTopology
geometricCut no;
// Write meshes from intermediate steps
writeMesh yes;
// ************************************************** *********************** //

Does anyone knows what is wrong? Is this due to some internal control of OF, which does not allow 2x2 refinement of axisymetric meshes?

Best Regards
nicasch is offline   Reply With Quote

Old   March 11, 2008, 05:26
Default sorry, the images are here: h
  #2
New Member
 
nicasch
Join Date: Mar 2009
Posts: 23
Rep Power: 17
nicasch is on a distinguished road
sorry, the images are here:





nicasch is offline   Reply With Quote

Old   March 11, 2008, 05:57
Default The cells at the wedge axis ar
  #3
Senior Member
 
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26
mattijs is on a distinguished road
The cells at the wedge axis are not hexes and that might give you problems. Either
- start off from all hexes, refine and only then make into wedge (wasn't there a makeAxialMesh on the Wiki?) or
- try the geometricCut yes to not take into account any topology. Your mesh will have to be symmetric in the x-y plane.
mattijs is offline   Reply With Quote

Old   March 14, 2008, 05:12
Default Thanks Mattijs! I tried out
  #4
New Member
 
nicasch
Join Date: Mar 2009
Posts: 23
Rep Power: 17
nicasch is on a distinguished road
Thanks Mattijs!

I tried out the makeAxialMesh utility, it worked just fine
nicasch is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[mesh manipulation] RefineMesh prims not split in the middle of the edge anfromm OpenFOAM Meshing & Mesh Conversion 1 April 30, 2019 12:44
[mesh manipulation] RefineMesh tetrahedral markc OpenFOAM Meshing & Mesh Conversion 3 December 7, 2010 10:16
[blockMesh] RefineMesh warning mgz1985 OpenFOAM Meshing & Mesh Conversion 1 August 29, 2008 09:45
[mesh manipulation] Using refineMesh matteo_gautero OpenFOAM Meshing & Mesh Conversion 0 February 11, 2008 10:07
Perform an axilsymetric run Isaac Phoenics 0 April 27, 2007 09:28


All times are GMT -4. The time now is 14:01.