CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Pre-Processing

createPatch produces error "faces with negative volume decomposition"

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

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 25, 2013, 05:39
Default createPatch produces error "faces with negative volume decomposition"
  #1
New Member
 
Danesh S
Join Date: Jul 2013
Location: Bochum, Germany
Posts: 27
Rep Power: 12
DaSh is on a distinguished road
Hello All,

I just rebuild a closed cylindrical mesh into a cyclic cylindrical mesh. For the purpose of reducing the number etc. I used createPatch, respective a createPatchdict. Everything worked fine so far, but now I get this error when trying to run pisoFoam:

Code:
Create time

Create mesh for time = 0

Reading field p

Reading field U

Reading/calculating face flux field phi

Selecting incompressible transport model Newtonian
Selecting turbulence model type LESModel
Selecting LES turbulence model Smagorinsky
#0  Foam::error::printStack(Foam::Ostream&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1  Foam::sigFpe::sigHandler(int) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2   in "/lib64/libc.so.6"
#3  Foam::divide(Foam::Field<double>&, double const&, Foam::UList<double> const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#4  Foam::operator/(double const&, Foam::tmp<Foam::Field<double> > const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#5  Foam::surfaceInterpolation::makeDeltaCoeffs() const in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#6  Foam::surfaceInterpolation::deltaCoeffs() const in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#7  Foam::incompressible::LESModel::LESModel(Foam::word const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#8  Foam::incompressible::LESModels::Smagorinsky::Smagorinsky(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#9  Foam::incompressible::LESModel::adddictionaryConstructorToTable<Foam::incompressible::LESModels::Smagorinsky>::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#10  Foam::incompressible::LESModel::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#11  Foam::incompressible::turbulenceModel::addturbulenceModelConstructorToTable<Foam::incompressible::LESModel>::NewturbulenceModel(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#12  Foam::incompressible::turbulenceModel::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleTurbulenceModel.so"
#13  
 in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/pisoFoam"
#14  __libc_start_main in "/lib64/libc.so.6"
#15  
 at /home/abuild/rpmbuild/BUILD/glibc-2.15/csu/../sysdeps/x86_64/elf/start.S:116
Gleitkomma-Ausnahme
I did checkMesh -allGeometry -allTopology and I found out, that createPatch produces the following
Code:
Create polyMesh for time = 0

Time = 0

Mesh stats
    points:           456000
    faces:            1319760
    internal faces:   1272240
    cells:            432000
    boundary patches: 6
    point zones:      0
    face zones:       0
    cell zones:       0

Overall number of cells of each type:
    hexahedra:     432000
    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.
    Topological cell zip-up check OK.
    Face-face connectivity OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces ...
    Patch               Faces    Points   Surface topology                   Bounding box
    aeussereWand        18000    18240    ok (non-closed singly connected)   (-1 0 -1) (1 5 1)
    innereWand          18000    18240    ok (non-closed singly connected)   (-0.5 0 -0.5) (0.5 5 0.5)
    cyc_half0           2880     3025     ok (non-closed singly connected)   (-1 0 0) (1 0 1)
    cyc_half1           2880     3025     ok (non-closed singly connected)   (-1 0 -1) (1 0 0)
    cyc_half10          2880     3025     ok (non-closed singly connected)   (-1 5 0) (1 5 1)
    cyc_half11          2880     3025     ok (non-closed singly connected)   (-1 5 -1) (1 5 0)

Checking geometry...
    Overall domain bounding box (-1 0 -1) (1 5 1)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (1.00823e-17 -8.79755e-18 -1.68404e-16) OK.
    Max cell openness = 2.53899e-16 OK.
    Max aspect ratio = 5.92719 OK.
    Minimum face area = 0.000278357. Maximum face area = 0.00174528.  Face area magnitudes OK.
    Min volume = 1.85571e-05. Max volume = 3.59782e-05.  Total volume = 11.7796.  Cell volumes OK.
    Mesh non-orthogonality Max: 0.000138361 average: 2.95756e-06
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 0.0127689 OK.
    Coupled point location match (average 0) OK.
 ***Error in face tets: 11520 faces with low quality or negative volume decomposition tets.
  <<Writing 11520 faces with low quality or negative volume decomposition tets to set lowQualityTetFaces
    Min/max edge length = 0.0130896 0.0666667 OK.
    All angles in faces OK.
    Face flatness (1 = flat, 0 = butterfly) : average = 1  min = 1
    All face flatness OK.
    Cell determinant (wellposedness) : minimum: 0.260484 average: 3.33264
    Cell determinant check OK.
    Concave cell check OK.

Failed 1 mesh checks.
Problem is, that the 11520 (=4 * 2880, these are the cyclics) negative volumes, were not there before. The closed mesh was fine!

Do you have any suggestions concerning this? Is it a bug? Why do I have these negative cells now, since I did not change the order of vertices for the faces?

Help is indeed welcome

Cheers,
Danesh

Edit: "Gleitkomma-Ausnahme" is german for floating point exception :-D
DaSh is offline   Reply With Quote

Old   October 25, 2013, 06:39
Default
  #2
New Member
 
Danesh S
Join Date: Jul 2013
Location: Bochum, Germany
Posts: 27
Rep Power: 12
DaSh is on a distinguished road
I walked around the problem by not using createPatch. But I guess, solving this problem (if not man made), might be helpful for others, too.
DaSh is offline   Reply With Quote

Old   March 24, 2020, 12:46
Default
  #3
Member
 
Gang Wang
Join Date: Oct 2019
Location: China
Posts: 64
Rep Power: 7
Gang Wang is on a distinguished road
Quote:
Originally Posted by DaSh View Post
Hello All,

I just rebuild a closed cylindrical mesh into a cyclic cylindrical mesh. For the purpose of reducing the number etc. I used createPatch, respective a createPatchdict. Everything worked fine so far, but now I get this error when trying to run pisoFoam:

Code:
Create time

Create mesh for time = 0

Reading field p

Reading field U

Reading/calculating face flux field phi

Selecting incompressible transport model Newtonian
Selecting turbulence model type LESModel
Selecting LES turbulence model Smagorinsky
#0  Foam::error::printStack(Foam::Ostream&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1  Foam::sigFpe::sigHandler(int) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2   in "/lib64/libc.so.6"
#3  Foam::divide(Foam::Field<double>&, double const&, Foam::UList<double> const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#4  Foam::operator/(double const&, Foam::tmp<Foam::Field<double> > const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#5  Foam::surfaceInterpolation::makeDeltaCoeffs() const in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#6  Foam::surfaceInterpolation::deltaCoeffs() const in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#7  Foam::incompressible::LESModel::LESModel(Foam::word const&, Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#8  Foam::incompressible::LESModels::Smagorinsky::Smagorinsky(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#9  Foam::incompressible::LESModel::adddictionaryConstructorToTable<Foam::incompressible::LESModels::Smagorinsky>::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#10  Foam::incompressible::LESModel::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#11  Foam::incompressible::turbulenceModel::addturbulenceModelConstructorToTable<Foam::incompressible::LESModel>::NewturbulenceModel(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleLESModels.so"
#12  Foam::incompressible::turbulenceModel::New(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh> const&, Foam::transportModel&, Foam::word const&) in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libincompressibleTurbulenceModel.so"
#13  
 in "/opt/net/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/pisoFoam"
#14  __libc_start_main in "/lib64/libc.so.6"
#15  
 at /home/abuild/rpmbuild/BUILD/glibc-2.15/csu/../sysdeps/x86_64/elf/start.S:116
Gleitkomma-Ausnahme
I did checkMesh -allGeometry -allTopology and I found out, that createPatch produces the following
Code:
Create polyMesh for time = 0

Time = 0

Mesh stats
    points:           456000
    faces:            1319760
    internal faces:   1272240
    cells:            432000
    boundary patches: 6
    point zones:      0
    face zones:       0
    cell zones:       0

Overall number of cells of each type:
    hexahedra:     432000
    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.
    Topological cell zip-up check OK.
    Face-face connectivity OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces ...
    Patch               Faces    Points   Surface topology                   Bounding box
    aeussereWand        18000    18240    ok (non-closed singly connected)   (-1 0 -1) (1 5 1)
    innereWand          18000    18240    ok (non-closed singly connected)   (-0.5 0 -0.5) (0.5 5 0.5)
    cyc_half0           2880     3025     ok (non-closed singly connected)   (-1 0 0) (1 0 1)
    cyc_half1           2880     3025     ok (non-closed singly connected)   (-1 0 -1) (1 0 0)
    cyc_half10          2880     3025     ok (non-closed singly connected)   (-1 5 0) (1 5 1)
    cyc_half11          2880     3025     ok (non-closed singly connected)   (-1 5 -1) (1 5 0)

Checking geometry...
    Overall domain bounding box (-1 0 -1) (1 5 1)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (1.00823e-17 -8.79755e-18 -1.68404e-16) OK.
    Max cell openness = 2.53899e-16 OK.
    Max aspect ratio = 5.92719 OK.
    Minimum face area = 0.000278357. Maximum face area = 0.00174528.  Face area magnitudes OK.
    Min volume = 1.85571e-05. Max volume = 3.59782e-05.  Total volume = 11.7796.  Cell volumes OK.
    Mesh non-orthogonality Max: 0.000138361 average: 2.95756e-06
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 0.0127689 OK.
    Coupled point location match (average 0) OK.
 ***Error in face tets: 11520 faces with low quality or negative volume decomposition tets.
  <<Writing 11520 faces with low quality or negative volume decomposition tets to set lowQualityTetFaces
    Min/max edge length = 0.0130896 0.0666667 OK.
    All angles in faces OK.
    Face flatness (1 = flat, 0 = butterfly) : average = 1  min = 1
    All face flatness OK.
    Cell determinant (wellposedness) : minimum: 0.260484 average: 3.33264
    Cell determinant check OK.
    Concave cell check OK.

Failed 1 mesh checks.
Problem is, that the 11520 (=4 * 2880, these are the cyclics) negative volumes, were not there before. The closed mesh was fine!

Do you have any suggestions concerning this? Is it a bug? Why do I have these negative cells now, since I did not change the order of vertices for the faces?

Help is indeed welcome

Cheers,
Danesh

Edit: "Gleitkomma-Ausnahme" is german for floating point exception :-D
Hi!

Have you solved out this problem? I also encounter with this problem. Quite confusing. Is there any other way to smooth the mesh?

Best regards,
Gang
Gang Wang is offline   Reply With Quote

Old   June 18, 2020, 07:08
Default
  #4
Member
 
Join Date: Jun 2020
Posts: 49
Rep Power: 5
Swirl is on a distinguished road
Same here. The mesh is fine until I use createPatch for the cyclic boundaries. Then I get some faces with "bad quality or negative volume decomposition tets". Has anyone figured out how to solve this? Any help is greatly appreciated.

Last edited by Swirl; June 18, 2020 at 07:09. Reason: Removed typo
Swirl is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Other] mesh airfoil NACA0012 anand_30 OpenFOAM Meshing & Mesh Conversion 13 March 7, 2022 17:22
how to set periodic boundary conditions Ganesh FLUENT 15 November 18, 2020 06:09
[snappyHexMesh] How to define to right point for locationInMesh Mirage12 OpenFOAM Meshing & Mesh Conversion 7 March 13, 2016 14:07
[Commercial meshers] negative volume in gambit sofie1 OpenFOAM Meshing & Mesh Conversion 6 January 18, 2012 02:34
remeshing due to negative volume error Doginal CFX 1 August 21, 2011 21:50


All times are GMT -4. The time now is 18:26.