Hello all,
after going dark for sometime, I ma slowly coming back to dealii! I have made quite a bit of progress with this simulator that I am creating. The UI is now fully fleshed out. There was this crazy dev cycle where it took a long time (that and I was learning a new C++ library)
I am currently working on a method to save my data structures and using the boost::serialization class.
But that is besides the point.
I am gearing up to create an algorithm to take an arbitrary geometry and create a mesh from it. I am only sticking to 2D! But since this is going to be used by other users, I can guarantee what the geometry is going to look like. All that I know for sure is that the geometry will be strictly 2D. In this geometry, there will be sections that are marked for the mesh resolution. I am currently considering 2 different options. The first would be to simply utilize the code that is available through gmsh and customize this code with what I have for my own data structures. the other option is to use dealii internal functions for creating a mesh. However, going through the FAQ, it is saying that the geometry needs to be simple. More complex geometry would require a mesh generator. Using the internal mesh generation would simplify some aspects of the programming.
My question(s) is this:
1) Based on this post, do you think that I should attempt to use dealli internal mesh generation or would it be better to utilize gmsh source code and intergrate it into my code? (As a side note, I am not sure yet if the program is better off using structured or unstructured quads or both! More details later. But, if there is a perfered option when dealing with FEA, please let me know.)
2) In the FAQ when talking about creating the grid manually using the Triangulation::create_triagulation. I am wondering what it means for the geometry to be simple? Is the simple geometry mainly for 3D? Are all 2D geomtries simple? Is there every a case when 2D geometry can be complex?