Announcements:
As mentioned in the previous class, you will be using the UCES paradigm for working on your project. In today's class, we will focus on the first two phases of this paradigm, the problem statement, and the modeling phase. We will use a simple example to show how the five phases can be used in problem solving-today's class will introduce this problem, and begin the modeling process.
The example problem we will look at is a two-dimensional steady heat flow problem.
Problem Statement: A square metal plate with sides measuring 2 meters is placed in an environment such that two of its adjacent sides are maintained at 100 degrees Celcius, while the other two are maintained at 0 degrees Celcius (see Figure 3.2). Given that all parts of the plate were at 0 degrees at time 0, we are interested in determining the steady state distribution of temperature in the plate.
Notice that the problem is stated in simple terms that make it possible for most scientists and engineers to understand it. Admittedly, this is a simple enough problem that makes it easy to state it in simple terms. However, it is possible to do so for most problems, perhaps with more effort. Your problem statement should therefore start off with a ``cocktail party description'' of the problem-the way you would describe your work to a layperson at a cocktail party. From there on, you can add more detail, and explain why the problem you have chosen is a tough one. The problem described above can require considerable computation if the final steady state temperature is desired at a high resolution. In addition, we will see that this problem can be solved in a naturally parallel way, and so the problem benefits by the use of a parallel machine.
The next phase of the problem solving process is the modeling
phase, where we model the problem in such a way as to make a solution
possible, and we decide on the appropriate parallel computing model for
the problem.
Model Phase: The temperature (T) distribution in the heat
flow problem described above is governed by an elliptic partial
differential equation called Laplace's equation:
Solving this equation analytically is hard, so we will try and solve it numerically. To enable us to come up with a numerical solution, we need to make some simplifying assumptions, and also choose a model that allows us to solve the problem. Notice that we have already made a simplifying assumption-we have assumed that the metal plate is two-dimensional, as opposed to the three-dimensional object that it will be in real life. Once we have solved the 2-D problem, we can revisit the problem and solve the 3-D version.
Notice that the problem is specified as a continuous problem, and we are asked to come up with the continuous distribution of temperature. For a numerical solution to be possible, we will have to work with a discrete version of the problem. To do this, we will have to divide the plate into a grid (at the desired level of resolution), and say that we will solve for the temperature at those grid points only. Choosing the grid points too far apart will result in minimal computational requirements, but the solution might be too far from reality to be useful. On the other hand, as the distance between grid points approaches zero, we approach the exact continuous solution but the computational requirements become prohibitive. We will therefore choose a few grid spacings, and then look at the quality of results that we have achieved during the Assessment phase.
The numerical technique we will use to solve this problem is called the ``finite-difference approximation'' technique to solve partial differential equations. Details of this approach can be found in a number of texts that deal with the solution of partial differential equations. Once this approximation is applied, the original PDE (Equation 3.1) can be reduced to the following difference equation:
We now need to discuss what sort of parallel computing model will be best suited to solve this finite difference problem. Before we make that decision though, we need to know about the various models of parallel computers. We therefore make a digression to study this area in some detail.