CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Pre-Processing (https://www.cfd-online.com/Forums/openfoam-pre-processing/)
-   -   Blockmesh problem with more than one block (https://www.cfd-online.com/Forums/openfoam-pre-processing/118804-blockmesh-problem-more-than-one-block.html)

sven82 June 4, 2013 16:48

Blockmesh problem with more than one block
 
Hello Foamers

I have some trouble with blockmesh,
The case has 3 blocks, with direct connection,
same size in x,y,z direction.

blockMesh -> works well,

but in the result, blockmesh generates a patches between the blocks,
but I would like to have only on block, with no patches between the blocks,
like interfaces!

hope anyone got a idea,

Thanks alot,
Sven


my blockMesh case:
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.1.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/

FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
//
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//
convertToMeters 0.001;
//
vertices
(
(1688.67551264726 3506.57083387458 -1984) // Vertex 0 = 0
(1688.67551264726 3506.57083387458 1984) // Vertex 1 = 1
(1688.67551264726 3506.57083387458 1984) // Vertex 2 = 2
(1688.67551264726 3506.57083387458 -3984) // Vertex 3 = 3
(1688.67551264726 3506.57083387458 -1984) // Vertex 4 = 4
(1688.67551264726 3506.57083387458 3984) // Vertex 5 = 5
(137.107261561288 284.706162257032 -1984) // Vertex 6 = 6
(137.107261561288 284.706162257032 -3984) // Vertex 7 = 7
(137.107261561288 284.706162257032 3984) // Vertex 8 = 8
(137.107261561288 284.706162257032 1984) // Vertex 9 = 9
(137.107261561288 284.706162257032 -1984) // Vertex 10 = 10
(137.107261561288 284.706162257032 1984) // Vertex 11 = 11
(-137.107261561288 284.706162257032 1984) // Vertex 12 = 12
(-137.107261561288 284.706162257032 -1984) // Vertex 13 = 13
(-137.107261561288 284.706162257032 1984) // Vertex 14 = 14
(-137.107261561288 284.706162257032 3984) // Vertex 15 = 15
(-137.107261561288 284.706162257032 -3984) // Vertex 16 = 16
(-137.107261561288 284.706162257032 -1984) // Vertex 17 = 17
(-1688.67551264726 3506.57083387458 -1984) // Vertex 18 = 18
(-1688.67551264726 3506.57083387458 1984) // Vertex 19 = 19
(-1688.67551264726 3506.57083387458 1984) // Vertex 20 = 20
(-1688.67551264726 3506.57083387458 3984) // Vertex 21 = 21
(-1688.67551264726 3506.57083387458 -3984) // Vertex 22 = 22
(-1688.67551264726 3506.57083387458 -1984) // Vertex 23 = 23
);

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

);

edges

(

arc 0 18 ( 0.0 3892.0 -1984)
arc 1 19 ( 0.0 3892.0 1984)
arc 10 13 ( 0.0 316.0 -1984)
arc 11 12 ( 0.0 316.0 1984)
arc 2 20 ( 0.0 3892.0 1984)
arc 5 21 ( 0.0 3892.0 3984)
arc 9 14 ( 0.0 316.0 1984)
arc 8 15 ( 0.0 316.0 3984)
arc 3 22 ( 0.0 3892.0 -3984)
arc 4 23 ( 0.0 3892.0 -1984)
arc 7 16 ( 0.0 316.0 -3984)
arc 6 17 ( 0.0 316.0 -1984)

);

boundary
(

left_rot
{
type cyclic;//patch;
neighbourPatch right_rot;
faces ((10 0 1 11));
transform rotational;//unknown;
rotationAxis (0 0 1);
rotationCentre (0 0 0);
matchTolerance 0.001;
}
right_rot
{
type cyclic;//patch;
neighbourPatch left_rot;
faces ((13 18 19 12));
transform rotational;//unknown;
rotationAxis (0 0 1);
rotationCentre (0 0 0);
matchTolerance 0.001;
}
left_top
{
type cyclic;//patch;
neighbourPatch right_top;
transform rotational;//unknown;
rotationAxis (0 0 1);
rotationCentre (0 0 0);
faces ((7 3 4 6));
matchTolerance 0.001;
}
right_top
{
type cyclic;//patch;
neighbourPatch left_top;
transform rotational;//unknown;
rotationAxis (0 0 1);
rotationCentre (0 0 0);
faces ((16 22 23 17));
matchTolerance 0.001;
}
left_bottom
{
type cyclic;
transform rotational;//unknown;
rotationAxis (0 0 1);
rotationCentre (0 0 0);
neighbourPatch right_bottom;
faces ((9 2 5 8));
matchTolerance 0.001;
}
right_bottom
{
type cyclic;
transform rotational;//unknown;
rotationAxis (0 0 1);
rotationCentre (0 0 0);
neighbourPatch left_bottom;
faces ((14 20 21 15));
matchTolerance 0.001;
}

inlet
{
type patch;
faces ((2 5 21 20)(3 4 23 22));
}
outlet
{
type patch;
faces ((0 1 19 18));
}
shaft
{
type wall;//patch;
faces ((7 6 17 16)(8 9 14 15)(10 11 12 13));
}


);

mergePatchPairs
( );

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

Lieven June 4, 2013 18:08

Hi Sven,

You should not define points multiple times. E.g. vertex 1 and 2 are exactly the same point. So instead of defining it twice and using '1' and '2' in the definition of the blocks, you should only define it once, e.g. as '1', and refer to this point whenever you need in the block. This way blockmesh will automatically recognize the internal connections between the blocks (and not create a patch for it).

I hope my explanation is clear, if not, just say so :-).

Cheers,

Lieven


All times are GMT -4. The time now is 10:49.