Sometimes I have to put text on a path

Thursday, October 8, 2009

Mesh Generation using Matlab ; mesh generator, 2D and 3D;

Mesh Generation using Matlab

These days most of the research in the field of fluids, structures, porous media, brain computer interfacing you name it, uses numerical simulations. Reason: It is much cheaper and many times faster compared to experiments. Mesh Generation forms an integral part of numerical analysis/simulation.

Although, there are plenty of commercial softwares based on Finite Element Methods and Finite Volume Methods like COMSOL, FLEUNT, ANSYS, NUMECA and many more with exceptional Mesh/Grid Generation features (amira).

But many times its difficult to use the meshes generated by these softwares which suits to your particular simulation need.

Reason: Many of the exsiting software don't have this feature where you can create a mesh and use it some which have such features requires you to do some complicated modifications in your code to import these meshes. There are although loads of mesh generator available some of which open source and free to download.

But, then again problem comes does these free source code suits your purpose. I encountred this problem over the last couple of months.

I am doing research in the field of Petroleum Reservoir Simulation and I need to test a lot of numerical examples on different sorts of meshes/grids in 2 and 3D. I do most of my simulation work in MATLAB, some people might argue that MATLAB is slow and all sorts of reason about other programming languages are faster like C++ and Fortran. I don't deny that fact but on the other hand the library of existing function which matlab has is amazing and its Array handling feature and sparse code it amazing too. The only and important reason I use MATLAB is its capability to handle array operations.

{In my simulation code I have to solve at times 9 simulatneous equations in 2D and 27 equations in 3D, which maximizes use of array operations. I also frequently use MAPLE to do my algebra and other good thing about MATLAB is that I can directly import the MAPLE algebra in Array Format into MATLAB which suits my purpose}

Now comming to the meshes in MATLAB, try doing a google on 'meshes in MATLAB' or 'grid generation in 2 and 3D in MATLAB', a invested a lot of time to find some unseful source code in matlab searching on google groups etc the only useful package I found was by Per-Olof Persson titled 'DistMesh - A Simple Mesh Generator in MATLAB'.



No doubt its an amazing piece of work but again it didnt realy suits my purpose. The reason being I needed unstructured meshes of different element types in 3D like prisms, hex, tetra and pyramids. In 2D also I needed meshes which are boundary aligned to control volume and are matching to the underlying medium.

So, What next ? I started from scratch and now I have come up with stand alone code in MATLAB which has functionality to create different kind of meshes in 2D and 3D. These are structured and Unstructured meshes, perturbed and bondary aligned too. If any one is in need of such meshes in 2 and 3D please have a look at:

Then you can drop me an email and I will get back to you and will help you and if required will also provide you with the source code if it suits your purpose.

Posted by C2EC- Swansea

Have you seen this MATLAB mesh generator:

No comments:

Post a Comment