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

Лабораторная

работа №5

по

численным методам.

Вариант 02.

Выполнила:

Никитушкина Евгения

ЭКТ-35

Проверил:

Мустафин Н.Н.

МИЭТ

2001

Рассмотрим некоторое дифференциальное уравнение:

y’’(t)+p(t)*y’(t)+q(t)y(t)=f(t)

рассмотрим краевые условия:

k1y(a)+k2y’(a)=alpha

k3y(b)+k4y’(b)=betta

Решаем следующим образом:

Зададим сетку:

[a,b] a=t0<=t1<=t2<=…<=tn=b

P(tj)=pj; q(tj)=qj; f(tj); f(tj)=fj

(yi+1 –2yi+yi–1)/tau^2+pi*(yi+1–yi–1)/2tau+qi*yi=fi

k1y0+k2(y1-y0)=alpha :c=f0

k3yn+k4(yn-yn-1)=betta :d=fn

Ai=1/tau^2–Pi2tau

Bi=qi–2tau^2 i=1,2,…n-1

Ci= 1/tau^2+Pi/2tau

B0=k1–k2/tau; c0=k^2/tau

Bn=k3+k4/tau; An=-44/tau

B0y0+C0y1 =f0

……………………… трехдиагональная матрица

Aiyi-1+Biyi+Ciyi+1

Anyn-1+Bnyn=fn

Методом прогонки:

alpha0=betta0=0; A0=Cn=0

alphai+1=Ci/(Bi+Ai*alphai)

bettai+1=(Ai*bettai-fi)/-(Bi+Ai*alphai)

i=0,1,…,n

yn=(An*bettan–fn)/–(Bn+An*alphan)

yj-1=alphaj*yj+bettaj

Вариант1

p(t)

g(t)

r(t)

a

b

k1

k2

k3

k4

c

d

-t

2

t+1

0

1

1

-0.5

1

0

2

1

Программа

% p(t)=-t;

% g(t)=2;

% r(t)=t+1;

a=0;

b=1;

k1=1;

k2=-0.5;

k3=1;

k4=0;

c=2;

d=1;

step=50;

tau=(b-a)/step;

t=[];

for x=a:tau:b

t=[t;x];

end;

aa=[];

bb=[];

cc=[];

for x=2:1:step+1

aa=[aa;(1/(tau*tau)-(1/t(x))/2*tau)];

bb=[bb;(2-2/(tau^2))];

cc=[cc;(1/(tau*tau)+(1/t(x))/2*tau)];

end;

aa(1)=0;

bb(1)=k1-k2/tau;

cc(1)=k2/tau;

aa(step+1)=-k4/tau;

bb(step+1)=k3+(k4/4);

cc(step+1)=0;

alpha=[0];

betta=[0];

for x=2:1:step+1

alpha=[alpha;-cc(x-1)/(bb(x-1)+alpha(x-1)*aa(x-1))];

betta=[betta;-(betta(x-1)*aa(x-1)-t(x-1))/(bb(x-1)+alpha(x-1)*aa(x-1))];

end;

y=[];

y(step+1)=-aa(step+1)*betta(step+1)-t(step+1)/(bb(step+1)+aa(step+1)*alpha(step+1));

for x=step:-1:1

y(x)=y(x+1)*alpha(x+1)+betta(x+1);

end;

plot(t,y);

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