andygdl |
November 2, 2010 11:25 |
Axisymmetric blockMesh error. Are Arcs needed?
2 Attachment(s)
Hi,
I'm having problems meshing a fairly complicated axisymmetric nozzle. I've had no problems in the past with axisymmetric meshes, but this one is causing problems. The error is as follows:
Code:
Create time
Creating block mesh from
"/home/andy/OpenFOAM/andy-1.7.1/run/gt_hemi/axihemifull/constant/polyMesh/blockMeshDict"
Creating blockCorners
Creating curved edges
#0 Foam::error::printStack(Foam::Ostream&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libOpenFOAM.so"
#1 Foam::sigFpe::sigFpeHandler(int) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libOpenFOAM.so"
#2 Uninterpreted:
#3 Foam::coordinateRotation::calcTransform(Foam::Vector<double> const&, Foam::Vector<double> const&, Foam::coordinateRotation::axisOrder const&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libmeshTools.so"
#4 Foam::coordinateRotation::coordinateRotation(Foam::Vector<double> const&, Foam::Vector<double> const&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libmeshTools.so"
#5 Foam::coordinateSystem::coordinateSystem(Foam::word const&, Foam::Vector<double> const&, Foam::Vector<double> const&, Foam::Vector<double> const&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libmeshTools.so"
#6 Foam::cylindricalCS::cylindricalCS(Foam::word const&, Foam::Vector<double> const&, Foam::Vector<double> const&, Foam::Vector<double> const&, bool) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libmeshTools.so"
#7 Foam::arcEdge::calcAngle() in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#8 Foam::arcEdge::arcEdge(Foam::Field<Foam::Vector<double> > const&, Foam::Istream&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#9 Foam::curvedEdge::addIstreamConstructorToTable<Foam::arcEdge>::New(Foam::Field<Foam::Vector<double> > const&, Foam::Istream&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#10 Foam::curvedEdge::New(Foam::Field<Foam::Vector<double> > const&, Foam::Istream&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#11 Foam::blockMesh::createTopology(Foam::IOdictionary&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#12 Foam::blockMesh::blockMesh(Foam::IOdictionary&) in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#13 main in "/home/andy/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/blockMesh"
#14 __libc_start_main in "/lib/libc.so.6"
#15 _start at /usr/src/packages/BUILD/glibc-2.10.1/csu/../sysdeps/i386/elf/start.S:122
Floating point exception
The problem goes away if I replace the 'arcs' with lines - i.e. the arcs put in for rotation about the axis (not the arcs that define the shape of the geometry!).
I've checked, the interpolation points all seem in order. I don't think its any problem with 'crazy' surfaces bounded by 2 splines and 2 arcs, as I've used a very similar geometry before and not had any problems.
The obvious question is: 'do I actually need to make them arcs?'. It is only 5 degrees, would it make any difference to the solution if they were just lines?
Otherwise, does anyone have an idea what the problem is? Thanks very much for any help!
I've included the blockMeshDict.fail that doesn't work and the blockMeshDict.yay that works without arcs
ps. I realise I didn't need to define 'line a b'... I was young and crazy!
|