Ch6-4

advertisement
Chapter 6
Boundary-Value Problems
6.4 The Alternating Direction Implicit (ADI) Method
When the partial differential equation 2u = 0 is solved by the finite difference method, the
resulting coefficient matrix is spare. The sparseness increases as the number of nodes
increases. If there are 21 nodes, 81% of the coefficients are zeros; if there are 105 nodes,
96% are zeros. The system of equations for the one-dimensional case always has a
tridiagonal coefficient matrix for which the efficient Thomas algorithm can be used. The ADI
method can be applied for the two or three-dimensional system to get a tridiagonal
coefficient matrix. We will use a two dimensional example of the Laplace equation
 2u = 0
Using finite difference, the value at the node (i, j) for iteration (m+1) is given as
ui(,mj1) =
1 ( m)
[ ui , j 1 + ui(,mj)1 + ui(m1,) j + ui(m1,) j ]
4
We now add and subtract ui(,mj) from this equation to yield
ui(,mj1) = ui(,mj) +
1 ( m)
[u
+ ui(,mj)1 + ui(m1,) j + ui(m1,) j  4 ui(,mj) ]
4 i , j 1
or equivalently
ui(,mj1)  ui(,mj) =
1
{[ ui(,mj)1  2 ui(,mj) + ui(,mj)1 ] + [ ui(m1,) j  2 ui(,mj) + ui(m1,) j ]}
4
Each iteration is considered to be a two-step procedure wherein the first step advances to the
1
(m+ ) level and the second step to the (m+1) level.
2
First step:
ui(,mj1/ 2)  ui(,mj) =
1
{[ ui(,mj11/ 2)  2 ui(,mj1/ 2) + ui(,mj11/ 2) ] + [ ui(m1,) j  2 ui(,mj) + ui(m1,) j ]}
4
Second step:
ui(,mj1)  ui(,mj1/ 2) =
1
{[ ui(,mj11/ 2)  2 ui(,mj1/ 2) + ui(,mj11/ 2) ] + [ ui(m1, j1)  2 ui(,mj1) + ui(m1, j1) ]}
4
6-19
The ADI method produces a tridiagonal set of equations at the (m+1/2) level. The equations
can be solved along all rows of the grid, one row at a time. Once, all nodes have been
elevated to the (m+1/2) level, a similar procedure for the column of nodes is applied. A twostep iteration is completed when the new values ui(,mj1) are calculated.
Example 6.4-1 _____________________________________________________
Assuming two dimensional, steady-state conduction, determine the temperature of nodes 1,
2, 3, and 4 in the square shape subjected to the uniform temperature shown.
100
100
2
1
50
0,2
1,0
1,1
1,2
1,3
200
2,0
2,1
2,2
2,3
50
200
3
0,1
4
3,1
3,2
300
300
Figure 6.4-1 The nodes in a two dimensional, steady-state conduction.
Solution
The two-dimensional heat conduction equation for steady state, no heat generation, and k
independent of temperature is given as
 2u
 2u
+
=0
x 2
y 2
The ADI method will be applied to solve this problem
ui(,mj1)  ui(,mj) =
1
{[ ui(,mj)1  2 ui(,mj) + ui(,mj)1 ] + [ ui(m1,) j  2 ui(,mj) + ui(m1,) j ]}
4
Let u1(,m1 ) = 100, u1(,m2 ) = 150, u2( m,1) = 150, and u2( m,2) = 250
First step calculation with row 1 and row 2:
ui(,mj1/ 2)  ui(,mj) =
Node (1,1):
1
{[ ui(,mj11/ 2)  2 ui(,mj1/ 2) + ui(,mj11/ 2) ] + [ ui(m1,) j  2 ui(,mj) + ui(m1,) j ]}
4
u1(,m1 1/ 2)  100 =
1
{[ u1(,m2 1/ 2)  2 u1(,m1 1/ 2) + 50] + [100 2(100) + 150]}
4
6-20
1.5 u1(,m1 1/ 2)  0.25 u1(,m2 1/ 2) = 125
Node (1,2):
u1(,m2 1/ 2)  150 =
1
{[200 2 u1(,m2 1/ 2) + u1(,m1 1/ 2) ] + [100 2(150) + 250]}
4
 0.25 u1(,m1 1/ 2) + 1.5 u1(,m2 1/ 2) = 212.5
The two nodes in row 1 are solved with the following results
u1(,m1 1/ 2) = 110, and u1(,m2 1/ 2) = 160
Node (2,1)
u2( m,11/ 2)  150 =
1
{[ u2( m,21/ 2)  2 u2( m,11/ 2) + 50] + [100 2(150) + 300]}
4
1.5 u2( m,11/ 2)  0.25 u2( m,21/ 2) = 187.5
Node (2,2)
u2( m,21/ 2)  250 =
1
{[200  u2( m,21/ 2) + u2( m,11/ 2) ] + [150 2(250) + 300]}
4
 0.25 u2( m,11/ 2) + 1.5 u2( m,21/ 2) = 287.5
The two nodes in row 2 are solved with the following results
u2( m,11/ 2) = 161.43, and u2( m,21/ 2) = 218.57
Second step calculation with column 1 and column 2:
ui(,mj1)  ui(,mj1/ 2) =
Node (1,1)
1
{[ ui(,mj11/ 2)  2 ui(,mj1/ 2) + ui(,mj11/ 2) ] + [ ui(m1, j1)  2 ui(,mj1) + ui(m1, j1) ]}
4
u1(,m1 1)  110 =
1
{[160  2(110)+ 50] + [100 2 u1(,m1 1) + u2( m,11) ]}
4
1.5 u1(,m1 1)  0.25 u2( m,11) = 132.5
Node (2,1)
u2( m,11)  161.43 =
1
{[218.57  2(161.43)+ 50] + [ u1(,m1 1)  2 u2( m,11) + 300]}
4
 0.25 u1(,m1 1) + 1.5 u2( m,11) = 222.86
The two nodes in column 1 are solved with the following results
6-21
u1(,m1 1) = 116.33, and u2( m,11) = 167.96
Node (1,2)
u1(,m2 1)  160 =
1
{[200  2(160)+ 110] + [100 2 u1(,m2 1) + u2( m,21) ]}
4
1.5 u1(,m2 1)  0.25 u2( m,21) = 182.5
Node (2,2)
u2( m,21)  218.57 =
1
{[200  2(218.57)+ 161.43] + [ u1(,m2 1)  u2( m,21) + 300]}
4
 0.25 u1(,m2 1) + 1.5 u2( m,21) = 274.64
The two nodes in column 2 are solved with the following results
u1(,m2 1) = 156.53, and u2( m,21) = 209.18
Table 6.4-1 lists the temperatures before and after one ADI iteration.
Table 6.4-1 ui(,mj) (left side) and ui(,mj1) (right-side)
i\j
0
1
2
3
0
1
2
50
50
100
100
150
300
100
150
250
300
3
i\j
200
200
0
1
2
3
6-22
0
1
2
3
50
50
100
116.33
167.96
300
100
156.53
209.18
300
200
200
Download