|
[Sponsors] |
August 8, 2008, 11:06 |
Good morning,
using snappyH
|
#1 |
Senior Member
Pierre-Olivier Dallaire
Join Date: Mar 2009
Location: Montreal, Quebec, Canada
Posts: 192
Rep Power: 17 |
Good morning,
using snappyHexMesh, I was able to mesh compilcated surfaces - great tool ! I just found out that if one of the stl files is a perfect plane surface that sits on one of the 3 orthogonal planes (X-Y, Y-Z, or X-Z), the bounding box detector creates an error. Here is an example : ... Determining initial surface intersections ----------------------------------------- Edge intersection testing: Number of edges : 725100 Number of edges to retest : 725100 sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found sh: gaddr2line: command not found Badly formed bounding box-0.500637 -11.25 1.99967) (0.500362 -11.25 3.00077)#0 Foam::error::printStack(Foam:stream&) addr2line failed #1 Foam::error::abort() addr2line failed #2 Foam::indexedOctree<foam::treedatatrisurface>::div ide(Foam::treeBoundBox const&, Foam::DynamicList<foam::list<int>, 0u, 2u, 1u>&, int) const addr2line failed #3 Foam::indexedOctree<foam::treedatatrisurface>::ind exedOctree(Foam::treeDataTriSu rface const&, Foam::treeBoundBox const&, int, double, double) addr2line failed ... Regards, Pierre-Olivier |
|
August 11, 2008, 06:22 |
Hi Pierre-Olivier,
the (axi
|
#2 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
Hi Pierre-Olivier,
the (axis-aligned) octree used for doing geometric tests on surfaces does not like 2D axis-aligned geometries (planes, lines, points). You could try perturbing your surface or rotate the whole lot. Anything that causes the bounding box to be non 2d-axis-aligned should work. |
|
August 11, 2008, 23:43 |
Yes, it worked - thanks !
|
#3 |
Senior Member
Pierre-Olivier Dallaire
Join Date: Mar 2009
Location: Montreal, Quebec, Canada
Posts: 192
Rep Power: 17 |
Yes, it worked - thanks !
|
|
November 12, 2008, 07:38 |
Hi,
I was able to use snappyH
|
#4 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Hi,
I was able to use snappyHexmesh on geometries I created myself with SALOME. When trying another STL file, created with some unknown program it fails with a segmentation fault. Blender refuses to open it,but Paraview can read it alright. Are there any known STL format issues? Recommendations how to check/repair such a STL file? Thanks for any advice, Regards, Pal |
|
November 12, 2008, 08:29 |
Hi,
you can have a look at
|
#5 |
Member
Norman Del Puppo
Join Date: Mar 2009
Location: Hinwil, CH
Posts: 57
Rep Power: 17 |
Hi,
you can have a look at this very useful tutorial: http://www.cfditalia.org/software/preprocessing/preparazione_del_modello_snappyh exmesh I know that it is written in Italian but you can figure out how to use these things reading the reported "command box"! In any case Blender should open your file so I think that something wrong is present there... Have a nice day! Norman |
|
November 12, 2008, 10:38 |
Is the STL binary? Binary STL
|
#6 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
Is the STL binary? Binary STL is not very well defined. If it is Ascii snappedHexMesh should not fail. What kind of error do you get? Can you run e.g. surfaceCheck on the surface?
|
|
November 17, 2008, 18:30 |
Great Thanks Norman and Mattij
|
#7 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Great Thanks Norman and Mattijs,
In prefer spanish but will see how far I get with italian:-) The STL is ASCII... Will see for any error message tomorow and check that surfaceCheck. Sorry for being so slow but as a student I only work part time on FOAM... Have a nice day/night:-) Pal |
|
November 18, 2008, 08:35 |
Hi,
Back to work I tried agai
|
#8 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Hi,
Back to work I tried again and yes, the STL was bad. After processing it with admesh surfaceCheck tells me Dumping bad quality faces to "badFaces" Paste this into the input for surfaceSubset ... Edges: min 0.000141144 for edge 113249 points (53.4499 9.918 2.5517e-06)(53.4499 9.91786 2.40737e-06) max 160.585 for edge 124347 points (149.285 0 16.5)(-11.2999 0.0101797 16.5) Checking for points less than 1E-6 of bounding box ((162.57 27.5 16.5) meter) apart. Found 0 nearby points. Surface is closed. All edges connected to two faces. Number of unconnected parts : 1 Number of zones (connected area with consistent normal) : 333194 More than one normal orientation. Checking self-intersection. Surface is not self-intersecting End Seems OK to me. With blockMesh I tried to put a box around and the locationinMesh point inside, quite similar to the racing car example. snappyHexmesh now segfaults:-( Create time Create mesh for time = 0 Read mesh in = 1.58 s Reading refinement surfaces. Read refinement surfaces in = 3.24 s Reading refinement shells. #0 Foam::error::printStack(Foam:stream&) in "/home/pasch/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so" #1 Foam::sigSegv::sigSegvHandler(int) in "/home/pasch/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so" #2 Uninterpreted: [0xffffe420] #3 Foam::triSurfaceMesh::isSurfaceClosed() const in "/home/pasch/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libmeshTools.so" #4 Foam::triSurfaceMesh::hasVolumeType() const in "/home/pasch/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libmeshTools.so" #5 Foam::shellSurfaces::setAndCheckLevels(double, Foam::List<foam::tuple2<double,> > const&) in "/home/pasch/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libautoMesh.so" #6 Foam::shellSurfaces::shellSurfaces(Foam::searchabl eSurfaces const&, Foam::dictionary const&) in "/home/pasch/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libautoMesh.so" #7 main in "/home/pasch/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/snappyHexMesh" #8 __libc_start_main in "/lib/tls/libc.so.6" #9 Foam::regIOobject::writeObject(Foam::IOstream::str eamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/home/pasch/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/snappyHexMesh" Segmentation fault Any clue? Thanks in advance, Pal |
|
November 18, 2008, 10:40 |
Thanks a lot, its running....
|
#9 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Thanks a lot, its running....
|
|
November 19, 2008, 04:11 |
Dear SnappyHex Users,
i have
|
#10 |
Guest
Posts: n/a
|
Dear SnappyHex Users,
i have a bit of trouble getting nice results when using interfoam in combination with snappy. I try to simulate a sphere with water flowing around it. what i see is that, when looking at the gamma 0.5 isosurface i have an area that looks very bumpy, like the region was made up from triangles (some polygons in 3d i guess) and that the isosurface is following them. i have been given the indication that this might just be a fault in paraview (and ensight) but could there also be another explination. i cant find anywhere how to turn of the spliting of hexcells by drawing a diagonal through them as is done in snappy. is there a way around this, or do i simply need to make a finer mesh? finer background mesh? thanks Erik |
|
November 19, 2008, 06:07 |
foamToVTK/paraFoam/foamToEnsig
|
#11 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
foamToVTK/paraFoam/foamToEnsight all will decompose any cell which is not a pure hex into pyramids and tetrahedra and this can lead to low quality isosurfaces.
(a pure hex is a cell with 6 quad faces. Even a single edge being split will cause the cell to become a polyhedron and be decomposed) Solutions: - make sure your iso surface does not go through any refinement region. - map the solution onto a pure hex mesh. - write a small utility to do double averaging - cell to point and then point to cell. This will produce very smooth isosurfaces but will lose precision so is a cheat. |
|
November 19, 2008, 08:28 |
Ah, many thanks to Niklas Wiks
|
#12 |
Guest
Posts: n/a
|
Ah, many thanks to Niklas Wikström who gave me pretty much the same explication.
Mattijs - I like the idea of mapping the solution, it there a utility to do this or would I write it myself? I need not to Worry then about the quality of the solution if I understand it right, just the graphical output!? thank you both! |
|
November 25, 2008, 04:53 |
Hi,
I noticed that snappyHexm
|
#13 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Hi,
I noticed that snappyHexmesh fails with a segmentation fault if the refinement level of a region is higher than the one specified at the surface. Although I can't imagine why anyone might want to do this , a clear message may be helpful to users and should be very easy to implement. Or is this supposed to work? |
|
November 25, 2008, 05:13 |
Sorry, I posted false informat
|
#14 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Sorry, I posted false information above.
My case fails with a floating point exception if the refinement level is higher than 5 in either the region or the surface... I don't really need such a high resolution but it shouldn't fail just like that, I believe. Pal |
|
November 25, 2008, 08:01 |
No it shouldn't fail with norm
|
#15 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
No it shouldn't fail with normal input. Do you have a testcase? You can send it to me directly (domain opencfd.co.uk, user m.janssens)
|
|
November 25, 2008, 08:07 |
I assume you are using 1.5.x ?
|
#16 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
I assume you are using 1.5.x ? It has got various fixes in snappyHexMesh.
|
|
November 25, 2008, 10:33 |
Hi Mattijs,
Yes, I am using v
|
#17 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Hi Mattijs,
Yes, I am using version 1.5. I need to ask wether I am allowed to share the geometry. If not I will try to reproduce the error with another case and send You the setup. Right now it is running with a refinement level of 5 in the refinement region and seems fine. Confused... Thanks a lot, Pal |
|
November 25, 2008, 12:53 |
Hi again,
Someone smart told
|
#18 |
New Member
Pal Schmitt
Join Date: Mar 2009
Posts: 28
Rep Power: 17 |
Hi again,
Someone smart told me snappyHexmesh might fail due to old data from previous runs. Is that true? I have been cleaning my case before every new calculation since then and my problems seem to be gone.. Can anyone verify? Is it the existing timesteps?... Cheers, Pal |
|
November 25, 2008, 14:57 |
Yes that can be the case. It r
|
#19 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
Yes that can be the case. It reads a starting mesh to start refining from. Usually this comes from constant/polyMesh but it can also come from a time directory. The starting mesh consists of the usual faces,points,etc. files but also two special files, pointLevel and cellLevel and these have to be consistent with the mesh.
|
|
August 21, 2009, 05:08 |
|
#20 |
New Member
andres
Join Date: Aug 2009
Posts: 15
Rep Power: 17 |
Hi all,
I have a question regarding the snappyhexmesh. My domain is as large as 1mm^3 with a couple of bodies inside. snappyhexmesh refines the surface intersection to the domain created with blockmesh but it does not remove the volume of the body. I have tried reducing the property minVol to a very small value. But the results are the same. do you have any advice for this case? many thanks Andres |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] Surface boundary mesh in snappyHexMesh | bastil | OpenFOAM Meshing & Mesh Conversion | 7 | February 3, 2012 08:37 |
[CAD formats] Tool for Surface Preparation for SnappyHexMesh | bastil | OpenFOAM Meshing & Mesh Conversion | 18 | November 17, 2008 17:49 |
[Commercial meshers] Import Surface from HyperMesh to snappyHexMesh | bastil | OpenFOAM Meshing & Mesh Conversion | 7 | October 7, 2008 08:32 |
postprocessing - surface - plane | Brujo | FLUENT | 2 | March 1, 2008 11:36 |
Making boundary profile on a surface in xz- plane | varghese | FLUENT | 6 | May 3, 2002 09:38 |