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

[Other] Enosh: A New Structured Mesh Generator

Register Blogs Community New Posts Updated Threads Search

Like Tree10Likes
  • 4 Post By lakeat
  • 1 Post By lakeat
  • 1 Post By lakeat
  • 3 Post By lakeat
  • 1 Post By lakeat

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   November 1, 2013, 14:40
Default Enosh: A New Structured Mesh Generator
  #1
Senior Member
 
lakeat's Avatar
 
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21
lakeat is on a distinguished road
Send a message via Skype™ to lakeat
I have spent a few months in writing a 2D structured mesh generator for external aerodynamic flow simulations purely seeking for generating high-quality structured meshes, which is not possible right now with OpenFOAM's blockMesh. Before I go any further, I am just wondering how many people is interested in using it in OpenFOAM community? It is C++, QT and VTK based (so linux and mac version will be readily available), very fast as far as I can tell. It generates smoothed mesh (not just winslow smoothing), but also with wall grid space control and orthogonal boundary grids, tests so far have shown that the convergence speed is not too bad. I'd like to make it free, even though not open source for the moment. Here are two screenshots:

Screenshot from 2013-11-01 14:37:45.jpgScreenshot from 2013-11-01 14:36:43.jpg
mgdenno, taxalian, onyir and 1 others like this.
__________________
~
Daniel WEI
-------------
Boeing Research & Technology - China
Beijing, China
Email

Last edited by lakeat; November 4, 2013 at 09:13.
lakeat is offline   Reply With Quote

Old   November 3, 2013, 09:08
Default
  #2
Senior Member
 
Paulo Vatavuk
Join Date: Mar 2009
Location: Campinas, Brasil
Posts: 200
Rep Power: 18
vatavuk is on a distinguished road
Hi Daniel,
I would be interested in using your mesh generator. Have you considered using mesquite for mesh smoothing?
Best Regards,
Paulo
vatavuk is offline   Reply With Quote

Old   November 4, 2013, 09:09
Default
  #3
Senior Member
 
lakeat's Avatar
 
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21
lakeat is on a distinguished road
Send a message via Skype™ to lakeat
Thanks a lot for your interest. I'll start writing an OpenFOAM mesh exporter soon.

mesquite? Not yet. Currently I have just finished the old winslow method and a more powerful elliptic method with forcing terms and also one of my own algorithm.
rajibroy likes this.
__________________
~
Daniel WEI
-------------
Boeing Research & Technology - China
Beijing, China
Email
lakeat is offline   Reply With Quote

Old   February 24, 2014, 19:25
Default
  #4
Member
 
Jace
Join Date: Oct 2012
Posts: 77
Rep Power: 16
zhengzh5 is on a distinguished road
Quote:
Originally Posted by lakeat View Post
Thanks a lot for your interest. I'll start writing an OpenFOAM mesh exporter soon.

mesquite? Not yet. Currently I have just finished the old winslow method and a more powerful elliptic method with forcing terms and also one of my own algorithm.
Hi,

is there any plan to release the source code for your mesh generator?

thanks!
zhengzh5 is offline   Reply With Quote

Old   February 24, 2014, 21:56
Default
  #5
Senior Member
 
lakeat's Avatar
 
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21
lakeat is on a distinguished road
Send a message via Skype™ to lakeat
Sorry, I don't have this plan for the moment. I am now rewriting the whole code all over again to handle multi-blocks. So hopefully, it will be at least a good alternative of OpenFOAM's native blockmesh utility
__________________
~
Daniel WEI
-------------
Boeing Research & Technology - China
Beijing, China
Email
lakeat is offline   Reply With Quote

Old   February 25, 2014, 03:50
Default
  #6
New Member
 
gao
Join Date: Feb 2014
Posts: 7
Rep Power: 12
leguichet is on a distinguished road
Is it possible to convert your mesh to gmsh format? So it could be used in many other open source software.
leguichet is offline   Reply With Quote

Old   February 27, 2014, 16:26
Thumbs up
  #7
Senior Member
 
Join Date: Nov 2010
Posts: 139
Rep Power: 16
taxalian is on a distinguished road
Send a message via Skype™ to taxalian
Quote:
Originally Posted by lakeat View Post
Sorry, I don't have this plan for the moment. I am now rewriting the whole code all over again to handle multi-blocks. So hopefully, it will be at least a good alternative of OpenFOAM's native blockmesh utility
Hi Daniel,
I really appreciate your efforts for this excellent initiative. Secondly i would like to know is it possible to use normal hyperbolic extrusion with your mesher. Also away from the wall at far distance outside the boundary layer thickness can the rest of the domain be filled by triangles/tetrahedrals. So kind of hybrid meshing approach.

Thanks.
taxalian is offline   Reply With Quote

Old   February 27, 2014, 16:41
Default
  #8
Senior Member
 
lakeat's Avatar
 
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21
lakeat is on a distinguished road
Send a message via Skype™ to lakeat
hyperbolic extrusion is definitely the thing I would do in the near future. But not hybrid for the time being. Currently my goal is solely for academic, so converter to other non-FOAM mesh format like "Gmsh format" will propably come later.

Here is a leak of current input file format:
Code:
// ------------------------------------------------------------------------- //
//                                                                           //
//             ENOSH, a multi-block structured mesh generator                //
//                        Copyright 2014 Daniel Wei                          //
//                                                                           //
//                         Mesh Configuration File                           //
// ------------------------------------------------------------------------- //

// --------------------
// Description: A horseshoe mesh
// --------------------

// --------------------
// Geometry: NODES
// Format: NODE $NEWID $POINT
// --------------------
NODE 1 (0.0 0.0 0);
NODE 2 (5.0,0.0,0);
NODE 3 (5.0,5.0,0);
NODE 4 (0.0,5.0,0);
NODE 5 (2.0,0.0,0);
NODE 6 (2.0,1.0,0);
NODE 7 (3.0,1.0,0);
NODE 8 (3.0,0.0,0);

// --------------------
// Geometry: Special Edges
// Format: ARC $NODE1ID $NODE2ID $POINT
// --------------------
ARC 1 2 (1,0.5,0);

// --------------------
// Geometry: Edges and Their Dimensions
// Format: EDGE $NODE1ID-$NODE2ID [$DIMENSION] [$DELTA1] [$DELTA2] [$SMOOTHERBCTYPE] [$CAEBD]
// The order of node IDs is NOT important!
// Any bdName:bdType for the internal lines will be ignored
// --------------------
EDGE 1-5 4 0 0 0 bdName:bdType;
EDGE 5-6 4 0 0 0 bdName:bdType;
EDGE 6-7 4 0 0 0 bdName:bdType;
EDGE 7-8 4 0 0 0 bdName:bdType;
EDGE 8-2 4 0 0 0 bdName:bdType;
EDGE 2-3 4 0 0 0 bdName:bdType;
EDGE 3-4 4 0 0 0 bdName:bdType;
EDGE 4-1 4 0 0 0 bdName:bdType;
EDGE 6-4 4 0 0 0 bdName:bdType;
EDGE 7-3 4 0 0 0 bdName:bdType;
EDGE 5-8 4 0 0 0 bdName:bdType;

// --------------------
// Geometry: Blocks
// Format: BLOCK $NEWID ($IDLIST1 $IDLIST2 $IDLIST3 $IDLIST4)
// Note: The order of these IDLISTs IS important!
// --------------------
// Single block tests
// BLOCK 1 (1-5-6-7-8-2 2-3 3-4 4-1);
// BLOCK 1 (5-6-7-8 8-2 2-3-4-1 1-5);

// Multi-block test
BLOCK 1 (5-6 6-4 4-1 1-5);
BLOCK 2 (6-7 7-3 3-4 4-6);
BLOCK 3 (7-8 8-2 2-3 3-7);
BLOCK 4 (5-8 8-7 7-6 6-5);
As you can see, the format is quite similar to OpenFOAM's blockMeshDict. But it has some more powerful switches for structured grid control.
taxalian likes this.
__________________
~
Daniel WEI
-------------
Boeing Research & Technology - China
Beijing, China
Email
lakeat is offline   Reply With Quote

Old   February 28, 2014, 02:07
Default
  #9
Senior Member
 
Join Date: Nov 2010
Posts: 139
Rep Power: 16
taxalian is on a distinguished road
Send a message via Skype™ to taxalian
Quote:
Originally Posted by lakeat View Post
hyperbolic extrusion is definitely the thing I would do in the near future. But not hybrid for the time being. Currently my goal is solely for academic, so converter to other non-FOAM mesh format like "Gmsh format" will propably come later.

Here is a leak of current input file format:
Code:
// ------------------------------------------------------------------------- //
//                                                                           //
//             ENOSH, a multi-block structured mesh generator                //
//                        Copyright 2014 Daniel Wei                          //
//                                                                           //
//                         Mesh Configuration File                           //
// ------------------------------------------------------------------------- //

// --------------------
// Description: A horseshoe mesh
// --------------------

// --------------------
// Geometry: NODES
// Format: NODE $NEWID $POINT
// --------------------
NODE 1 (0.0 0.0 0);
NODE 2 (5.0,0.0,0);
NODE 3 (5.0,5.0,0);
NODE 4 (0.0,5.0,0);
NODE 5 (2.0,0.0,0);
NODE 6 (2.0,1.0,0);
NODE 7 (3.0,1.0,0);
NODE 8 (3.0,0.0,0);

// --------------------
// Geometry: Special Edges
// Format: ARC $NODE1ID $NODE2ID $POINT
// --------------------
ARC 1 2 (1,0.5,0);

// --------------------
// Geometry: Edges and Their Dimensions
// Format: EDGE $NODE1ID-$NODE2ID [$DIMENSION] [$DELTA1] [$DELTA2] [$SMOOTHERBCTYPE] [$CAEBD]
// The order of node IDs is NOT important!
// Any bdName:bdType for the internal lines will be ignored
// --------------------
EDGE 1-5 4 0 0 0 bdName:bdType;
EDGE 5-6 4 0 0 0 bdName:bdType;
EDGE 6-7 4 0 0 0 bdName:bdType;
EDGE 7-8 4 0 0 0 bdName:bdType;
EDGE 8-2 4 0 0 0 bdName:bdType;
EDGE 2-3 4 0 0 0 bdName:bdType;
EDGE 3-4 4 0 0 0 bdName:bdType;
EDGE 4-1 4 0 0 0 bdName:bdType;
EDGE 6-4 4 0 0 0 bdName:bdType;
EDGE 7-3 4 0 0 0 bdName:bdType;
EDGE 5-8 4 0 0 0 bdName:bdType;

// --------------------
// Geometry: Blocks
// Format: BLOCK $NEWID ($IDLIST1 $IDLIST2 $IDLIST3 $IDLIST4)
// Note: The order of these IDLISTs IS important!
// --------------------
// Single block tests
// BLOCK 1 (1-5-6-7-8-2 2-3 3-4 4-1);
// BLOCK 1 (5-6-7-8 8-2 2-3-4-1 1-5);

// Multi-block test
BLOCK 1 (5-6 6-4 4-1 1-5);
BLOCK 2 (6-7 7-3 3-4 4-6);
BLOCK 3 (7-8 8-2 2-3 3-7);
BLOCK 4 (5-8 8-7 7-6 6-5);
As you can see, the format is quite similar to OpenFOAM's blockMeshDict. But it has some more powerful switches for structured grid control.
Cool that seems to be a nice bottom up approach, is the mesh generator will able to do import for native cad files like stl, iges or stp etc. Just import the geometry and then descretize the nodes, edges and faces respectively.
taxalian is offline   Reply With Quote

Old   March 10, 2014, 14:59
Default
  #10
Senior Member
 
lakeat's Avatar
 
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21
lakeat is on a distinguished road
Send a message via Skype™ to lakeat
Hi everyone, you may find the download link on http://lakeat.co.nf/.
wyldckat, dkokron and Paulli like this.
__________________
~
Daniel WEI
-------------
Boeing Research & Technology - China
Beijing, China
Email
lakeat is offline   Reply With Quote

Old   April 23, 2014, 09:21
Default
  #11
Senior Member
 
Yuehan
Join Date: Nov 2012
Posts: 142
Rep Power: 14
wc34071209 is on a distinguished road
Hello,

You did great job, but have you ever thought to extend it to 3D meshing?
wc34071209 is offline   Reply With Quote

Old   April 23, 2014, 10:44
Default
  #12
Senior Member
 
lakeat's Avatar
 
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21
lakeat is on a distinguished road
Send a message via Skype™ to lakeat
Thanks, I'd like to but I just don't have time.
Paulli likes this.
__________________
~
Daniel WEI
-------------
Boeing Research & Technology - China
Beijing, China
Email
lakeat is offline   Reply With Quote

Old   May 20, 2014, 04:28
Unhappy can not run enosh
  #13
New Member
 
Paul li
Join Date: Sep 2013
Posts: 4
Rep Power: 13
Paulli is on a distinguished road
HI, 老魏
Thanks for what you done. However I can not run your application in my computer.
the response is:
./enosh: error while loading shared libraries: libQVTK.so.5.8: cannot open shared object file: No such file or directory
Could you please tell me how to fix it. Thanks a lot.


li
Paulli is offline   Reply With Quote

Old   May 21, 2014, 08:47
Default Very useful
  #14
New Member
 
Paul li
Join Date: Sep 2013
Posts: 4
Rep Power: 13
Paulli is on a distinguished road
Thanks, I use your software create some meshes. It is very simple when dealing with 2D meshes.
When can you add the ARC function to this software, I can wait to download.
Attached Images
File Type: jpg nozzle.jpg (20.9 KB, 115 views)
Paulli is offline   Reply With Quote

Reply


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
[ANSYS Meshing] Structured Mesh inside an egg-like geometry BrunoCFD ANSYS Meshing & Geometry 1 October 31, 2018 15:48
Block structured hexagonal mesh vs automated tetra mesh inside Workbench for CFD Chander CFX 3 November 27, 2011 17:24
Icemcfd 11: Loss of mesh from surface mesh option? Joe CFX 2 March 26, 2007 19:10
Mesh generator and CFD solver Gennady Kireyko Main CFD Forum 0 May 6, 2001 12:13
Structured Grid Definition craig shores Main CFD Forum 3 March 21, 2001 15:48


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