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

«Численное решение краевой задачи для обыкновенного дифференциального уравнения второго порядка на Паскале (Pascal)»

  • 9 страниц
Содержание

1. Постановка задачи 3

2. Схема алгоритма. 4

3. Текст программы на Паскале 5

4. Результаты расчёта 8

5. Список литературы 9

Введение

Численное решение краевой задачи для обыкновенного дифференциального уравнения второго порядка.

Фрагмент работы

3. Текст программы на Паскале

var

yx,xy,l,v,p,ff,ay,by,x:array [0.10] of real;

y,a,b:array[0.10,0.1] of real;

i,n,o:integer;

c,d,h,k:real;

label

lap1;

begin

writeln('введите наивысший порядок производной не больше трех ');

readln(n);

i.

for i:=0 to n do

readln(l[i]);

if (n=1) and (l[1]=0) or (n=2) and (l[2]=0) or (n=3) and (l[3]=0) then begin

writeln('деление на ноль');

goto lap1;

end;

writeln('введите коэффициент при x');

readln(k);

writeln('введите отрезок ');

readln(c,d);

o:=5;

h:=abs(d-c)/o;

writeln('шаг=',h:1:1);

writeln('задайте начальные условия y(x)= ');

for i:=0 to n-1 do

readln(v[i]);

if n=3 then begin

yx[0]:=v[0];

ay[0]:=v[1];

by[0]:=v[2];

p[0]:=(k*c-l[0]*v[0]-l[1]*v[1]-l[2]*v[2])/l[3];

x[0]:=c;

write(' ');

write(' x y a b ');

write(' ',c:7:7,' ',yx[0]:7:7,' ',ay[0]:7:7,' ',by[0]:7:7,' ');

for i:=0 to o-1 do begin

x[i]:=x[i]+h/2;

y[i,1]:=yx[i]+(h/2)*ay[i];

.

x[i+1]:=x[i]+h/2;

p[i+1]:=(k*xy[i]-l[0]*yx[i+1]-l[1]*ay[i+1]-l[2]*by[i+1])/l[3];

end;

for i:=0 to o-1 do begin

write(' ',xy[i]:7:7,' ',yx[i+1]:7:7,' ',ay[i+1]:7:7,' ',by[i+1]:7:7,' ');

end;

write(' ');

end;

if n=2 then begin

x[0]:=c;

yx[0]:=v[0];

ay[0]:=v[1];

p[0]:=(k*c-l[0]*yx[0]-l[1]*v[1])/l[2];

write(' ');

write(' x y a ');

write(' ',c:7:7,' ',yx[0]:7:7,' ',ay[0]:7:7,' ');

for i:=0 to o-1 do begin

x[i]:=x[i]+h/2;

y[i,1]:=yx[i]+(h/2)*ay[i];

a[i,1]:=ay[i]+(h/2)*p[i];

ff[i]:=(k*x[i]-l[0]*y[i,1]-l[1]*a[i,1])/l[2];

xy[i]:=x[i]+h/2;

yx[i+1]:=yx[i]+h*a[i,1];

ay[i+1]:=ay[i]+h*ff[i];

x[i+1]:=x[i]+h/2;

p[i+1]:=(k*xy[i]-l[0]*yx[i+1]-l[1]*ay[i+1])/l[2];

end;

for i:=0 to o-1 do begin

write(' ',xy[i]:7:7,' ',yx[i+1]:7:7,' ',ay[I+1]:7:7,' ');

end;

write(' ');

end;

if n=1 then begin

x[0]:=c;

yx[0]:=v[0];

p[0]:=(k*x[0]-l[0]*yx[0])/l[1];

for i:=0 to o-1 do begin

x[i]:=x[i]+h/2;

y[i,1]:=yx[i]+(h/2)*p[i];

xy[i]:=x[i]+h/2;

ff[i]:=(k*x[i]-l[0]*y[i,1])/l[1];

yx[i+1]:=yx[i]+h*ff[i];

x[i+1]:=x[i]+h/2;

p[i+1]:=(k*xy[i]-l[0]*yx[i+1])/l[1];

end;

write(' ');

write(' x y ');

write(' ',c:7:7,' ',yx[0]:7:7,' ');

for i:=0 to o-1 do begin

write(' ',xy[i]:7:7,' ',yx[i+1]:7:7,' ');

end;

write(' ');

end;

lap1:readln;

end.

Заключение

4. Результаты расчёта

Общее решение однородного уравнения имеет вид

Тогда частное решение при заданных начальных условиях можно записать в виде:

Список литературы

1. Калиткин Н. Н. Численные методы. – М.: Наука, 1978. – 512 с.

2. Самарский А. А. Теория разностных схем. – М.: Наука, 1989. – 616 с.

3. Самарский А. А., Николаев Е. С. Методы решения сеточных уравнений. – М.: Наука, 1978. – 592 с.

4. Рапаков Г. Г., Ржеуцкая С. Ю. Программирование на языке Pascal. . – СПб.: БХВ-Петербург, 2005. – 480 с.

Примечания

Готовые решение задачи на языке Паскаль

К работе прилагается все исходники (Pascal) и отчет (Word)

Покупка готовой работы
Тема: «Численное решение краевой задачи для обыкновенного дифференциального уравнения второго порядка на Паскале (Pascal)»
Раздел: Информатика
Тип: Лабораторная работа
Страниц: 9
Цена: 600 руб.
Нужна похожая работа?
Закажите авторскую работу по вашему заданию.
  • Цены ниже рыночных
  • Удобный личный кабинет
  • Необходимый уровень антиплагиата
  • Прямое общение с исполнителем вашей работы
  • Бесплатные доработки и консультации
  • Минимальные сроки выполнения

Мы уже помогли 24535 студентам

Средний балл наших работ

  • 4.89 из 5
Узнайте стоимость
написания вашей работы
Популярные услуги
Дипломная на заказ

Дипломная работа

от 8000 руб.

срок: от 6 дней

Курсовая на заказ

Курсовая работа

от 1500 руб.

срок: от 3 дней

Отчет по практике на заказ

Отчет по практике

от 1500 руб.

срок: от 2 дней

Контрольная работа на заказ

Контрольная работа

от 100 руб.

срок: от 1 дня

Реферат на заказ

Реферат

от 700 руб.

срок: от 1 дня

682 автора

помогают студентам

23 задания

за последние сутки

10 минут

среднее время отклика