|
[Sponsors] |
[blockMesh] non-orthogonal faces and incorrect orientation? |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
April 16, 2013, 04:11 |
non-orthogonal faces and incorrect orientation?
|
#1 |
New Member
chaoqing min
Join Date: Mar 2013
Posts: 10
Rep Power: 13 |
Hello, guys.
When I run blockMesh, the errors are listed as follows, <<Writing 310090 non-orthogonal faces to set nonOrthoFaces ***Error in face pyramids: 935400 faces are incorrectly oriented. <<Writing 625310 faces with incorrect orientation to set wrongOrientedFaces Max skewness = 0.000312539 OK. Why? thank you in advance. my blockDict: convertToMeters 0.001; vertices ( (0 -11 0.1) (100 -11 0.1) (100 -3 0.1) (0 -3 0.1) (0 3 0.1) (100 3 0.1) (100 11 0.1) (0 11 0.1) (106 -11 0.1) (306 -11 0.1) (306 -3 0.1) (106 -3 0.1) (106 3 0.1) (306 3 0.1) (306 11 0.1) (106 11 0.1) (0 -11 -0.1) (100 -11 -0.1) (100 -3 -0.1) (0 -3 -0.1) (0 3 -0.1) (100 3 -0.1) (100 11 -0.1) (0 11 -0.1) (106 -11 -0.1) (306 -11 -0.1) (306 -3 -0.1) (106 -3 -0.1) (106 3 -0.1) (306 3 -0.1) (306 11 -0.1) (106 11 -0.1) ); blocks ( hex (4 5 6 7 20 21 22 23) (500 40 1) simpleGrading (1 1 1) hex (3 2 5 4 19 18 21 20) (500 30 1) simpleGrading (1 1 1) hex (0 1 2 3 16 17 18 19) (500 40 1) simpleGrading (1 1 1) hex (2 11 12 5 18 27 28 21) (30 30 1) simpleGrading (1 1 1) hex (12 13 14 15 28 29 30 31) (1000 40 1) simpleGrading (1 1 1) hex (11 10 13 12 27 26 29 28) (1000 30 1) simpleGrading (1 1 1) hex (8 9 10 11 24 25 26 27) (1000 30 1) simpleGrading (1 1 1) ); edges ( ); boundary ( inlet { type patch; faces ( (3 0 16 19) (4 3 19 20) (7 4 20 23) ); } outlet { type patch; faces ( (9 10 26 25) (10 13 29 26) (13 14 30 29) ); } walls { type wall; faces ( (7 6 22 23) (5 6 22 21) (5 21 28 12) (12 15 31 28) (15 14 30 31) (0 1 17 16) (1 2 18 17) (2 11 27 18) (11 8 24 27) (8 9 25 24) ); } frontAndBack { type empty; faces ( (7 4 5 6) (23 20 21 22) (4 3 2 5) (20 19 18 21) (3 0 1 2) (19 16 17 18) (5 2 11 12) (21 18 27 28) (15 12 13 14) (31 28 29 30) (12 11 10 13) (28 27 26 29) (11 8 9 10) (27 24 25 26) ); } ); mergePatchPairs ( ); At the same time, can you give me some suggestions about blockMesh too? |
|
April 16, 2013, 11:02 |
can anyone help me
|
#2 |
New Member
chaoqing min
Join Date: Mar 2013
Posts: 10
Rep Power: 13 |
can anyone help me?
|
|
April 16, 2013, 11:20 |
|
#3 |
Senior Member
Join Date: Aug 2010
Location: Groningen, The Netherlands
Posts: 216
Rep Power: 19 |
type:
paraFoam -block and you will see that you have some orders of the numbers incorrect if this is not the case you might want to provide us the checkMesh results and some pictures regards |
|
April 16, 2013, 19:17 |
|
#4 |
Senior Member
Ehsan
Join Date: Oct 2012
Location: Iran
Posts: 2,208
Rep Power: 27 |
you should put vertex numbers in opposite to clock direction.first lower page and then upper one.
And also faces should have right hand rule(normal of faces be outward). |
|
April 17, 2013, 05:20 |
|
#5 |
New Member
chaoqing min
Join Date: Mar 2013
Posts: 10
Rep Power: 13 |
Thank you for your help, I have changed some orientation but it still doesn´t work.
The checkMesh is listed as follows: Create time Create polyMesh for time = 0 Time = 0 Mesh stats points: 315222 internal points: 0 faces: 625310 internal faces: 310090 cells: 155900 boundary patches: 4 point zones: 0 face zones: 0 cell zones: 0 Overall number of cells of each type: hexahedra: 155900 prisms: 0 wedges: 0 pyramids: 0 tet wedges: 0 tetrahedra: 0 polyhedra: 0 Checking topology... Boundary definition OK. Cell to face addressing OK. Point usage OK. Upper triangular ordering OK. Face vertices OK. Number of regions: 1 (OK). Checking patch topology for multiply connected surfaces ... Patch Faces Points Surface topology inlet 110 222 ok (non-closed singly connected) outlet 100 202 ok (non-closed singly connected) walls 3210 6424 ok (non-closed singly connected) frontAndBack 311800 315222 ok (non-closed singly connected) Checking geometry... Overall domain bounding box (0 -0.011 -0.0001) (0.306 0.011 0.0001) Mesh (non-empty, non-wedge) directions (1 1 0) Mesh (non-empty) directions (1 1 0) All edges aligned with or perpendicular to non-empty directions. Boundary openness (3.10402e-19 5.83093e-17 1.00277e-14) OK. Max cell openness = 1.65436e-16 OK. Max aspect ratio = 1.33333 OK. Minumum face area = 4e-08. Maximum face area = 5.33333e-08. Face area magnitudes OK. Min volume = 2e-300. Max volume = 2e-300. Total volume = 3.118e-295. Cell volumes OK. Mesh non-orthogonality Max: 180 average: 180 ***Number of non-orthogonality errors: 310090. <<Writing 310090 non-orthogonal faces to set nonOrthoFaces ***Error in face pyramids: 935400 faces are incorrectly oriented. <<Writing 625310 faces with incorrect orientation to set wrongOrientedFaces Max skewness = 0.000312539 OK. Coupled point location match (average 0) OK. Failed 2 mesh checks. End And blockMesh is as follows: Create time Creating block mesh from "/home/ifas/turbulent/constant/polyMesh/blockMeshDict" Creating curved edges Creating topology blocks Creating topology patches Creating block mesh topology --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 0, probably defined inside-out --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -20 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -20 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -20 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -20 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -20 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -20 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 1, probably defined inside-out --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -26.6667 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 2, probably defined inside-out --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -1.2 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -1.2 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -1.2 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -1.2 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -1.2 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -1.2 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 3, probably defined inside-out --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 4, probably defined inside-out --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -40 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -40 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -40 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -40 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -40 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -40 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 5, probably defined inside-out --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 0 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 1 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 2 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 3 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 4 --> FOAM Warning : From function cellModel::mag(const labelList&, const pointField&) in file meshes/meshShapes/cellModel/cellModel.C at line 128 zero or negative pyramid volume: -53.3333 for face 5 --> FOAM Warning : From function blockMesh::createTopology(IOdictionary&) in file blockMesh/blockMeshTopology.C at line 255 negative volume block : 6, probably defined inside-out Check topology Basic statistics Number of internal faces : 6 Number of boundary faces : 30 Number of defined boundary faces : 30 Number of undefined boundary faces : 0 Checking patch -> block consistency Creating block offsets Creating merge list . Creating polyMesh from blockMesh Creating patches Creating cells Creating points with scale 0.001 Writing polyMesh ---------------- Mesh Information ---------------- boundingBox: (0 -0.011 -0.0001) (0.306 0.011 0.0001) nPoints: 315222 nCells: 155900 nFaces: 625310 nInternalFaces: 310090 ---------------- Patches ---------------- patch 0 (start: 310090 size: 110) name: inlet patch 1 (start: 310200 size: 100) name: outlet patch 2 (start: 310300 size: 3210) name: walls patch 3 (start: 313510 size: 311800) name: frontAndBack End And my blockMeshDict is changed as follows: convertToMeters 0.001; vertices ( (0 -11 0.1) (100 -11 0.1) (100 -3 0.1) (0 -3 0.1) (0 3 0.1) (100 3 0.1) (100 11 0.1) (0 11 0.1) (106 -11 0.1) (306 -11 0.1) (306 -3 0.1) (106 -3 0.1) (106 3 0.1) (306 3 0.1) (306 11 0.1) (106 11 0.1) (0 -11 -0.1) (100 -11 -0.1) (100 -3 -0.1) (0 -3 -0.1) (0 3 -0.1) (100 3 -0.1) (100 11 -0.1) (0 11 -0.1) (106 -11 -0.1) (306 -11 -0.1) (306 -3 -0.1) (106 -3 -0.1) (106 3 -0.1) (306 3 -0.1) (306 11 -0.1) (106 11 -0.1) ); blocks ( hex (0 1 2 3 16 17 18 19) (500 40 1) simpleGrading (1 1 1) hex (3 2 5 4 19 18 21 20) (500 30 1) simpleGrading (1 1 1) hex (4 5 6 7 20 21 22 23) (500 40 1) simpleGrading (1 1 1) hex (2 11 12 5 18 27 28 21) (30 30 1) simpleGrading (1 1 1) hex (8 9 10 11 24 25 26 27) (1000 30 1) simpleGrading (1 1 1) hex (11 10 13 12 27 26 29 28) (1000 30 1) simpleGrading (1 1 1) hex (12 13 14 15 28 29 30 31) (1000 40 1) simpleGrading (1 1 1) ); edges ( ); boundary ( inlet { type patch; faces ( (0 3 19 16) (3 4 20 19) (4 7 23 20) ); } outlet { type patch; faces ( (10 9 25 26) (13 10 26 29) (14 13 29 30) ); } walls { type wall; faces ( (7 6 22 23) (6 5 21 22) (5 12 28 21) (12 15 31 28) (15 14 30 31) (0 1 17 16) (2 1 17 18) (2 11 27 18) (11 8 24 27) (8 9 25 24) ); } frontAndBack { type empty; faces ( (7 4 5 6) (23 20 21 22) (4 3 2 5) (20 19 18 21) (3 0 1 2) (19 16 17 18) (5 2 11 12) (21 18 27 28) (15 12 13 14) (31 28 29 30) (12 11 10 13) (28 27 26 29) (11 8 9 10) (27 24 25 26) ); } ); mergePatchPairs ( ); thank you a lot. |
|
April 17, 2013, 05:23 |
|
#6 |
New Member
chaoqing min
Join Date: Mar 2013
Posts: 10
Rep Power: 13 |
Thank you, I have changed some orientations but it still doesnt work. the blockMesh and changed blockMeshDict. are listed as above, and you can have a look.
Thank you a lot. |
|
April 17, 2013, 05:55 |
|
#7 |
Senior Member
Join Date: Aug 2010
Location: Groningen, The Netherlands
Posts: 216
Rep Power: 19 |
Hey nennbs,
I still would say that your vertices are not in the correct order. if you have a look at the warning messages they say: Code:
(...) negative volume block : 0, probably defined inside-out (...) negative volume block : 1, probably defined inside-out (...) negative volume block : 2, probably defined inside-out (...) negative volume block : 3, probably defined inside-out (...) negative volume block : 4, probably defined inside-out (...) negative volume block : 5, probably defined inside-out (...) negative volume block : 6, probably defined inside-out (...) so that you have these troubles. I checked block number 0 and the correct numbers are: 0 1 17 16 3 2 18 19 if you apply this principle to the other blocks you should get a valid blockMeshDict file. Eventually you have to check also your number of cells per edge for they are related to this issue. For further reference see the userguide section of blockMesh where there is a detailed sketch of an example block and its numbering. regards |
|
April 17, 2013, 06:42 |
|
#8 |
New Member
chaoqing min
Join Date: Mar 2013
Posts: 10
Rep Power: 13 |
Thanks millions, It works.
|
|
Tags |
16th, 2013, april |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Problem with cyclic boundaries in Openfoam 1.5 | fs82 | OpenFOAM | 37 | November 29, 2024 11:15 |
[snappyHexMesh] Problem with decomposePar, snappyHexMesh | luca1992 | OpenFOAM Meshing & Mesh Conversion | 12 | August 23, 2017 20:06 |
createPatch Segmentation Fault (CORE DUMPED) | sam.ho | OpenFOAM Pre-Processing | 2 | April 21, 2014 03:01 |
[Commercial meshers] when mesh big......incorrect orientation to set wrongOrientedFaces??? | yuhai | OpenFOAM Meshing & Mesh Conversion | 0 | October 1, 2009 10:21 |
when mesh big......incorrect orientation to set wrongOrientedFaces??? | yuhai | OpenFOAM Pre-Processing | 0 | September 29, 2009 10:00 |