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

Help to create geometry using blockMesh

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   January 5, 2009, 14:18
Default \attach Hi All.. I want to
  #1
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
\attach
Hi All..

I want to incorporate the following geometry using blockMesh.. Kindly help me out how exactly I have to go about implementing this... I am relatively new to Open foam..

Regards

Vishal
nandiganavishal is offline   Reply With Quote

Old   January 5, 2009, 14:21
Default http://www.cfd-online.com/Ope
  #2
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
geometry.pdf.tar.gz
nandiganavishal is offline   Reply With Quote

Old   January 6, 2009, 07:20
Default Hi Vishal, You will have thre
  #3
Member
 
Sachin Kanetkar
Join Date: Mar 2009
Posts: 57
Rep Power: 8
sachin is on a distinguished road
Hi Vishal,
You will have three blocks - 2vertical and 1 horizontal.
give all co-ordinates and create it. The best way to understand is to check tutorials/icoFoam/cavity/constant/polyMesh/blockMeshdict and tutorials/icoFoam/cavityclipped/constant/polyMesh/blockMeshdict - see how the cavity is created and also how clipped geometry is created.
All geometries in openfoam will be 3 dimensional although third dimension could be made of 1 grid. help for cavity geometry is available in userguide. Please go thru that
best luck ...
Sachin
sachin is offline   Reply With Quote

Old   January 6, 2009, 22:34
Default Thanks a lot Sachin for the va
  #4
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
Thanks a lot Sachin for the valuable comments. I did create simple geometries as given in ICOFOAM cavity problem...but here the vertical and horizontal blocks are connected right and it is not closed.. hence wanted to know how do we connect the two sections...

Thanks

Vishal
nandiganavishal is offline   Reply With Quote

Old   January 7, 2009, 11:04
Default Sachin is right. you will have
  #5
Senior Member
 
Wolfgang Heydlauff
Join Date: Mar 2009
Location: Germany
Posts: 136
Rep Power: 8
wolle1982 is on a distinguished road
Sachin is right. you will have to creat 3 blocks. give the coordinateds and create the blocks.

is this a solid problem or should this become a fluid problem?

be sure the nodes of all blocks are the same number and have the same coordinates at the connecting face.

if this is a fluid problem you will have to define the patches. just define each patch as e.g. wall, an inlet, an outlet and don't define the connecting patches. they'll automatically merge together (no need to add something under "mergePatchPairs").

hope that helps, write if it does.
wolle1982 is offline   Reply With Quote

Old   January 7, 2009, 15:21
Default Hi Wolfgang, Thanks for the
  #6
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
Hi Wolfgang,

Thanks for the reply. Yes this is a fluid problem.. I will try to incorporate your suggestions and would send my code once I am done..

Thanks for the help..

Vishal
nandiganavishal is offline   Reply With Quote

Old   January 9, 2009, 13:45
Default Hi, As I had posted before,
  #7
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
Hi,

As I had posted before, I finished coding
it, I would like to know how to define the patches for proper boundary
conditions... My boundary conditions are I have inlet at the left
vertical block and outlet at the right vertical block and at wall at
the rest as I had given in my geometry file in the forum... Kindly let
me know whether my code is correct.... Here is my blockMesh Dict file.

I have 2 vertical blocks of geometry 1 * 1 and a horizontal block in
the middle of geometry 5 (length) * 0.03 (height)

Vertical Block1 - Numbered as (0 1...7)
Vertical Block2 - Numbered as (16 17...23)
Horrizontal block - Numbered as (8 9..15)

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \ / O peration | Version: 1.5 |
| \ / A nd | Web: http://www.OpenFOAM.org |
| \/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 1;

vertices
(
(0 0 0)
(1 0 0)
(1 1 0)
(0 1 0)
(0 0 0.1)
(1 0 0.1)
(1 1 0.1)
(0 1 0.1)
(1 0.485 0)
(6 0.485 0)
(6 0.515 0)
(1 0.515 0)
(1 0.485 0.1)
(6 0.485 0.1)
(6 0.515 0.1)
(1 0.515 0.1)
(6 0 0)
(7 0 0)
(7 1 0)
(6 1 0)
(6 0 0.1)
(7 0 0.1)
(7 1 0.1)
(6 1 0.1)

);

blocks
(
hex (0 1 2 3 4 5 6 7) (100 10 1) simpleGrading (2 1 1)
hex (8 9 10 11 12 13 14 15) (100 10 1) simpleGrading (2 2 1)
hex (16 17 18 19 20 21 22 23) (100 10 1) simpleGrading (2 1 1)
);

edges
(
);

patches
(
patch inlet
(
(0 3 7 4)

)
patch outlet
(
(17 18 22 21)

)

patch upperwall
(
(2 3 7 6)
(18 19 23 22)
)

patch lowerwall
(
(4 5 1 0)
(20 21 17 16)
)

patch connectingupperwall
(
(14 10 11 15)
(11 2 6 15)
(10 19 23 14)
)

patch connectinglowerwall
(
(12 13 9 8)
(1 8 12 5)
(16 9 13 20)
)

empty frontAndBack
(
(0 1 2 3)
(4 5 6 7)
(8 9 10 11)
(12 13 14 15)
(16 17 18 19)
(20 21 22 23)
)
);

mergePatchPairs
(
);

// ************************************************** *********************** //

When I run the mesh I get the following error..

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


face 1 in patch 4 does not have neighbour cell face: 4(11 2 6 15)#0
Foam::error::printStack(Foam:stream&) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#1 Foam::error::abort() in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#2 Foam:stream& Foam::operator<<>(Foam:stream&,
Foam::errorManip<foam::error>) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#3 Foam::polyMesh::facePatchFaceCells(Foam::List<foam ::face> const&,
Foam::List<foam::list<int> > const&, Foam::List<foam::list<foam::face>
> const&, int) const in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#4 Foam::polyMesh::polyMesh(Foam::IOobject const&,
Foam::Field<foam::vector<double> > const&, Foam::List<foam::cellshape>
const&, Foam::List<foam::list<foam::face> > const&,
Foam::List<foam::word> const&, Foam::List<foam::word> const&,
Foam::word const&, Foam::word const&, Foam::List<foam::word> const&,
bool) in "/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#5 Foam::blockMesh::createTopology(Foam::IOdictionary &) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#6 Foam::blockMesh::blockMesh(Foam::IOdictionary&) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#7 main in "/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#8 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6"
#9 __gxx_personality_v0 in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"


From function polyMesh::facePatchFaceCells(const faceList&
patchFaces,const labelListList& pointCells,const faceListList&
cellsFaceShapes,const label patchID)
in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 125.

FOAM aborting

Aborted


Kindly do the needful

Thanks


--
Regards

Vishal
nandiganavishal is offline   Reply With Quote

Old   January 9, 2009, 15:30
Default Hi, As I had posted before,
  #8
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
Hi,

As I had posted before, I finished coding
it, I would like to know how to define the patches for proper boundary
conditions... My boundary conditions are I have inlet at the left
vertical block and outlet at the right vertical block and at wall at
the rest as I had given in my geometry file in the forum... Kindly let
me know whether my code is correct.... Here is my blockMesh Dict file.

I have 2 vertical blocks of geometry 1 * 1 and a horizontal block in
the middle of geometry 5 (length) * 0.03 (height)

Vertical Block1 - Numbered as (0 1...7)
Vertical Block2 - Numbered as (16 17...23)
Horrizontal block - Numbered as (8 9..15)

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \ / O peration | Version: 1.5 |
| \ / A nd | Web: http://www.OpenFOAM.org |
| \/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 1;

vertices
(
(0 0 0)
(1 0 0)
(1 1 0)
(0 1 0)
(0 0 0.1)
(1 0 0.1)
(1 1 0.1)
(0 1 0.1)
(1 0.485 0)
(6 0.485 0)
(6 0.515 0)
(1 0.515 0)
(1 0.485 0.1)
(6 0.485 0.1)
(6 0.515 0.1)
(1 0.515 0.1)
(6 0 0)
(7 0 0)
(7 1 0)
(6 1 0)
(6 0 0.1)
(7 0 0.1)
(7 1 0.1)
(6 1 0.1)

);

blocks
(
hex (0 1 2 3 4 5 6 7) (100 10 1) simpleGrading (2 1 1)
hex (8 9 10 11 12 13 14 15) (100 10 1) simpleGrading (2 2 1)
hex (16 17 18 19 20 21 22 23) (100 10 1) simpleGrading (2 1 1)
);

edges
(
);

patches
(
patch inlet
(
(0 3 7 4)

)
patch outlet
(
(17 18 22 21)

)

patch upperwall
(
(2 3 7 6)
(18 19 23 22)
)

patch lowerwall
(
(4 5 1 0)
(20 21 17 16)
)

patch connectingupperwall
(
(14 10 11 15)
(11 2 6 15)
(10 19 23 14)
)

patch connectinglowerwall
(
(12 13 9 8)
(1 8 12 5)
(16 9 13 20)
)

empty frontAndBack
(
(0 1 2 3)
(4 5 6 7)
(8 9 10 11)
(12 13 14 15)
(16 17 18 19)
(20 21 22 23)
)
);

mergePatchPairs
(
);

// ************************************************** *********************** //

When I run the mesh I get the following error..

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


face 1 in patch 4 does not have neighbour cell face: 4(11 2 6 15)#0
Foam::error::printStack(Foam:stream&) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#1 Foam::error::abort() in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#2 Foam:stream& Foam::operator<<>(Foam:stream&,
Foam::errorManip<foam::error>) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#3 Foam::polyMesh::facePatchFaceCells(Foam::List<foam ::face> const&,
Foam::List<foam::list<int> > const&, Foam::List<foam::list<foam::face>
> const&, int) const in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#4 Foam::polyMesh::polyMesh(Foam::IOobject const&,
Foam::Field<foam::vector<double> > const&, Foam::List<foam::cellshape>
const&, Foam::List<foam::list<foam::face> > const&,
Foam::List<foam::word> const&, Foam::List<foam::word> const&,
Foam::word const&, Foam::word const&, Foam::List<foam::word> const&,
bool) in "/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#5 Foam::blockMesh::createTopology(Foam::IOdictionary &) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#6 Foam::blockMesh::blockMesh(Foam::IOdictionary&) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#7 main in "/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#8 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6"
#9 __gxx_personality_v0 in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"


From function polyMesh::facePatchFaceCells(const faceList&
patchFaces,const labelListList& pointCells,const faceListList&
cellsFaceShapes,const label patchID)
in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 125.

FOAM aborting

Aborted


Kindly do the needful

Thanks


--
Regards

Vishal
nandiganavishal is offline   Reply With Quote

Old   January 9, 2009, 15:31
Default Hi, As I had posted before,
  #9
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
Hi,

As I had posted before, I finished coding
it, I would like to know how to define the patches for proper boundary
conditions... My boundary conditions are I have inlet at the left
vertical block and outlet at the right vertical block and at wall at
the rest as I had given in my geometry file in the forum... Kindly let
me know whether my code is correct.... Here is my blockMesh Dict file.

I have 2 vertical blocks of geometry 1 * 1 and a horizontal block in
the middle of geometry 5 (length) * 0.03 (height)

Vertical Block1 - Numbered as (0 1...7)
Vertical Block2 - Numbered as (16 17...23)
Horizontal block - Numbered as (8 9..15)

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \ / O peration | Version: 1.5 |
| \ / A nd | Web: http://www.OpenFOAM.org |
| \/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 1;

vertices
(
(0 0 0)
(1 0 0)
(1 1 0)
(0 1 0)
(0 0 0.1)
(1 0 0.1)
(1 1 0.1)
(0 1 0.1)
(1 0.485 0)
(6 0.485 0)
(6 0.515 0)
(1 0.515 0)
(1 0.485 0.1)
(6 0.485 0.1)
(6 0.515 0.1)
(1 0.515 0.1)
(6 0 0)
(7 0 0)
(7 1 0)
(6 1 0)
(6 0 0.1)
(7 0 0.1)
(7 1 0.1)
(6 1 0.1)

);

blocks
(
hex (0 1 2 3 4 5 6 7) (100 10 1) simpleGrading (2 1 1)
hex (8 9 10 11 12 13 14 15) (100 10 1) simpleGrading (2 2 1)
hex (16 17 18 19 20 21 22 23) (100 10 1) simpleGrading (2 1 1)
);

edges
(
);

patches
(
patch inlet
(
(0 3 7 4)

)
patch outlet
(
(17 18 22 21)

)

patch upperwall
(
(2 3 7 6)
(18 19 23 22)
)

patch lowerwall
(
(4 5 1 0)
(20 21 17 16)
)

patch connectingupperwall
(
(14 10 11 15)
(11 2 6 15)
(10 19 23 14)
)

patch connectinglowerwall
(
(12 13 9 8)
(1 8 12 5)
(16 9 13 20)
)

empty frontAndBack
(
(0 1 2 3)
(4 5 6 7)
(8 9 10 11)
(12 13 14 15)
(16 17 18 19)
(20 21 22 23)
)
);

mergePatchPairs
(
);

// ************************************************** *********************** //

When I run the mesh I get the following error..

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


face 1 in patch 4 does not have neighbour cell face: 4(11 2 6 15)#0
Foam::error::printStack(Foam:stream&) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#1 Foam::error::abort() in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#2 Foam:stream& Foam::operator<<>(Foam:stream&,
Foam::errorManip<foam::error>) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#3 Foam::polyMesh::facePatchFaceCells(Foam::List<foam ::face> const&,
Foam::List<foam::list<int> > const&, Foam::List<foam::list<foam::face>
> const&, int) const in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#4 Foam::polyMesh::polyMesh(Foam::IOobject const&,
Foam::Field<foam::vector<double> > const&, Foam::List<foam::cellshape>
const&, Foam::List<foam::list<foam::face> > const&,
Foam::List<foam::word> const&, Foam::List<foam::word> const&,
Foam::word const&, Foam::word const&, Foam::List<foam::word> const&,
bool) in "/home/vishal/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#5 Foam::blockMesh::createTopology(Foam::IOdictionary &) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#6 Foam::blockMesh::blockMesh(Foam::IOdictionary&) in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#7 main in "/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"
#8 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6"
#9 __gxx_personality_v0 in
"/home/vishal/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/blockMesh"


From function polyMesh::facePatchFaceCells(const faceList&
patchFaces,const labelListList& pointCells,const faceListList&
cellsFaceShapes,const label patchID)
in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 125.

FOAM aborting

Aborted


Kindly do the needful

Thanks


--
Regards

Vishal
nandiganavishal is offline   Reply With Quote

Old   January 13, 2009, 05:05
Default Hi, in my opinion you can n
  #10
Senior Member
 
Wolfgang Heydlauff
Join Date: Mar 2009
Location: Germany
Posts: 136
Rep Power: 8
wolle1982 is on a distinguished road
Hi,

in my opinion you can not only use 3 blocks for this problem. you might not use a block and attach another block to it without any further connection rules. in your solution you have the faces with double boundary conditions.

use at least 7 blocks. for this you have to insert more vertices. maybe you can work with one symmetryPlane horizontally through the middle. so you only had to change the coordinates and use 5 blocks.

another solution could be, you crearte 6 blocks. so they are also devided in the middle. and your connectionblock in the middle consists of 2 horizontal devided blocks.

i yould prefer the symmetryPlane solution.

good luck.
wolle1982 is offline   Reply With Quote

Old   January 13, 2009, 10:09
Default Yes, my mistake should have be
  #11
Member
 
Sachin Kanetkar
Join Date: Mar 2009
Posts: 57
Rep Power: 8
sachin is on a distinguished road
Yes, my mistake should have been atleast 5, 3 was wrong ans
sachin is offline   Reply With Quote

Old   January 13, 2009, 15:20
Default Hi Wolfgang and Sachin Than
  #12
Senior Member
 
Vishal Nandigana
Join Date: Mar 2009
Location: Champaign, Illinois, U.S.A
Posts: 206
Rep Power: 9
nandiganavishal is on a distinguished road
Hi Wolfgang and Sachin

Thanks for the information, I finished creating the geometry with 7 blocks and implemented it in the code, it is working fine at the moment. I would get back to you guys if I encounter any problem.

Thanks

Regards

Vishal
nandiganavishal is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
create turbine geometry with gambit badlaine ANSYS Meshing & Geometry 2 March 26, 2012 23:54
What is the best option for create a mesh not using blockmesh titio OpenFOAM Meshing Format & General Technical 4 January 17, 2008 03:37
Does blockMesh create mesh vertices in any particular order brooksmoses OpenFOAM Native Meshers: blockMesh 3 December 12, 2005 21:26
how to create structured geometry Rashmi FLUENT 10 December 2, 2005 08:48
Create 2d geometry file with pro*am? raymond CD-adapco 1 December 13, 2001 11:31


All times are GMT -4. The time now is 20:19.