summaryrefslogtreecommitdiff
path: root/1332/CH19/EX19.5/19_5.sce
blob: 3d17305b872c1c58d0bb264180914e7ff30cbb73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//Example 19.5
//Lax Wendroff Method
//Page no. 660
clc;clear;close;

c=-2;dt=0.07;dx=0.2;
r=abs(c)*dt/dx;
printf('\n  x\ti\t|\tj -->\t')
for i=0:6
    printf('  %i\t',i)
end
printf('\n  |\t|\t|\tt -->\t')
for i=0:6
    printf('%.3f\t',i*dt)
end
i=1;
printf('\n---------------------------------------------------------------------------------------')
for j=1:7
    for i=1:6
        if j==1 then
            u(i,j)=0;
            u(i+1,j)=0;
        elseif i==1 then
            u(i,j)=1
        else
            u(i,j)=r*(r-1)*u(i+1,j-1)/2+(1-r^2)*u(i,j-1)+r*(1+r)*u(i-1,j-1)/2
        end
    end
end
for i=1:6
    printf('\n %.1f\t%i\t|\t\t',(i-1)*dx,i-1)
    for j=1:7
        printf('%.3f\t',u(i,j))
    end
end