wbegin
for
j=: 1 to N do for i=:1 to M do begin:
calculate the values Ex(i,
j, t), Ey(i,j,t), and Et(i, j, t);
initialize
the values u(i, j) and v(v, j) with zero
end {for};
choose a suitable weighting value lambda
{e.g. lambda=0.1)
choose
a suitable number n0>=1 of iterations; {n0=8}
n:=1;
while n<=n0 do begin
for j:= 1 to N do for i:=1 to M do
begin
udash=(u(i-1,j) +u(i+1, j) + u(i, j-a) +u(i, j+1))/4;
vdash=(v(i-1,j) +v(i+1, j) +
v(i, j-a) +v(i, j+1))/4;
alpha=Ex(i,j,t)*udash+Ey(i,j,t)*vdash +Et(i, j, t)*lambda/(1+lambda(Ex(i, j, t)^2 +Ey(i, j, t)^2);
u(i, j)=udash -alpha*
Ex(i,j,t);
v(i, j)=vdash-alpha*Ey(i, j, t)
end{for};
n=n+1;
end{while}
end;
w