Sie sind auf Seite 1von 37

Kutztown University

Senior Thesis

Motherboard Stationary State Solution

Author: Clinton Watton

Supervisor: Dr. Anke Walz

A thesis submitted in fullment of the requirements for the degree of Bachelors of Science in the eld of Mathematics

May 2013

Declaration of Authorship
I, Clinton Watton, declare that this thesis titled, Motherboard Stationary State Solution and the work presented in it are my own. I conrm that:

This work was done wholly or mainly while in candidature for a research degree at this University. Where any part of this thesis has previously been submitted for a degree or any other qualication at this University or any other institution, this has been clearly stated. Where I have consulted the published work of others, this is always clearly attributed. Where I have quoted from the work of others, the source is always given. With the exception of such quotations, this thesis is entirely my own work. I have acknowledged all main sources of help. Where the thesis is based on work done by myself jointly with others, I have made clear exactly what was done by others and what I have contributed myself.

Signed:

Date:

We are at the very beginning of time for the human race. It is not unreasonable that we grapple with problems. But there are tens of thousands of years in the future. Our responsibility is to do what we can, learn what we can, improve the solutions, and pass them on.

Richard P. Feynman

KUTZTOWN UNIVERSITY

Abstract
Mathematics Bachelors of Science Motherboard Stationary State Solution by Clinton Watton

In all electric devices, ecient heat dissipation is of utmost importance. Diusion-type problems are described mathematically by partial dierential equations. Such equations remain analytically solvable only for the simplest of all ideal situations. As is the case with most things, reality is far more complex. In such complex instances, numerical methods are used to bruteforce a solution. A mathematical model was developed in order to determine the stationary state solution of a computers motherboard.

Acknowledgements
I would like to thank the many faculty members, advisors, colleagues, and authors who helped mold me into the student and mathematician I am today. Thank you to Dr. Sudarshan Fernando for being a friend, academic advisor, and fellow physics-enthusiast. You kept my spirit and motivation high and were an essential mentor. You were available at all hours of the day and night to answer my frantic questions. Dr. Anke Walz, brilliant professor, pseudoadvisor, and most of all, friend: you made a great impression upon me in our Foundations Class in Spring 2010, from that point onward you and I grew to be great friends. You maintained and continued to elevate your status as a role model both intellectually and personally. You have been not only a wondrous aid to my academic and intellectual development but also to my personal and emotional maturation. I know you will continue to forge and foster countless student-professor friendships. Thank you for everything you have done for me over these past four years.

iv

Contents
Declaration of Authorship Abstract Acknowledgements List of Figures List of Tables Abbreviations i iii iv vii viii ix

1 Introduction 1.1 Electronics and Heat Production . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Computers and Heat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Research Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Model Formulation 2.1 Model Outline . . . . . . . . . . . . 2.2 Preliminary Simplications . . . . . 2.3 Stationary State Solution . . . . . . 2.4 2D Model . . . . . . . . . . . . . . . 2.5 Data Collection . . . . . . . . . . . . 2.6 Discretization of Poissons Equation 2.6.1 Grid Notation . . . . . . . . .

1 1 3 3 4 5 6 7 8 9 12 13

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

3 Numerical Methods 15 3.1 Jacobis Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2 Gauss-Seidel Method and Successive Overrelaxation . . . . . . . . . . . . . . . . 17 4 Algorithm and Results 19 4.1 Source Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 5 Final Remarks 24 5.1 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 v

Contents 5.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

vi 26

List of Figures
2.1 2.2 2.3 3.1 5.1 5.2 Chassis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Motherboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Motherboard Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dierence Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Motherboard Temperature Distribution . . . . . . . . . . . . . . . . . . . . . . . CPU Temperature Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 7 11 16 24 25

vii

List of Tables
2.1 2.2 Computer Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Collected Temperature Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 11

viii

Abbreviations
GPU CPU HDD SSD HHD SOR Graphics Processing Unit Central Processing Unit Hard Disk Drive Solid State Drive Hybrid Hard Drive Successive Over Relaxation

ix

For Jennifer Boccadori and our daughter Cora. . .

Chapter 1

Introduction

In todays technological age nearly all things rely on some form of electrical circuitry. Whether it is a physical entity such as a computer itself or the digital information stored on the computer, most things rely on technology of one form or another. The largest technological infrastructure in existence is also the most accessible and most accessed one across the worlds populationthe internet. Incomprehensible amounts of data are stored in server warehouses across the globe. Everyday an accelerating amount of data is being stored on servers. Information technology and engineering push the limit of how much data can be stored in ever-decreasing physical specications. Engineers must determine ways to minimize adverse eects of the shrinking of electrical components.

1.1

Electronics and Heat Production

Electrical current is the ow of electrons through a conducting material, such as copper. In reality, current ows in the opposite direction that of the electrons. Since electrons have a negative charge, the net eect of negative charge in one direction is physically indistinguishable

Chapter 1. Introduction

of positive ow in the opposite direction. As far as mathematics is concerned, an additional sign change occurs. Regardless, it is important to have a picture of idealized positrons owing in a given direction when one thinks of charge. An idealized positron simply means a spherical, distinguishable particle whose position can be determined. These assumptions may seem obvious however, realistically in physics, positrons (or electrons) are neither spherical nor distinguishable; absolute determination of their position would also violet Heisenbergs Uncertainty Principle. Proceeding, the reader should have a picture of a bunch of bouncy balls in a trough trying to proceed forward, when considering current. Dierent materials allow charge to ow more or less easily. Materials which allow a lot of current to ow easily are called conductors, while materials who impeded charge are called insulators. Examples of insulators are wood and ceramic. When current passes through an insulator, it meets more resistance than it would if passed through a conductor. When electric current encounters resistance it produces heat, this is referred to as Joule Heating. Joule Heating occurs in accordance to either of the three equivalent representations of Ohms Law (1.1).

P = IV = I 2 R =

V2 R

(1.1)

Even when current passes through a good conductor, it still faces resistance and henceforth produces heat. Superconductivity occurs when regular conductors are cooled to extremely low temperatures and the material then begins to exhibit a state of zero electrical resistance. That is, current, when passing through a superconductor, experiences zero electric resistance. Superconductivity is a budding area of research in physics and has many applications in industry and engineering. While fascinating beyond belief, superconductivity is beyond the scope of the work of this thesis.

Chapter 1. Introduction

1.2

Computers and Heat

In the vast majority of technological applications, superconductivity is not (or cannot yet) be utilized. Therefore the heat is here to stay. It goes without saying that excess heat produced by electrical components can have serious adverse eects on infrastructure and therefore, production. Thus, in all scenarios that utilize electrical components, it is desirable to minimize the amount of heat present. Electrical components working in a hotter environment cannot run as eciently. Since much of the world depends upon the ecient and constant functioning of computer/server-based infrastructure, it is an important topic to research applications of heat dissipation in desktop/server-chassis environments.

1.3

Research Goals

Computers and servers run for extended periods time if not non-stop. For this reason, it is important to have an understanding of how heat dissipates and distributes itself within and outside the computer/server chassis. Computers maintain an average load most of their runtime; periods of high-load usage will come and go. As high-load usage begins, the system is strained, and more power is consumed. The increase in resource utilization causes Joule heating to occur throughout the computers circuits and even more heat is produced, thus producing a greater need to dissipate the excess heat quickly and eciently. The rst goal of this research is to collect experimental data from a existing desktop computer. This data will then be used to construct a mathematical model of the computer and its heat production. The secondary goal is explore numerical methods for solving partial dierential equations. This project will be severely limited due to the complex nature of physical problem. Both physical and mathematical approximations will be discussed and implemented.

Chapter 2

Model Formulation

Models are invaluable to scientists, engineers, climatologists, applied mathematicians, economists, and a plethora of other elds. Models mimic the behavior of reality, or at least they are supposed to. It is never possible to create a complete model, which is able to take into account all variables that aect a certain phenomenon. For this reason, multiple models for a given phenomenon can be equally valid, or one model may be stronger (more applicable) than another. What determines the success or short-comings of a mathematical model, is how well it agrees with observation. Models usually have a limited scope of their applicability. Models which are widely applicable are the most successful. Modeling is a useful tool to investigating and learning the dynamics of a system which may be too complex or even impossible to study hands-on, such as population demographics or the eye of a hurricane. Models are usually modied over and over again; slowly rening and ne-tuning their pitfalls and applicability. After sucient testing and renement, a working mathematical model emerges.

Chapter 2. Model Formulation

2.1

Model Outline

As with any rst attempt at a model some crude approximations and simplications must be made. In this model a specic computer construct will be modeled. The reason a specic computer is being modeled is because that particular computer is accessible for measurements, data collection, and testing. The hardware of the computer is listed in detail in Table 2.1. Component Motherboard CPU GPU1 GPU2 Data Storage 1 Data Storage 2 Data Storage 3 Optical Drive Memory Cooling System Power Supply Fan1 Fan2 Fan3 Name ASUS Sabertooth 990FX AMD FX-8120 Zambezi 3.1GHz 8-Core Nvidia GeForce GTX 550 Ti Fermi Nvidia GeForce GTX 550 Ti Fermi 1TB 5200RPM HDD 500GB 5200RPM HHD 128GB SSD 3D Blu-ray Player and 12x Burner 32GB PC3 41900 GDDR5 G.SKILL Ripjaws Antec Kuhler H20 620 Liquid Cooling Corsair HX650 650Watt 80 PLUS Gold 140mm Fan 120mm Fan 120mm 3000RPM Fan
Table 2.1: Computer Hardware

From this physical setup a model will follow. Once the model is crudely developed, its dynamics will be t to that of the specic computer. Data collection will be carried out in a few ways. Measurements using rulers (to collect length measurements of computer hardware), using an infrared thermometer (to determine the temperature distribution within and around the chassis), and computer software (which will determine the CPU / GPU load, and provide additional temperature measurements).

Chapter 2. Model Formulation

2.2

Preliminary Simplications

In this particular computer (and almost all other computers) the components which produce the most heat are the GPUs and the CPU. The gure below is a 3D model of the computer chassis constructed in Asymptote.

Figure 2.1: Chassis

Within the computer, the two GPUs stick out perpendicularly from the motherboard. The units themselves produce heat but the heat produced is not on the surface of the motherboard. It is produced on the top and bottom surfaces perpendicular to the motherboard plane. Two exhaust fans blow the generated heat away from the motherboard. A gure follows of the actual motherboard. To obtain a quantitative mathematical 3D model of heat ow within such a computer would require many things. Knowing the existing boundary conditions and heat sources is not nearly enough. In addition to the location and magnitude of internal heat sources, the precise composition of the computers constituent components would also need to be known. The components which make up the computer are inhomogeneousthat is, they are made up of dierent materials which have dierent thermal properties. The idea numerical model would be one that can provide the temperature at any point (x, y, z ) within the domain of the case. This would require taking into account the eects of convection currents, which would make

Chapter 2. Model Formulation

this problem not only heat ow but uid dynamics (air is a uid). This suddenly causes the problem to become fundamentally more complex. For this reason the project shifts towards the establishment of a 2D model.

Figure 2.2: Motherboard

When considering a 2D model, it is not necessary to model the eects of convection currents, thus the uid dynamics nature of the problem is dropped. As it stands, the problem is 2D heat ow. The component which produces the most amount of heat, hotter than anything (when idle) is the CPU. When rendering 3D the GPUs can achieve hotter temperatures than most CPUs, however, this is not a stationary state solution.

2.3

Stationary State Solution

The stationary state solution occurs when the computers load is not changing with time, it is let to rest and idle for sucient amount of time, such that the temperature no long varies with time. Imagine a computer that has been turned o for a few hours, in a room with constant temperature. Turning the computer on causes a chain reaction of dierent circuits

Chapter 2. Model Formulation

working together to start the computer up. Once the computer has turned on and loaded the desktop environment (if one exists) the computer is ready for input. The process of turning causes electrical current to ow throughout the internal circuitry of the computer, this in turn produces heat. At a constant load, in this case idle, the components are bearing the same amount of load and therefore producing the same amount of heat. If nothing changes in the status of the computers load, the temperature distribution within the computer represents the stationary state solution of the temperature distribution within some region of the computer. Mathematically, this is the limit as time, t goes to innity, and the systems dynamics no longer vary with time.

2.4

2D Model

In a desktop computer the most heat sensitive components reside on the motherboard, the nervous system of the computer. The two components which produce the most heat, as stated previously, are the CPU and GPU. The model on which this model is based, has two GPUs. These GPUs produce a lot of heat when used for rendering 3D images or video, not when idle. The heat produced from these cards is blown away from the motherboard using built-in to the GPUs themselves. For this reason the GPUs can be removed from the model altogether. This truly simplies the model in that all the model consists of, as of now, is a motherboard and a CPU. Stated slightly dierently, it is a boundary value problem with a heat source (the CPU) within the region. Mathematically, this is the diusion equation with an internal heat source. Let be the region of the motherboard with boundary S then u(x, y ) is the temperature, and f (x, y ) be the magnitude of temperature (heat) sources within . Then within the region , it is the case that

Chapter 2. Model Formulation

2 u(x, y ) = f (x, y )

(2.1)

And on the boundary S it is the case that

w = w(x, y )

(2.2)

w species the temperature along the boundary. This is Poissons Equation with Dirichlet boundary conditions. In reality, the boundary of is not held at constant temperature, rather there is some temperature ux which can be determined. However, since this is a stationary state solution, it is physically indistinguishable from the case of constant boundary temperature or Dirichlet boundary conditions. This simplies things further mathematically. w is the Dirichlet boundary temperature for all points in S .

2.5

Data Collection

A numerical model will be created and then collected data, temperature data, will be used to t the model to the specic computer. The data that will be collected will be the temperature along the boundary of the motherboard, values for w and the temperature of the CPU itself, values for f . These values will be collected in two ways.

1. Rosewill Infrared Thermometer 2. Thermal Radar (Motherboard Temperature Sensors)

The Rosewill infrared thermometer is a high precision thermometer which is invaluable in its aid to the project. Because the thermometer is infrared it need not make contact with the

Chapter 2. Model Formulation

10

actual surface. This is important because many of the areas examined are crowded by wires or are sensitive and should not be touched when powered down, let alone while switched on. This provides a way to circumnavigate the pitfall of determining the temperature. It can be done so accurately. The infrared thermometer utilizes infrared radiation to determine the temperature of an object. All objects (above absolute zero) contain moving particles. As these particles move about they emit infrared radiation. As an object gets hotter, the particles within itself move about faster, and emit even more infrared radiation. Substances can even emit visible light if hot enough. An infrared thermometer works by collecting the infrared radiation emitted by a surface. This infrared radiation is focused onto a detector called a thermopile. The thermopile absorbs the radiation and converts it into heat. The heat in turn is converted into electricity and sent to another detector which can then be used to determine the temperature of the object. The thermal radar is a built in program which interfaces with the native temperature sensors on the motherboard to provide the real time temperature at specic locations. The downside to these sensors are they cannot be moved or repositioned. These are predetermined permanent sensors in key locations on the motherboard. The upside is these sensors can be accessed and viewed at any point while the computer is on, without taking the computers side panel o. The infrared thermometer is useful in that it can be used to determine the temperature anywhere The entire scope of this problem lies within the motherboard. Table 2.2 lists the collected temperature data and the Cartesian region to where it applies. Using this data along with a program to model the temperature diusion within the motherboard, a mathematical model can be constructed.

Chapter 2. Model Formulation

11

(0,250)

(180,250)

(85,205)

(134,205)

CPU

(85,160)

(134,160)

(0,0)

(180,0)

Figure 2.3: Motherboard Diagram

Temperature (C) 28 38 33 34 28 32 38 28 34 52

x-region (mm) 0 x 180 0 x < 85 85 x < 134 134 x 180 x=0 x=0 x=0 x = 180 x = 180 85 x 134

y -region (mm) y=0 y = 250 y = 250 y = 250 0 y < 104 104 y < 160 160 y 250 0 y < 48 48 y 250 160 y 205

Table 2.2: Collected Temperature Data

Chapter 2. Model Formulation

12

2.6

Discretization of Poissons Equation

The rst step in constructing a numerical model of the temperature diusion is the discretization of (2.1) into discrete dierence equations. Recall the dierence quotient for a function f (x).

f (x + x) f (x) x

This is a discrete (non-continuous) method for approximating the derivative of the function f (x). It is known, from experience, that this only yields the true derivative for a small subset of all possible real-valued functions. However, it does serve as an approximation. Approximations converge to the true derivative, recall the denition of the derivative via the dierence quotient,

f (x) = lim

x 0

f (x + x) f (x) x

If instead of taking the limit as x 0 and leave it as a small yet nite dierence, what yields is the nite dierence approximation of f (x)

f (x)

f (x + x) f (x) x

This is known as the nite forward dierence formula for f (x); similarly, the backward dierence formula,

f (x)

f (x) f (x x) x

The dierence taken between these two yields the centered dierence formula,

Chapter 2. Model Formulation

13

f (x)

f (x + x) f (x x) 2x

Using the aforementioned procedure, one can derive the formula for the centered dierence formula for the second derivative,

f (x)

f (x x) 2f (xx) + f (x + x) (x)2

For small enough choice of x the approximations converge to the exact derivative.

2.6.1

Grid Notation

Since these equations will be substituted into (2.1) and then eventually used in a iterative algorithm to determine the solution, it is useful to introduce a notation called Grid Notation. Consider the xy -plane divided up into a grid or mesh. The spacings in the x direction can be of same or dierence size than the y spacings. A grid or mesh is a set of points

(xm , yn ) = (x0 + nhx , y0 + mhy )

Where m, n are integers and (x0 , y0 ) is some initial point (like the origin). The two numbers hx , hy are grid spacings, or step sizes in x- and y -directions, respectively. The value of f (x, y ) at the point (xm , yn ) is denoted by fmn = f (xm , yn ). Now recall (2.1), the discretization via centered dierences:

Chapter 2. Model Formulation

14

2 u(x, y ) = f (x, y ) 2u 2u + 2 x2 y = f (x, y )

u(x hx , y ) 2u(x, y ) + u(x + hx , y ) u(x, y hy ) 2u(x, y ) + u(x, y + hy ) f (x, y ) + = 2 h2 h x y um1,n 2um,n + um+1,n um,n1 2um,n + um,n+1 fm,n + = 2 2 hx hy

is the temperature diusivity constant. Since f (x, y ) is only non-zero in the region of the CPU, it is the case that is a property of the CPU material, thus it is assumed that the material of the CPU alone is homogeneous and therefore is constant and non-zero within the region of the CPU. Therefore can be absorbed into fm,n . Next, dene q = for convenience. Then,
hx hy 2

, and Fm,n = h2 x fm,n ,

Fm,n = um1,n 2um,n + um+1,n + qum,n1 2qum,n + qum,n+1 um,n = um1,n + um+1,n + qum,n1 + qum,n+1 + Fm,n 2 + 2q

Therefore the discrete equivalent of Equation (2.1) is

um,n =

um1,n + um+1,n + qum,n1 + qum,n+1 + Fm,n 2 + 2q

(2.3)

Chapter 3

Numerical Methods

3.1

Jacobis Method

Consider a boundary value problem with Dirichlet boundary conditions. Take the xy -plane, in which this problem is conned, and partition the plane into a series of grid or mesh points. For the purpose of illustrating the technique well assume the problem is bounded in the unit square. In the case of the unit square the spacings in the x- and y -directions will be the same; however in general hx does not need to be the same as hy . They can, in fact, be position and even time dependent if we so desired. Let hx = hy = 4. Figure 3.1 gives a pictorial representation. The boundary of the unit square represents the boundary of the problem. Notice how along the x-axis m increments, and along the y -axis n increments. The initial point, recall, is (x0 , y0 ) = (0, 0), so to get to any other point, simply use (xm , yn ) = (mhx , nhy ). This example problem is actually solving Laplaces equation:

2 u(x, y ) = 0

(3.1)

15

Chapter 3. Numerical Methods


1 m=1 m=2 m=3

16

y=

3 4

n=3

y=

2 4

n=2

y=

1 4

n=1

x=

1 4

x=

2 4

x=

3 4

Boundary Point Interior Point

Figure 3.1: Dierence Grid

Which, physically, is the same as Poissons equation except there is no heat source in the region itself; the heat is only specied on the boundary. In the above gure, each of the boundary points is specied a value. The discrete Laplaces Equation is very similar to Equation (2.3), but with no source term Fm,n , thus

um,n =

um1,n + um+1,n + um,n1 + um,n+1 4

At rst it might not say much, but what this above equation is really saying, is that the value of u at (m, n) is simply the weight average of its four neighbors. Thats all Laplaces and Poissons equations are when considered for nite discrete changes. It essentially looks at the concentration of some quantity u at some arbitrary point and it diuses itself outward in such a way that its value is proportional to all of its neighbors values of u. It really is a smoothing function for some quantity u. Using this insight an iterative method can be developed. The

Chapter 3. Numerical Methods

17

value of u is specied and constant on the boundary thus, it is only necessary to iterate through the interior points. At each point take the weighted average of its four neighbors and set value to u at that point, repeat at the next grid point. Repeat this process until all interior points have been iterated through. Continue to sweep through all of the interior points until the change between any two successive sweeps is negligible. Since the value being set to each um,n is a type of weighted average, a good initial guess for all interior points is the average of all boundary points. One does not need to provide an initial guess, but if provided it will reduce the number of iterations until convergence; thus it is in ones best interest to quickly average the value of u along the boundary and set that value to the value of all um,n within the interior. Each sweep is iterated through incrementing i. Thus the initial guess of the average of the boundary condition
i is dened as u0 m,n , and any successive iteration as um,n .

3.2

Gauss-Seidel Method and Successive Overrelaxation

This is an altered Jacobis method algorithm. In Jacobis method, as the sweep iterates through all of the interior points, updating the values of the interior um,n , the algorithm does not make use of newly updated um,n data as soon as it is available, it waits until the next sweep. The Gauss-Seidel Method diers in this respect, it uses the newly update information as soon as its available. Thus if two identical problems are posed, and one is solved using Jacobis and the other using Gauss-Seidel, the latter should, theoretically, converge faster than the former. Yet another technique of speeding up the convergence, is a technique called successive overrelaxation (SOR). To implement SOR, an additional quantity is dened which is related to ever-updating
+1 i um,n , this is called the Gauss-Seidel update, or u m,n . Then from the values of u i m,n and um,n the +1 direction of convergence can be estimated; the estimation of ui m,n as an extrapolation through +1 i u i m,n and um,n . This extrapolation is accomplished via , the relaxation parameter. In numerical

Chapter 3. Numerical Methods

18

approximation theory it has been shown that in order for ecient and sucient convergence, it is necessary to make the restriction that 0 < < 2 when SOR is applied to many dierence equations. The theory also shows that for certain combinations of boundary conditions and dierences equations there is an analytical way to determine the optimum value for . This value was determined numerically. Once the Gauss-Seidel SOR algorithm was successfully written in C++ and suciently tested, it was slightly altered to alter the value of . The new programmed repeated the same routine but varied from 0 to 2 with step size 0.001. For each step the number of iterations required for convergence was recorded. The value of which minimized this quantity was then chosen for the set relaxation parameter for the rest of the simulation. This value was determined to be = 1.528.

Chapter 4

Algorithm and Results

4.1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 */ /*

Source Code

Author : Clinton Watton Title : T e m p e r a t u r e Source D i s t r i b u t i o n

# include < iostream > # include < fstream > # include < string > # include < cmath > using namespace std ;

int main () {

// D e c l a r a t i o n of V a r i a b l e s and P a r a m e t e r s int m ,n ,i , mmax , nmax , itmax ; double a ,b , hx , hy ,q , sum , ave , uold , rmax , res , tol , omega , tc , h ; static double u [1000][1389] , f [1000][1389] , alpha [1000][1000] , F [1000][1389]; static double byxmin [1000] , byxmax [1000] , bxymin [1389] , bxymax [1389];

19

Chapter 4. Algorithm and Results


20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 } } } else { byxmax [ m ] = 34; } else if ((85 <= hx * m ) && ( hx * m < 134) ) { byxmax [ m ] = 33; for ( m = 0; m < mmax + 1; m ++) { // D e f i n i t i o n of xmax b o u n d a r y c o n d i t i o n s } // I n i t i a l i z e Initial Guess of u [ m ][ n ] for ( m = 0; m < mmax + 1; m ++) { byxmin [ m ] = 28; // D e f i n i t i o n of xmin b o u n d a r y c o n d i t i o n s // Create and Open output . dat file ofstream myfile ; myfile . open ( " output . dat " ) ; hx = a /( mmax + 1) ; hy = b /( nmax + 1) ; // Define x gird spacing // Define y grid spacing

20

mmax = 1000; nmax = 1389; itmax = 500; a = 180; b = 250;

// Number of x i n t e r i o r grid points // Number of y i n t e r i o r grid points // Maximum number of i t e r a t i o n s allowed

// x d i m e n s i o n ( mm ) // y d i m e n s i o n ( mm ) // R e l a x a t i o n p a r a m e t e r

omega = 1.528;

tol = 0.01; // T o l e r a n c e for maximum of | Rmn ^ i | tc = 50; h = 0.1; // CPU core temp // T e m p e r a t u r e d i f f u s i v i t y

q = pow (( hx / hy ) ,2) ; // Useful q u a n t i t y sum = 0; // Used to d e t e r m i n e sum of b o u n d a r y t e m p e r a t u r e s

if ((0 <= hx * m ) && ( hx * m < 85) ) { byxmax [ m ] = 38;

Chapter 4. Algorithm and Results


56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 cout << ave << endl ; // Print average ave = sum /((2* mmax + 2* nmax ) ) ; // A v e r a g e s of x and y b o u n d a r i e s c o m b i n e d } } for ( n = 1; n < nmax + 1; n ++) { u [0][ n ] = bxymin [ n ]; u [ mmax + 1][ n ] = bxymax [ n ]; sum = sum + u [0][ n ] + u [ mmax + 1][ n ]; // Average y b o u n d a r y t e m p e r a t u r e } // D e t e r m i n e average b o u n d a r y t e m p e r a t u r e for ( m = 1; m < mmax + 1; m ++) { u [ m ][0] = byxmin [ m ]; u [ m ][ nmax + 1] = byxmax [ m ]; sum = sum + u [ m ][0] + u [ m ][ nmax + 1]; // Average x b o u n d a r y t e m p e r a t u r e } } else { bxymax [ n ] = 34; for ( n = 0; n < nmax + 1; n ++) { // D e f i n i t i o n of ymax b o u n d a r y c o n d i t i o n s } } } else { bxymin [ n ] = 38; } else if ((104 <= hy * n ) && ( hy * n < 160) ) { bxymin [ n ] = 32;

21

for ( n = 0; n < nmax + 1; n ++) {

// D e f i n i t i o n of ymin b o u n d a r y c o n d i t i o n s

if ((0 <= hy * n ) && ( hy * n < 104) ) { bxymin [ n ] = 28;

if ((0 <= hy * n ) && ( hy * n < 48) ) { bxymax [ n ] = 28;

Chapter 4. Algorithm and Results


92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 ); 113 114 115 116 117 118 119 } rmax = 0; for ( n = 1; n < nmax + 1; n ++) { for ( m = 1; m < mmax + 1; m ++) { } u [ m ][ n ] = omega * u [ m ][ n ] + (1 - omega ) * uold ; // Gauss - Seidel - SOR S u b r o u t i n e for ( i = 1; i < itmax + 1; i ++) { for ( n = 1; n < nmax + 1; n ++) { for ( m = 1; m < mmax + 1; m ++) { uold = u [ m ][ n ]; } } for ( n = 1; n < nmax + 1; n ++) { for ( m = 1; m < mmax + 1; m ++) { u [ m ][ n ] = ave ; F [ m ][ n ] = h * pow ( hx ,2) * f [ m ][ n ]; } } }

22

for ( n = 1; n < nmax + 1; n ++) { // I n i t i a l i z a t i o n of t e m p e r a t u r e sources for ( m = 1; m < mmax + 1; m ++) { if ((85 <= hx * m ) && ( hx * m <= 134) && (160 <= hy * n ) && ( hy * n <= 205) ) { f [ m ][ n ] = tc ;

u [ m ][ n ] = ( u [m -1][ n ] + q * u [ m ][ n -1] + u [ m +1][ n ] + q * u [ m ][ n +1] + F [ m ][ n ]) /(2 + 2* q

res = F [ m ][ n ] + ( u [m -1][ n ] + u [ m +1][ n ] - (2 + 2* q ) * u [ m ][ n ] + q * u [ m ][ n -1] + q * u [ m ][ n +1]) /( pow ( hx ,2) ) ;

120 121 122 123 124 125 } }

if ( abs ( res ) > rmax ) { rmax = abs ( res ) ;

if ( rmax < tol ) { // Break for if maximum r e s i d u a l is less than desired t o l e r a n c e

Chapter 4. Algorithm and Results


126 127 128 129 130 131 132 133 134 135 136 137 } } return 0; } myfile << endl ; } for ( n = 0; n < nmax + 2; n ++) { for ( m = 0; m < mmax + 2; m ++) { myfile << hy * n << " " << hx * m << " " << u [ m ][ n ] << endl ; // Print (x ,y , t ) data to file } cout << i << endl ; // Print number of i t e r a t i o n s p e r f o r m e d

23

break ;

Chapter 5

Final Remarks

5.1

Results

The numerical simulation yielded solid results which agree with observation. Figure 5.1 shows the motherboard as a whole and is color coded with its associated temperature at each point. The simulation indeed averaged and smoothed out the boundary temperatures and heat sources.
Temperature Distribution of Motherboard 300 250 200 150 100 50 0 -50 -50 60 55 50 45 40 35 30 25 Temperature (C)

y (mm)

50

100

150

200

x (mm)

Figure 5.1: Motherboard Temperature Distribution

24

Chapter 5. Final Remarks

25

The combination of boundary conditions and heat sources inuenced their neighbors temperature. A closer look in Figure 5.2 reveals just how the smoothing takes place.
Temperature Distribution of CPU 220 210 50 200 190 180 170 35 160 150 30 45 Temperature (C) 55

y (mm)

40

80

90

100

110 x (mm)

120

130

140

Figure 5.2: CPU Temperature Distribution

Looking at the above gure, the transition from the Tc = 55C to the dark-purple color representing an average temperature of roughly 32C, occurs within a range of about 10mm or 1cm. This is a short distance, and a the dierence in temperature is about 23C. Referring back to Figure , there is about a 2cm gap between the CPU and any other component. This fact was not built into the model. But the heat ow model shows how the temperature change is most drastic in this area. Components can not be in this region for they would experience too large of a temperature gradient and many could break. It is strength of the model that it explains why there is a gap of components on the motherboard in this region.

Chapter 5. Final Remarks

26

5.2

Conclusion

This has been both a qualitative and quantitative investigation into the realm of partial dierential equations. Multiple methods and treatments were examined, compared, and contrasted. Yet, trial and error prevailed. The realm of partial dierential equations relies on very structured numerical methods. The multivariate nature of partial dierential equations necessitates careful and precise coding and treatment of all their constituents. Personally, I was saddened to have needed to alter my project somewhat from its initial formulation. A 3D heat model would, still, be an amazing feat. However, the unfathomable amount of hidden variables, and complex interactions between uid and solid dynamics would certainly cause an insurmountable barrier for not only myself but also the technology involved in solving such a complex problem. Future work includes taking into account more heat sources on motherboard, such as the GPUs, SATA connectors, and RAM modules. The inhomogeneous nature of the motherboard would be an interesting problem to tackle. As it stands, I feel very condent in my work and I am thankful to have had the opportunity. If anything, I learned a lot about a topic I have had little to no experience in. I nd the numerical methods fascinating. It is so creative how dierent schemes can be developed to decrease the convergence time. I feel this is an ever-growing eld within mathematics and hope to nd myself in a similar eld someday.