CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Bugs (https://www.cfd-online.com/Forums/openfoam-bugs/)
-   -   cyclics and snappyHexMesh (https://www.cfd-online.com/Forums/openfoam-bugs/77340-cyclics-snappyhexmesh.html)

fabianpk June 21, 2010 02:26

cyclics and snappyHexMesh
 
Hello,
I'm not sure if this is classified as a bug or a case of user error, but I've found out that when using snappyHexMesh on a block with cyclics, creation of layers from the stl crashes if you have more than one patch of cyclics. It does not crash if you collect all the cyclics into one patch with createPatch however.
I've used the latest (as of last week) version of OpenFOAM 1.6.x. I only tried it with one stl surface, but the output from my debug compilation of OpenFOAM is:


patch faces layers avg thickness[m]
near-wall overall
----- ----- ------ --------- -------
stlfile_mypatch 78324 1 0.0208 0.0208

medialAxisSmoothingInfo : Calculate distance to Medial Axis ...
shrinkMeshDistance : Smoothing normals ...
Iteration 0 residual 0.00948


--> FOAM FATAL ERROR:
index 2 out of range 0 ... 1

From function UList<T>::checkIndex(const label)
in file ~/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude/UListI.H at line 110.

FOAM aborting
#0 Foam::error::printStack(Foam::Ostream&) in "~/OpenFOAM/OpenFOAM-1.6.x/lib/linux64GccDPDebug/libOpenFOAM.so"
#1 Foam::error::abort() at ~/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude/error.C:250
#2 Foam::Ostream& Foam::operator<< <Foam::error>(Foam::Ostream&, Foam::errorManip<Foam::error>) at ~/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude/errorManip.H:87
#3 Foam::UList<Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >*>::checkIndex(int) const at ~/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude/UListI.H:114
#4 Foam::UList<Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >*>::operator[](int) at ~/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude/UListI.H:141
#5 Foam::PtrList<Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::set(int, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >*) at ~/OpenFOAM/OpenFOAM-1.6.x/src/OpenFOAM/lnInclude/PtrListI.H:65
#6 Foam::PointEdgeWave<Foam::pointData>::calcCyclicAd dressing() at ~/OpenFOAM/OpenFOAM-1.6.x/src/meshTools/lnInclude/PointEdgeWave.C:80
#7 Foam::PointEdgeWave<Foam::pointData>::PointEdgeWav e(Foam::polyMesh const&, Foam::List<int> const&, Foam::List<Foam::pointData> const&, Foam::List<Foam::pointData>&, Foam::List<Foam::pointData>&, int) at ~/OpenFOAM/OpenFOAM-1.6.x/src/meshTools/lnInclude/PointEdgeWave.C:748
#8 Foam::autoLayerDriver::medialAxisSmoothingInfo(Foa m::motionSmoother const&, int, int, double, Foam::GeometricField<Foam::Vector<double>, Foam::pointPatchField, Foam::pointMesh>&, Foam::GeometricField<double, Foam::pointPatchField, Foam::pointMesh>&, Foam::GeometricField<double, Foam::pointPatchField, Foam::pointMesh>&) const at ~/OpenFOAM/OpenFOAM-1.6.x/src/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriverShrink.C:793
#9 Foam::autoLayerDriver::addLayers(Foam::layerParame ters const&, Foam::dictionary const&, Foam::List<int> const&, int, Foam::decompositionMethod&, Foam::fvMeshDistribute&) at ~/OpenFOAM/OpenFOAM-1.6.x/src/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriver.C:2846
#10 Foam::autoLayerDriver::doLayers(Foam::dictionary const&, Foam::dictionary const&, Foam::layerParameters const&, bool, Foam::decompositionMethod&, Foam::fvMeshDistribute&) at ~/OpenFOAM/OpenFOAM-1.6.x/src/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriver.C:3349
#11 main at ~/OpenFOAM/OpenFOAM-1.6.x/applications/utilities/mesh/generation/snappyHexMesh/snappyHexMesh.C:470
#12 __libc_start_main in "/lib64/libc.so.6"
#13 _start in "~/OpenFOAM/OpenFOAM-1.6.x/applications/bin/linux64GccDPDebug/snappyHexMesh"


/Fabian

mattijs June 22, 2010 12:51

Thanks, was a real bug - used bool instead of label. Fixed in 16x.

Thanks,

Mattijs


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