Hello everyone,

I have been looking into creating 2D geometry and meshing for sometime. I 
was reading the FAQ and came across this little paragraph:


   - If GridGenerator does not offer a mesh for the geometry you have, but 
   if the geometry is simple, then you can often create one "by hand". Take a 
   look, for example, at how we create the mesh in step-14 using the 
   Triangulation::create_triangulation function. All you need to do is take 
   a piece of paper, draw the geometry and a number of coarse cells that form 
   quadrilaterals, identify the locations of vertices and the connectivity 
   from cells to vertices, and pass the corresponding lists to the 
   Triangulation. Something similar can be done for simple 3d geometries.


I was looking at step 14 in the  "Exercise_2_3 class". Please correct me if 
I am wrong but it appears that in the class, you are creating geometry 
by specifying the vertices and what vertices the cells relate to. And then, 
from there you have to pass the information into the triangulation which 
"auto" meshes the geometry. Is this a correct understanding from a high 
level? In short, I could in theory create all of my 2D geometry in Deal.II. 
It appears that this method is a good candidate for what I would like to do.

I am currently porting a FEM program from windows to linux and converting 
from triangles to quads. I am sticking to 2D at this time. I am getting 
hung up on how to mesh the geometry. I have the geometry setup such that 
each line/arc is it's own class. Basic geometry shapes are derived classes 
of the line/arc class. in the line/arc class, I have information relating 
to what two vertices connect them and if there is an angle (for the arc). 
For the vertices, I have information about their center point. In short, I 
have all relevent information about the geometry contained in classes. 

I am currently thinking of a way t create the mesh from the geometry. At 
first, I was thinking that I could utilize the mesh generator from gmsh and 
copy the source from gmsh to my program. I would then have to convert my 
geometry into a format that the gmsh mesh function(s) can utilize. However, 
one obstacle from this is that the documentation for gmsh could be better. 
I could then use Deal.II gridIn class to import the mesh generated from 
gmsh. However, I am wondering if I could create this mesh in Deal.II 
directly, if this would simplify the process? 

This then brings me to Deal.II triangulation, the note I posted above, and 
"Exercise_2_3 
class". It looks like I could create the geometry directly in Deal.II and 
mesh in Deal.II. This would appear to be the better solution because if my 
simulation needed 2+ areas of different mesh densities, then Deal.II can 
simplify that issue by looking at the material_ID of the cell and refining 
based on this parameter. (please correct me if I am wrong but isn't there 
another parameter I would look at instead of the material_ID in the event 
the two areas have the same material?)/ However, the only issue is that I 
am not sure how the Deal.II triangulation will handle geometry such as 
this: http://www.flynnresearch.net/technology/motor_cartoon.gif. It looks 
like that right now, it can only handle the geometry if it is square 
(please correct me if I am wrong). So, there may be a need for some code 
development on deal.II end.

To me, both processes involve a number of different complexities. So, I am 
wondering, which method would have less complexities? Utilizing GMSH mesh 
source and importing the mesh into Deal.II or doing some code development 
for Deal.II and directly drawing the mesh into deal.II? I am all for 
developing Deal.II and I hope that one day, I will be able to contribute 
meaningful code. However, if I needed to get a system up and running in a 
matter of weeks, which path would be more practical?

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to