Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
84
Добавлен:
17.04.2013
Размер:
458.75 Кб
Скачать

Приложение 2.Подпрограммаgeteps.M определения погрешности при заданном параметре сходимости.

function [eps] = geteps(mu)

M = 10; N = 10;

a = 1; b = 1;

h1 = a/M; h2 = b/N; q = h2/h1;

u = ones(M+1, N+1);

x = zeros(M+1,1);

y = zeros(N+1,1);

x = 0:h1:1;

y = 0:h2:1;

for i = 1:(M+1),

u(i,1) = 0;

u(i,N+1) = sin(pi*(i-1)*h1/2);

end

for j = 1:(N+1),

u(1,j) = 0;

u(M+1,j) = (j-1)*h2;

end

k = 0;

MAX = 15;

A = 100;

a1 = 1/(2*(1+q^2));

a2 = q^2;

a3 = h2^2*a1;

for k = 1:MAX,

A = 0;

for i=2:M,

for j=2:N,

X = a1*(u(i,j-1)+u(i,j+1)+a2*u(i-1,j)+a2*u(i+1,j))-a3;

X = mu*X + (1-mu)*u(i,j);

R = abs(X - u(i,j));

if (R > A) A = R; end

u(i,j) = X;

end

end

end

eps = A;

Приложение 3. Программа scanmu.M построения зависимости достигнутой погрешности вычислений от параметра сходимости.

left = input('Input left border of mu-range: ');

right = input('Input right border of mu-range: ');

epsmu = input('Input the quality of mu-parameter definition: ');

mu = left:epsmu:right;

eps = zeros(size(mu));

N = (right-left)/epsmu;

for i=1:(N+1),

eps(i) = geteps(mu(i));

end

eps(N+1) = eps(N);

plot(mu, eps);

Приложение 4. Результат вычислений программы tikhiy.m при значениях N=M=10, .

i \ j

0

1

2

3

4

5

6

7

8

9

10

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0.0010

0.0057

0.0127

0.0218

0.0333

0.0510

0.0686

0.0915

0.1199

0.1564

2

0

0.0053

0.0158

0.0305

0.0494

0.0759

0.1068

0.1430

0.1873

0.2416

0.3090

3

0

0.0114

0.0290

0.0522

0.0840

0.1216

0.1666

0.2195

0.2831

0.3601

0.4540

4

0

0.0187

0.0445

0.0793

0.1209

0.1700

0.2278

0.2955

0.3758

0.4719

0.5878

5

0

0.0272

0.0642

0.1084

0.1599

0.2198

0.2891

0.3691

0.4629

0.5740

0.7071

6

0

0.0389

0.0853

0.1394

0.2011

0.2708

0.3496

0.4392

0.5427

0.6642

0.8090

7

0

0.0497

0.1077

0.1726

0.2441

0.3226

0.4092

0.5055

0.6146

0.7410

0.8910

8

0

0.0632

0.1334

0.2093

0.2904

0.3767

0.4692

0.5691

0.6793

0.8042

0.9511

9

0

0.0791

0.1634

0.2510

0.3416

0.4350

0.5317

0.6325

0.7393

0.8553

0.9877

10

0

0.1000

0.2000

0.3000

0.4000

0.5000

0.6000

0.7000

0.8000

0.9000

1.0000

Соседние файлы в папке mpm_2b