One question about the difference of snappyhexmesh in butterfly for grasshooper and paraview

I am using butterfly for grasshooper doing CFD simulation. In the workflow,I am using the example file from github.After mesh have generated,I bake the mesh into rhino for visualizing. To further post-process,I import OpenFOAM file to paraview. At the moment,I just found the mesh in rhino and paraview is not same.

During the workflow,I also found the snap control sometimes can work fine,sometimes cannot work.
I don’t know why this happened.

Mesh in rhino

Mesh in paraview

It seems that mesh in paraview is not snapped the feature of geomery, but the mesh in rhino is snapped the feature of geometry.

Here is the rhino model and the grasshopper file.
taozi3dm.3dm (3.1 MB)

outdoor_airflow (415.0 KB)

Today,I found the reason.Before OpenFOAM ran,the mesh looked not smooth.And after finished the calculation,the mesh became smooth. So maybe is it a bug in Paraview.

Before OpenFOAM ran

After finished the calculation

You mean running simpleFoam for instance? I don’t think that should affect the results.

Are you loading the final version of mesh when you load them in ParaView?

Hi sorry for a late response.

I believe what happened here is a mix up with the time you were visualising in paraview.

The two pictures are showing two different times, within the snappyHexMesh workflow:slight_smile:

  1. time 0: the castellated mesh, one looking like lego, created at the first refinement phase. This is what you saw in paraview
  2. time 1: the snapped mesh, smoothed mesh created at the second phase. This is what you saw in rhino, and afterwards in paraview.

Since Butterfly is saving time folders for both steps (which is really good for users since they can use their time 0 mesh to see if the background mesh needs refinement, when you load a case in paraview you need to make sure the time is set to the second phase (time 1) in order to visualise the smoothed mesh.

Hope this helps.

Kind regards,

@TheodorosGalanos Yeah.I got it.Your answer made me more clear for mesh.Thank you!!!


This Topic about the visualization time in ParaView just called my attention.
Unlike the explanation, instead of seeing “Time 0” and “Time 1”, I am only able to see “Time 1” and “Time 2”. However, what is shown in my “Time 2” does not seem to be the final mesh, or I have problems at the corners of my geometry. =)

Should one always be able to see the Time from 0 on , or it is also okay that it starts from 1?
By the way, I have the “Skip 0 Time”" option uncheck!


@Nayara It is a question about sanppyHexMesh.
Background mesh or BlockMesh is time 0.
Castellated mesh is time 1.
Snapped mesh is time 2.
Layered mesh is time 3.
Further details, you can refer to this tutorial.


Thanks for the reply. The tutorial is very useful too.

Workflow and usage diagrams are always helpful.
Thank you,