Alternating Direction Implicit Method
While dealing with Elliptic Equations in the Implicit form , the number of equations to be
solved are M N , which are quite large in number. Though the coefficient matrix has many
zeros, but it is not a banded system. Of course, sometimes simplification can be done using
partitioning of the matrix.
Peaceman and Rachford in 1955 suggested a scheme known as Alternating Direction Implicit
Method. In this scheme the solution is obtained in two stages .
Stage1: The FD representation of the Laplace Equation
ui 1, j ui 1, j 4ui , j ui , j 1 ui , j 1 0 (4.1)
is solved row-wise i.e. we first put j =1 and i =1,2,-----,N giving
u in1,1 u in1,1 4u in,11 u in, 0 u in, 2 0 (4.2)
a system of N equations which are solved by any method. The same is continued with j =2, j
=3,----, j=M. Thus a system of N equations is solved M times.
In general:
u in, j 1 u in, j (u in1,1j 2u in, j 1 u in1,1j ) (u in, j 1 2u in, j u in, j 1 )
Stage2: In this stage the solution proceeds vertically i.e. first i =1, j =1,2,------,M;
i =2 , j =1,2,------,M and so on.
Here M equations are solved N times. Thus we have
u in, j 2 u in, j 1 (u in1,1j 2u in, j 1 u in1,1j ) (u in, j 21 2u in, j 2 u in, j 21 )
Thus stages (1) and (2) are computed till the accuracy is satisfied. The above relations are
implicit but with proper ordering of the equations, the coefficient matrix becomes Tridiagonal.
The results obtained in even number of iterations are considered as the final, Since the
coefficient matrices are always same, so the computational effort is less.
Example: Solve the Heat Flow Problem in a square of size 11 , 2 u 0 with,
x y 1 / 4 , where x =0 and x =1 is kept at 10C and y=0 & y=1 are kept at 50C .
Use ADI and Libemann method to solve it and compare the result.
Solution:
By ADI Method:
Given, 2u 0
Stage 1:
The FD representation of the Laplace Equation
ui 1, j ui 1, j 4ui , j ui , j 1 ui , j 1 0 ( 4.3)
Now, fix j =1 ; substituting i =1,2,3 in equation (4.3) and with boundary conditions, we have:
4u1(,11) u 2(1,1) 90 take, u1, 2 30 assumed value
u1(,11) 4u 2(1,1) u3(1,1) 80 take, u 2, 2 30 assumed value
u 2(1,1) 4u3(1,1) 90 take, u3, 2 30 assumed value
On solving these three equations we have :
u1(,11) 31.4286 ; u 2(1,1) 35.7143 ; u3(1,1) 31.4286
Now, fix j =2 ; substituting i =1,2,3 in equation (4.3) and with boundary conditions, we have:
4u1(,12) u 2(1, )2 70 take, u1,1 u1,3 30 assumed value
u1(,12) 4u 2(1, )2 u3(1, 2) 60 take, u 2,1 u 2,3 30 assumed value
u 2(1, )2 4u3(1, 2) 70 take, u3,1 u3,3 30 assumed value
On solving these three equations we have :
u1(,12) 24.2857 ; u 2(1, )2 27.1429 ; u3(1, 2) 24.2857
Now, fix j =3 ; substituting i =1,2,3 in equation (4.3) and with boundary conditions, we have:
4u1(,13) u 2(1,3) 90 take, u1, 2 30 assumed value
u1(,13) 4u 2(1,3) u3(1,3) 80 take, u 2, 2 30 assumed value
u 2(1,3) 4u3(1,3) 90 take, u3, 2 30 assumed value
On solving these three equations we have :
u1(,13) 31.4286 ; u 2(1,3) 35.7143 ; u3(1,3) 31.4286
Stage 2:
The FD representation of the Laplace equation is :
ui , j 1 4ui , j ui , j 1 ui 1, j ui 1, j 0 ( 4 .4 )
Now, fix i =1 ; substituting j =1,2,3 in equation (4.4) and with boundary conditions, we have:
4u1(,21) u1(,22) 95.7143 take, u 2(1,1) 35.7143
u1(,21) 4u1(,22) u1(,23) 37.1429 take, u 2(1, )2 27.1429
u1(,22) 4u1(,23) 95.7143 take, u 2(1,3) 35.7143
On solving these three equations we have :
u1(,21) 24.2857 ; u1(,22) 27.1429 ; u1(,23) 24.2857
Now, fix i =2 ; substituting j =1,2,3 in equation (4.4) and with boundary conditions, we have:
4u 2( 2,1) u 2( 2, 2) 112.8572 take, u1(,11) u3(1,1) 31.4286
u 2( 2,1) 4u 2( 2, 2) u 2( 2,3) 48.5714 take, u1(,12) u3(1, 2) 24.2857
u 2( 2, 2) 4u 2( 2,3) 112.8572 take, u1(,13) u1(,13) 31.4286
On solving these three equations we have :
u 2( 2,1) 35.7143 ; u 2( 2, 2) 30 ; u 2( 2,3) 35.7143
Now, fix i =3 ; substituting j =1,2,3 in equation (4.4) and with boundary conditions, we have:
4u3( ,21) u3( ,22) 95.7143 take, u 2(1,1) 35.7143
u3( ,21) 4u3( ,22) u3( ,23) 37.1429 take, u 2(1, )2 27.1429
u3( ,22) 4u3( ,23) 95.7143 take, u 2(1,3) 35.7143
On solving these three equations we have :
u3( ,21) 30 ; u3( ,22) 24.2857 ; u3( ,23) 30
As the values at stage 1 and stage 2 do not match so we continue the process.
Again performing stage 1:
Now, fix j =1 ; substituting i =1,2,3 in equation (4.3) and with boundary conditions, we have:
4u1(,31) u 2( 3,1) 87.1429 take, u1(,22) 27.1429
u1(,31) 4u 2(3,1) u3( 3,1) 80 take, u 2( 2, 2) 30
u 2( 3,1) 4u3(3,1) 84.2857 take, u3( ,22) 24.2857
On solving these three equations we have :
u1(,31) 30.5612 ; u 2( 3,1) 35.1020 ; u3( 3,1) 29.8469
Now, fix j =2 ; substituting i =1,2,3 in equation (4.3) and with boundary conditions, we have:
4u1(,32) u 2( 3, 2) 58.5714 take, u1(,21) u1(,23) 24.2857
u1(,32) 4u 2( 3, 2) u3( 3, 2) 71.4286 take, u 2( 2,1) u 2( 2,3) 35.7143
u 2( 3, 2) 4u3( 3, 2) 70 take, u3( ,21) u3( ,23) 30
On solving these three equations we have :
u1(,32) 22.0408 ; u 2( 3, 2) 29.5918 ; u3( 3, 2) 24.8980
Now, fix j =3 ; substituting i =1,2,3 in equation (4.3) and with boundary conditions, we have:
4u1(,33) u 2( 3,3) 87.1429 take, u1(,22) 27.1429
u1(,33) 4u 2(3,3) u3( 3,3) 80 take, u 2( 2, 2) 30
u 2( 3,3) 4u3(3,3) 84.2857 take, u3( ,22) 24.2857
On solving these three equations we have :
u1(,33) 30.5612 ; u 2( 3,3) 35.1020 ; u3(3,3) 29.8469
Again performing stage 2 :
Now, fix i =1 ; substituting j =1,2,3 in equation (4.4) and with boundary conditions, we have:
4u1(,41) u1(,42) 95.1020 take, u 2( 3,1) 35.1020
u1(,41) 4u1(,42) u1(,43) 39.5918 take, u 2( 3, 2) 29.5918
u1(,42) 4u1(,43) 95.1020 take, u 2( 3,3) 35.1020
On solving these three equations we have :
u1(,41) 30 ; u1(,42) 24.8979 ; u1(,43) 30
Now, fix i =2 ; substituting j =1,2,3 in equation (4.4) and with boundary conditions, we have:
4u 2( 4,1) u 2( 4, 2) 110.4081 take, u1(,31) 30.5612 ; u3(3,1) 29.8469
u 2( 4,1) 4u 2( 4, 2) u 2( 4,3) 46.9388 take, u1(,32) 22.0408 ; u3( 3, 2) 24.8980
u 2( 4, 2) 4u 2( 4,3) 110.4081 take, u1(,33) 30.5612 ; u1(,33) 31.4286
On solving these three equations we have :
u 2( 4,1) 34.8979 ; u 2( 4, 2) 29.1837 ; u 2( 4,3) 34.8979
Now, fix i =3 ; substituting j =1,2,3 in equation (4.4) and with boundary conditions, we have:
4u3( ,41) u3( ,42) 95.1020 take, u2(3,1) 35.1020
u3( ,41) 4u3( ,42) u3( ,43) 39.5918 take, u 2(3, 2) 29.5918
u3( ,42) 4u3( ,43) 95.1020 take, u2(3,3) 35.1020
On solving these three equations we have:
u 3( ,41) 30 ; u 3( ,42) 24.8979 ; u 3( ,43) 30
Now required accuracy is reached. Hence this is the final solution.
u1,1 30 ; u1, 2 24.8979 ; u1,3 30
u2,1 34.8979 ; u2, 2 29.1837 ; u2,3 34.8979
u3,1 30 ; u3, 2 24.8979 ; u3,3 30
By Libemnn Method: The FD representation of the Laplace Equation:
ui 1, j ui 1, j 4ui , j ui , j 1 ui , j 1 0 ( 4.5)
Substitute j =1 in equation (4.5)
ui 1,1 ui 1,1 4ui ,1 ui , 0 ui , 2 0 ( 4 .6 )
Substitute i =1,2,3 in equation (4.6) and boundary conditions ,we have:
4u1,1 u1, 2 u2,1 60
u1,1 4u2,1 u3,1 50
u2,1 4u3,1 u3, 2 60
Now, substituting j =2 ; i =1,2,3 in equation (4.5) and with boundary conditions ,we have:
u1,1 4u1, 2 u 2, 2 u1,3 10
u1, 2 u 2,1 4u 2, 2 u 2,3 u3, 2 10
u 2, 2 u3,1 4u3, 2 u3,3 10
Now, substituting j =3 ; i =1,2,3 in equation (4.5) and with boundary conditions ,we have:
u1, 2 4u1,3 u2,3 60
u1,3 u2, 2 4u2,3 u3,3 50
u2,3 u3, 2 4u3,3 100
On solving these nine equations,we have:
u1,1 =30.5357 ; u1, 2 =26.0714 ; u1,3 =31.2500
u 2,1 36.0714 ; u2, 2 =32.5000 ; u2,3 =38.9286
u3,1 =31.2500 ; u3, 2 28.9286 ; u3,3 41.9623
Comparing the two methods it can be observed that the ADI method requires less
computational efforts.