Back to Basics - Q&A on meshes
The word "mesh" seems to pop up all over the place. What exactly is a mesh? How about an adaptive mesh? Who uses them, and for what? This week, iSGTW interviewed Mark Shephard to learn more about meshes. Mark Shephard is the director of the Scientific Computation Research Center (SCOREC) at Rensselaer Polytechnic Institute. His primary area of interest is the development of techniques to reliably automate multiscale simulations..
iSGTW: So, what is a mesh? When do you use these?
Shephard: In the context of modeling physical behavior over complex geometric domains that can be modeled by partial differential equations (PDEs), meshes are used to support the application of methods that can provide approximate but accurate solutions to the equations. Such methods are needed because it is typically not possible to solve the equations exactly.
iSGTW: What fields of science tend to use meshes?
Shephard: Pretty much everything, since partial differential equations (PDEs) have been found to effectively model many physical behaviors. Some common examples are climate modeling, blood flow in the circulatory system, electromagnetic fields in linear accelerators…
iSGTW: How does a basic mesh work to help us solve a complex system of PDEs?
Shephard: First, the domain will be broken into a mesh of pieces of simple shapes, such as tri-, tetrahedra, hexahedra, etc. Then we are able to approximate, through discretization process, the equations using typically polynomial functions over those pieces. The process of solving the whole thing is then stitching the equations on the mesh pieces together in an appropriate manner and solving what is a large system of algebraic equations.
iSGTW: What are the challenges that we face in constructing a mesh?
Shephard: You have to construct the mesh so that you represent the domain and the behavior of interest well, and that's not easy to do automatically. You have to make sure that the meshes are fine where the physical parameters being modeled have large variations, and can be coarse where things are not varying much. The reason you want to not have it fine everywhere is that the more mesh you have, the more computationally intensive it will be.
iSGTW: And this is where adaptive meshes come into the picture. What exactly is an adaptive mesh?
Shephard: An adaptive mesh is one that is created through a process in which the results determined on an initial, or previous mesh, are used to determine where and how to improve the mesh to efficiently provide accurate solutions.
iSGTW: If adapting the mesh for the geometric domain requires doing the calculations over and over again until you have an ideal fit, don't those extra calculations take up compute cycles? Does that cancel out the benefit of finishing with a super-efficient mesh?
Shephard: The reality is that on many of the problems we are doing, with the best types of adaptive techniques we have, the number of elements that will give us the desired effect is two orders of magnitude smaller using an adaptive mesh as opposed to a fine uniform mesh of the necessary size for that given time. Thus one can see that there are substantial gains to be made even if you need to do some extra solution steps.
iSGTW: So the difference in compute time could be far more than two orders of magnitude. Speaking of compute time, do adaptive meshes run well on grids, clouds, clusters, or supercomputers - or all of the above?
Shephard: Clusters are the realistic minimum because of the high level of interporcessor communications required by these processes. For really large problems massively parallel super computers are the most effective.
iSGTW: What do you see in the future for this field of study?
Shephard: In the future we will continue to solve more complex problems on even larger meshes using ever larger massively parallel computers. In addition, we expect to continue to improve the levels of automation and reliability of our methods to the point that the users of these techniques can trust the software to make and adapt meshes of the quality needed without the need for them to interact with, or even see, a mesh.
-Miriam Boon, iSGTW