CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Native Meshers: blockMesh

Face reduced to less than 3 points (simple cubic blocks)

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

Reply
 
LinkBack Thread Tools Display Modes
Old   April 16, 2014, 09:22
Default Face reduced to less than 3 points (simple cubic blocks)
  #1
New Member
 
anonymous
Join Date: Apr 2014
Posts: 8
Rep Power: 3
mikeR is on a distinguished road
I'm trying to create a structure but receive the posted error message
Quote:
Face xyz reduced to less than 3 point
I can merge 2 of my interfaces just fine, just one keeps acting up and I dont really know why this one gives me errors


my blockMeshDict file consists of 8 blocks out of which I'd like to create some kind of structure. Here is the code (interface 3 and 4 raise an error):

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

convertToMeters 1;

vertices
(
//1
    (0 0 0)
    (1 0 0)
    (1 0.5 0)
    (0 0.5 0)
    (0 0 0.5)
    (1 0 0.5)
    (1 0.5 0.5)
    (0 0.5 0.5)
//2
    (1 0 0)
    (1.5 0 0)
    (1.5 0.5 0)
    (1 0.5 0)
    (1 0 0.5)
    (1.5 0 0.5)
    (1.5 0.5 0.5)
    (1 0.5 0.5)
//3
    (0 0 -0.8)
    (1 0 -0.8)
    (1 0.5 -0.8)
    (0 0.5 -0.8)
    (0 0 0)
    (1 0 0)
    (1 0.5 0)
    (0 0.5 0)
//4
    (1 0 -0.8)
    (1.5 0 -0.8)
    (1.5 0.5 -0.8)
    (1 0.5 -0.8)
    (1 0 0)
    (1.5 0 0)
    (1.5 0.5 0)
    (1 0.5 0)
//5
    (0 0.5 0)
    (1 0.5 0)
    (1 1 0)
    (0 1 0)
    (0 0.5 0.5)
    (1 0.5 0.5)
    (1 1 0.5)
    (0 1 0.5)
//6
    (1 0.5 0) //40
    (1.5 0.5 0)
    (1.5 1 0)
    (1 1 0)
    (1 0.5 0.5)
    (1.5 0.5 0.5)
    (1.5 1 0.5)
    (1 1 0.5)
//7
    (0 0.5 -0.8)
    (1 0.5 -0.8)
    (1 1 -0.8)
    (0 1 -0.8)
    (0 0.5 0)
    (1 0.5 0)
    (1 1 0)
    (0 1 0)
//8
    (1 0.5 -0.8)
    (1.5 0.5 -0.8)
    (1.5 1 -0.8)
    (1 1 -0.8)
    (1 0.5 0)
    (1.5 0.5 0)
    (1.5 1 0)
    (1 1 0)
);

blocks
(
    hex (0 1 2 3 4 5 6 7) (10 10 10) simpleGrading (1 1 1)  //1
    hex (8 9 10 11 12 13 14 15) (10 10 10) simpleGrading (1 1 1)//2
    hex (16 17 18 19 20 21 22 23) (10 10 10) simpleGrading (1 1 1)//3
    hex (24 25 26 27 28 29 30 31) (10 10 10) simpleGrading (1 1 1)//4
    hex (32 33 34 35 36 37 38 39) (10 10 10) simpleGrading (1 1 1)//5
    hex (40 41 42 43 44 45 46 47) (10 10 10) simpleGrading (1 1 1)//6
    hex (48 49 50 51 52 53 54 55) (10 10 10) simpleGrading (1 1 1)//7
    hex (56 57 58 59 60 61 62 63) (10 10 10) simpleGrading (1 1 1)//8
);

edges
(
);
patches
(
patch inlet
(
    (0 4 7 3)
)
patch inlet2
(
    (43 47 46 42)
    (59 63 62 58)
)
patch outlet
( 
    (9 10 14 13)
)

patch wallBack
(
    (3 2 1 0)
    (8 11 10 9)
    (56 60 61 57)
    (56 59 58 57)
    (58 62 61 57)
    (42 46 45 41)
)
patch wallFront
(
    (6 7 4 5)
    (14 15 12 13)
    (44 45 46 47)
)
patch walltop
(
    (2 3 7 6)
    (33 37 38 34)
    (49 53 54 50)
)
patch wallbottom
(
    (0 1 5 4)
    (8 9 13 12)
)
patch interface1
(
    (2 6 5 1)
)
patch interface2
(
    (11 8 12 15)
)
patch interface3
(
    (10 11 15 14)
)
patch interface4
(
    (40 41 45 44)
)
patch interface5
(
    (41 40 43 42)
)
patch interface6
(
    (60 61 62 63)
)
);
boundary
(
);

mergePatchPairs
(
    (interface1 interface2)
    (interface5 interface6)
    (interface4 interface3)
);

// ************************************************************************* //
any ideas why just interface 4 and 3 give an error? They overlap quite well afaik and I checked the Structure with pyFoamDisplayBlockMesh but couldnt find an error
mikeR is offline   Reply With Quote

Old   April 16, 2014, 11:27
Default
  #2
New Member
 
anonymous
Join Date: Apr 2014
Posts: 8
Rep Power: 3
mikeR is on a distinguished road
Here is another try but still the same error

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

convertToMeters 1;

vertices
(
//1
    (0 0 0)
    (1 0 0)
    (1 0.5 0)
    (0 0.5 0)
    (0 0 0.5)
    (1 0 0.5)
    (1 0.5 0.5)
    (0 0.5 0.5)
//2
    (1 0 0)
    (1.5 0 0)
    (1.5 0.5 0)
    (1 0.5 0)
    (1 0 0.5)
    (1.5 0 0.5)
    (1.5 0.5 0.5)
    (1 0.5 0.5)
//3
    (0 0 -0.8)
    (1 0 -0.8)
    (1 0.5 -0.8)
    (0 0.5 -0.8)
    (0 0 0)
    (1 0 0)
    (1 0.5 0)
    (0 0.5 0)
//4
    (1 0 -0.8)
    (1.5 0 -0.8)
    (1.5 0.5 -0.8)
    (1 0.5 -0.8)
    (1 0 0)
    (1.5 0 0)
    (1.5 0.5 0)
    (1 0.5 0)
//5
    (0 0.5 0)
    (1 0.5 0)
    (1 1 0)
    (0 1 0)
    (0 0.5 0.5)
    (1 0.5 0.5)
    (1 1 0.5)
    (0 1 0.5)
//6
    (1 0.5 0) //40
    (1.5 0.5 0)
    (1.5 1 0)
    (1 1 0)
    (1 0.5 0.5)
    (1.5 0.5 0.5)
    (1.5 1 0.5)
    (1 1 0.5)
//7
    (0 0.5 -0.8)
    (1 0.5 -0.8)
    (1 1 -0.8)
    (0 1 -0.8)
    (0 0.5 0)
    (1 0.5 0)
    (1 1 0)
    (0 1 0)
//8
    (1 0.5 -0.8)
    (1.5 0.5 -0.8)
    (1.5 1 -0.8)
    (1 1 -0.8)
    (1 0.5 0)
    (1.5 0.5 0)
    (1.5 1 0)
    (1 1 0)
);

blocks
(
    hex (0 1 2 3 4 5 6 7) (10 10 10) simpleGrading (1 1 1)  //1
    hex (8 9 10 11 12 13 14 15) (10 10 10) simpleGrading (1 1 1)//2
    hex (16 17 18 19 20 21 22 23) (10 10 10) simpleGrading (1 1 1)//3
    hex (24 25 26 27 28 29 30 31) (10 10 10) simpleGrading (1 1 1)//4
    hex (32 33 34 35 36 37 38 39) (10 10 10) simpleGrading (1 1 1)//5
    hex (40 41 42 43 44 45 46 47) (10 10 10) simpleGrading (1 1 1)//6
    hex (48 49 50 51 52 53 54 55) (10 10 10) simpleGrading (1 1 1)//7
    hex (56 57 58 59 60 61 62 63) (10 10 10) simpleGrading (1 1 1)//8
);

edges
(
);
patches
(
patch inlet
(
    (43 47 46 42)
    (59 63 62 58)
)
patch outlet
(
    (0 4 7 3)
)
patch wall
(
    (6 7 4 5)
    (14 15 12 13)
    (46 47 44 45)
    (10 14 13 9)
   // (26 30 29 25)
    (42 46 45 41)
    (58 62 61 57)
    (56 57 61 60)
    (57 56 59 58)
    (59 56 60 63)
    (9 8 11 10)
    (1 0 3 2)
    (2 3 7 6)
    (0 1 5 4)
    (8 9 13 12)
    (40 44 47 43)
)
patch interface1
(
    (10 11 15 14)
)
patch interface2
(
    (40 41 45 44)
)
patch interface3
(
    (1 2 6 5)
)
patch interface4
(
    (8 12 15 11)
)
patch interface5
(
    (40 43 42 41)
)
patch interface6
(
    (60 61 62 63)
)
);
boundary
(
);

mergePatchPairs
(
    (interface1 interface2)
    (interface4 interface3)
    (interface5 interface6)
);

// ************************************************************************* //
mikeR is offline   Reply With Quote

Old   April 19, 2014, 08:47
Default
  #3
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,159
Blog Entries: 34
Rep Power: 83
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Greetings mikeR,

From what I can see by using:
Code:
paraFoam -block
it looks like you're repeating points in the "vertices" list. That can lead to serious issues, as blockMesh might be getting confused with what exactly you're trying to do.

edit: I've updated the wiki page considerably, so feel free to check it out! http://openfoamwiki.net/index.php/BlockMesh

Best regards,
Bruno

Last edited by wyldckat; April 19, 2014 at 10:43. Reason: see "edit:"
wyldckat is offline   Reply With Quote

Old   April 21, 2014, 14:21
Default
  #4
New Member
 
anonymous
Join Date: Apr 2014
Posts: 8
Rep Power: 3
mikeR is on a distinguished road
Hey wyldckat,
thanks for the reply. From what I've figured out with try and error the problem seems to be with the mergePatchPairs. I guess it is not allowed use the same point for merging more than one patch. Is this correct?
I thought it was required to actually use repeating points in the vertices list and was wondered why there was no automatic face matching. I got the problem resolved by removing all the double entries.
Thank you for your comment!
mikeR is offline   Reply With Quote

Old   April 21, 2014, 16:43
Default
  #5
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,159
Blog Entries: 34
Rep Power: 83
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Hi mikeR,

Quote:
Originally Posted by mikeR View Post
From what I've figured out with try and error the problem seems to be with the mergePatchPairs. I guess it is not allowed use the same point for merging more than one patch. Is this correct?
I'm not sure I understand your question. But it reminds me of a problem that occurs with stitchMesh... have a look at this post: when can stitchMesh be used? post #10 - it's a long description, but the idea is that when we try to stitch 4 perpendicular duplicate patches, the last 2 pairs won't be stitch-able due to this reported issue:
Code:
Face * reduced to less than 3 points.  Topological/cutting error B.
My guess is that you triggered something very similar when using blockMesh.

Best regards,
Bruno
wyldckat 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
Internal walls of zero thickness anger OpenFOAM Native Meshers: blockMesh 21 March 19, 2015 10:21
BlockMesh FOAM warning gaottino OpenFOAM Native Meshers: blockMesh 7 July 19, 2010 14:11
BlockMeshmergePatchPairs hjasak OpenFOAM Native Meshers: blockMesh 11 August 15, 2008 07:36
Creating a face 100s of of vertex points? David Banks Main CFD Forum 0 July 6, 2007 04:45
Points and face in gambit Lio FLUENT 6 July 6, 2004 02:54


All times are GMT -4. The time now is 06:28.