On Solvers: Benefits and Limits of Solution Methods
Wolfgang Joppich April 24, 2013
This week we have the honor of having Professor Wolfgang Joppich as a guest blogger. As you may know, COMSOL Multiphysics provides great default solvers for all applications. For the interested user, it is good to know that you can optionally tune or completely change the solver settings. We strongly recommend that you read this blog posting to get an experts’ perspective on the solver technologies offered by COMSOL.
I am an avid reader of the COMSOL Blog and an expert on the topic of solvers and multigrid methods. Therefore, when I read the “On Solvers” blog posts on multigrid methods and the v-cycle multigrid a while back, I felt compelled to respond. While I strongly agree with what is mentioned in the posts, the topic must be explored further.
Simulation and Solving Linear Systems of Equations are Coupled Processes
The basic intention behind the two previous blog contributions completely meets my personal opinion that simulation and solving linear systems of equations are strongly coupled processes. It is a waste of effort to destroy success in modeling by specifying bad parameters (includes the solver and its specification) for the solution process. The proper choice of parameters is a key task for a successful simulation. By “parameter” in this context, I mean the components of multigrid methods, fill-in reducing techniques, multithreading, and so on. If the simulation engineer does not know about the algorithmic essentials (the depth of knowledge of which can be discussed) then there is a danger of wasting resources.
Need to Explore Solution Method Limitations
The contributions of Valerio Marra are valuable steps in the right direction: provide solver knowledge to users of simulation software. But from my point of view it is not sufficient just to explain the method, it is a must to show how it works in practice and when or why it fails — looking for advantages, but also detecting the limits.
This is exactly what I have discussed for some time with colleagues from COMSOL in Germany. As an outcome of this discussion there will be a course on COMSOL solver techniques in Berlin on May 16th, where the mentioned ideas will be addressed. We will show how to work with parameters for the different solver steps and how these parameters influence the solution process. Examples will demonstrate the benefit and the limit of solution methods with respect to convergence speed, time requirements, and memory consumption.
Being a “missionary in multigrid methods” (my toolkit contains many articles, some books, and an annual MG course) since many years, I enjoy using COMSOL Multiphysics because this software offers a good variety of solvers, including a well-performing multigrid implementation (see W. Joppich, Mehrgitterimplementierung in einem kommerziellen FEM-Paket – Was bleibt von der MG Theorie, in B. Peischl, Ausgewählte Beiträge zur Anwenderkonferenz für Softwarequalität und Test 2011, Österreichische Computer Gesellschaft 2012).
A remake of this article concerning Version 4.3b will be submitted to the COMSOL Conference 2013 Rotterdam.
Setting Up the Problem More Expensive than Solving
By the way, preparing the above mentioned course material and the article, a problem with 35,137,537 DOFs has been solved with a relative tolerance of 10-10 on a PC (i7 980X, 24 GByte) using 10 MG V(2,1)-cycles on a total of nine levels. The time per cycle is 7.5 seconds, the total time for solving is, based on the log file, 465 seconds. This shows that setting up the problem is much more expensive than solving it. The average empirical convergence rate per cycle is 0.05 — an excellent value, better than theory predicts — no chance for any other solver. Nevertheless, you should keep your feet on the floor; being a multigrid expert I easily constructed model problems where MG failed and other solvers are much better.
About the Guest Author
Wolfgang Joppich is an expert in multigrid methods. After he received his PhD in applied mathematics from the University of Bonn, he joined the Fraunhofer Institute for Algorithms and Scientific Computing (SCAI) where he developed parallel algorithms for coupled problems. Since 2004 he is professor for Computer Science for Engineering, especially modeling and simulation of mechatronics systems, at the Bonn-Rhein-Sieg University of Applied Sciences in Sankt Augustin.