CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Meshing & Mesh Conversion (https://www.cfd-online.com/Forums/openfoam-meshing/)
-   -   [blockMesh] BlockMesh face merging (https://www.cfd-online.com/Forums/openfoam-meshing/61794-blockmesh-face-merging.html)

duderino March 10, 2005 02:21

BlockMesh face merging
 
Is there a blockMesh file in the tutorials where face merging is used? I want to look at the syntax.

Thank you!

chris March 10, 2005 03:38

I think there's merging in the
 
I think there's merging in the example case:
$FOAM_TUTORIALS/simpleFoam/pitzDaily3Blocks

The documentation about face merging is at:
http://www.opencfd.co.uk/openfoam/do...32-1680006.3.2

nakamura March 10, 2005 08:40

In my case, `simpleFoam . pitz
 
In my case, `simpleFoam . pitzDaily3Blocks` shows "--> FOAM FATAL IO ERROR : keyword interface is undefined ....".
So I changed the type of interface from patch to wall
and added some lines like
interface
{
type fixedValue;
value uniform (0 0 0);
}
to 0/{R,U,epsilon,k,nuTilda,p}.
After these changes I can excute it.
I think that after merging the patch "interface" has no sence but simpleFoam may not think so,,,

duderino March 12, 2005 08:49

I want to attach (merge) a cub
 
I want to attach (merge) a cuboid to the curved surface of a cylinder with blockMesh. The blockMesh tool generates a grid which looks good. But at the merged cell layers it somehow produces pyramid-cells, which are unwanted.

What can I do to merge the cuboid to the cylinder without the pyramid-cells?

May somebody with blockMesh experience can look at it?! I attache the blockMeshDict file
http://www.cfd-online.com/OpenFOAM_D...hment_icon.gif blockMeshDict

mattijs March 14, 2005 03:39

Hi Duderino, I run checkMes
 
Hi Duderino,

I run checkMesh on your geometry and get

hexahedra: 2516
prisms: 0
wedges: 0
pyramids: 0
tet wedges: 0
tetrahedra: 0
polyhedra: 9
Number of regions: 1 (OK).


So it seems to have correctly merged the cells and introduced 9 general polyhedra (i.e. anything not of the above) on the interface. You might see them as pyramids since vtk/paraview cannot handle polyhedra and we decompose them before passing them to vtk)

You can pick these up using the cellSet utility (in mesh/manipulation). See the cellSetDict dictionary on how to use it ('shapeToCell')

Mattijs

duderino March 15, 2005 04:49

Hi Mattijs, Thank you for y
 
Hi Mattijs,

Thank you for your help.

If I merge two patches (surfaces) at the exakt same location of the exakt same size, I will get two "internal" patches(with nFaces 0).
Allthough this "internal" patch has zero(?) Faces, I am still asked for a boundary condition.

Does it matter which boudary I choose?

Thank you!

mattijs March 15, 2005 05:02

a) leave them there and give t
 
a) leave them there and give them a 'simple' boundary condition (e.g. fixedValue)

b) remove them. You can edit the polyMesh/boundary file and remove the patches with zero faces (and adapt the number of patches at the top of the file).

(Note that removing patches is only allowed for zero-sized patches)

nakamura March 15, 2005 06:25

Hi Mattijs, I've applied yo
 
Hi Mattijs,

I've applied your suggestion b) to simpleFoam/pitzDaily3Blocks and it goes fine.

Thanks.

jimhuang March 31, 2006 19:42

I am trying to merge two patch
 
I am trying to merge two patches with a shared edge. Could any one tell me how to declare both patches as the masters. Thanks!

Jim

nikhilmadduri June 23, 2008 22:25

hi everyone. i was trying to c
 
hi everyone. i was trying to create a mesh around a solid cylinder. can anyone suggest me which will be the best way? as im new to openfoam, i started with quarter part of the whole mesh to be generated containg the quarter of the cylinder. i did it in blockmesh...while executing it, i was finding the following errors. can anyone suggest me what might be the bug in here?

/*---------------------------------------------------------------------------*\
| ========= | |
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \ / O peration | Version: 1.4.1 |
| \ / A nd | Web: http://www.openfoam.org |
| \/ M anipulation | |
\*---------------------------------------------------------------------------*/

Exec : blockMesh /home/nikhil/OpenFOAM/nikhil-1.4.1/run/tutorials/icoFoam cavi
tyGrade
Date : Jun 24 2008
Time : 09:42:12
Host : localhost
PID : 22816
Root : /home/nikhil/OpenFOAM/nikhil-1.4.1/run/tutorials/icoFoam
Case : cavityGrade
Nprocs : 1
Create time


Reading block mesh description dictionary

Creating block mesh

Creating blockCorners

Creating curved edges

Creating blocks

Creating patches

Creating block mesh topology

Default patch type set to empty

Check block mesh topology

Basic statistics
Number of internal faces : 0
Number of boundary faces : 12
Number of defined boundary faces : 12
Number of undefined boundary faces : 0

Checking patch -> block consistency

Creating block offsets

Creating merge list .

Creating points

Creating cells

Creating patches

Creating mesh from block mesh

Default patch type set to empty

Creating merge patch pairs

Adding point and face zones
Creating attachPolyTopoChanger
#0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/home/nikhil/OpenFOAM/OpenFOAM-1
.4.1/lib/linuxGccDPOpt/libOpenFOAM.so"
#1 Foam::sigFpe::sigFpeHandler(int) in "/home/nikhil/OpenFOAM/OpenFOAM-1.4.1/li
b/linuxGccDPOpt/libOpenFOAM.so"
#2 Uninterpreted: [0xffffe420]
#3 Foam::triangle<foam::vector<double>, Foam::Vector<double> const&>::ray(Foam:
:Vector<double> const&, Foam::Vector<double> const&, Foam::intersection::algorit
hm, Foam::intersection::direction) const in "/home/nikhil/OpenFOAM/OpenFOAM-1.4.
1/lib/linuxGccDPOpt/libmeshTools.so"
#4 Foam::face::ray(Foam::Vector<double> const&, Foam::Vector<double> const&, Fo
am::Field<foam::vector<double> > const&, Foam::intersection::algorithm, Foam::in
tersection::direction) const in "/home/nikhil/OpenFOAM/OpenFOAM-1.4.1/lib/linuxG
ccDPOpt/libOpenFOAM.so"
#5 Foam::List<foam::objecthit> Foam::PrimitivePatch<foam::face,> > const&>::projectPoints<foam::primitivepatch<foam> > const&> >(Foam::Primitive Patch<foam::face,> > const&> const&, Foam::Field<foam::vector<double> > const&, Foam::intersection::algorithm, Foam: :intersection::direction) const in "/home/nikhil/OpenFOAM/OpenFOAM-1.4.1/lib/lin uxGccDPOpt/libdynamicMesh.so"
#6 Foam::slidingInterface::projectPoints() const in "/home/nikhil/OpenFOAM/Open FOAM-1.4.1/lib/linuxGccDPOpt/libdynamicMesh.so"
#7 Foam::slidingInterface::changeTopology() const in "/home/nikhil/OpenFOAM/Ope nFOAM-1.4.1/lib/linuxGccDPOpt/libdynamicMesh.so"
#8 Foam::polyTopoChanger::changeTopology() const in "/home/nikhil/OpenFOAM/Open FOAM-1.4.1/lib/linuxGccDPOpt/libdynamicMesh.so"
#9 Foam::polyTopoChanger::changeMesh(bool, bool) in "/home/nikhil/OpenFOAM/Open FOAM-1.4.1/lib/linuxGccDPOpt/libdynamicMesh.so"
#10 Foam::attachPolyTopoChanger::attach(bool) in "/home/nikhil/OpenFOAM/OpenFOA M-1.4.1/lib/linuxGccDPOpt/libdynamicMesh.so"
#11 main in "/home/nikhil/OpenFOAM/OpenFOAM-1.4.1/applications/bin/linuxGccDPOp t/blockMesh"
#12 __libc_start_main in "/lib/i686/libc.so.6"
#13 Foam::regIOobject::readIfModified() in "/home/nikhil/OpenFOAM/OpenFOAM-1.4. 1/applications/bin/linuxGccDPOpt/blockMesh"


regards,
nikhil.

hamsadhwani8 February 23, 2010 08:59

1 Attachment(s)
Quote:

Originally Posted by duderino (Post 195113)
I want to attach (merge) a cuboid to the curved surface of a cylinder with blockMesh. The blockMesh tool generates a grid which looks good. But at the merged cell layers it somehow produces pyramid-cells, which are unwanted.

What can I do to merge the cuboid to the cylinder without the pyramid-cells?

May somebody with blockMesh experience can look at it?! I attache the blockMeshDict file
http://www.cfd-online.com/OpenFOAM_D...hment_icon.gif blockMeshDict

I have used this blockMesh to run a meshMerger. However, it fails giving me the following. The blockMesh file is attached. FYI I am using OpenFoam-1.5. Can someone help?
>blockMesh
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.5 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
Exec : blockMesh
Date : Feb 23 2010
Time : 08:48:53
Host : seshasai-srinivasans-macbook-pro.local
PID : 2538
Case : /Volumes/OpenFOAM/stsriniv-1.5/run/tutorials/interFoam/poreDrop/mergeTest
nProcs : 1

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time


Reading block mesh description dictionary

Creating block mesh

Creating blockCorners

Creating curved edges

Creating blocks

Creating patches

Creating block mesh topology

Default patch type set to empty
--> FOAM Warning :
From function polyMesh::polyMesh(... construct from shapes...)
in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 576
Found 5 undefined faces in mesh; adding to default patch.

Check block mesh topology

Basic statistics
Number of internal faces : 8
Number of boundary faces : 20
Number of defined boundary faces : 20
Number of undefined boundary faces : 0

Checking patch -> block consistency

Creating block offsets

Creating merge list .

Creating points

Creating cells

Creating patches

Creating mesh from block mesh

Default patch type set to empty


mergePatchPairs not currently supported.

From function blockMesh
in file genBlockMesh.C at line 198.

FOAM exiting

om3ro March 18, 2010 06:24

I could run your code, maybe it's just a different version of OF, 1.6 instead of 1.5 (where mergePatchPairs is not currently supported.)

Marco

Ramnik June 23, 2010 05:56

Quote:

Originally Posted by mattijs (Post 195114)
Hi Duderino,

I run checkMesh on your geometry and get

hexahedra: 2516
prisms: 0
wedges: 0
pyramids: 0
tet wedges: 0
tetrahedra: 0
polyhedra: 9
Number of regions: 1 (OK).


So it seems to have correctly merged the cells and introduced 9 general polyhedra (i.e. anything not of the above) on the interface. You might see them as pyramids since vtk/paraview cannot handle polyhedra and we decompose them before passing them to vtk)

You can pick these up using the cellSet utility (in mesh/manipulation). See the cellSetDict dictionary on how to use it ('shapeToCell')

Mattijs


Hey Mattijs,

I am having a similar problem while merging faces. I could not undertand this part of ur message.

"You can pick these up using the cellSet utility (in mesh/manipulation). See the cellSetDict dictionary on how to use it ('shapeToCell')"

can u pl help
Thanks
Ramnik


All times are GMT -4. The time now is 08:56.