35257

Метод прогонки розв’язання крайової задачі. Складання алгоритму

Практическая работа

Информатика, кибернетика и программирование

Мета. Навчитися використовувати метод прогонки розв’язання крайової задачі звичайного диференційного рівняння. Скласти алгоритм.

Украинкский

2013-09-09

29.5 KB

1 чел.

еревко О.В.                                                                                                              2ПМС-07

                                     Лабораторна робота №29,30

Тема. Метод прогонки розв’язання крайової задачі. Складання алгоритму.

Мета. Навчитися використовувати метод прогонки розв’язання крайової задачі звичайного диференційного рівняння. Скласти алгоритм.

Устаткування: папір формату А4, ручка, калькулятор, С++.

Хід роботи

  1.  Правила техніки безпеки
  2.  Теоретичні дані
  3.  Індивідуальне завдання.

Використовуючи метод прогонки, скласти рішення граничної задачі для звичайного диферінціального рівняння з кроком  .

16)

Программа на С++

#include<iostream.h>

#include<math.h>

double PX(double x)

{

return -3;

}

double QX(double x)

{

return 1/x;

}

double FX(double x)

{

return 1;

}

void main()

{

int n;

double h,a,b,LO,L1,A,BO,B1,B;

cout<<"Vvedite shag h:";

cin>>h;

cout<<"Vvedite a: ";

cin>>a;

cout<<"Vvedite b: ";

cin>>b;

n=(b-a)/h;

double *x = new double [n+1];

double *y = new double [n+1];

double *m = new double [n+1];

double *nn = new double [n+1];

double *f = new double [n+1];

double *c = new double [n+1];

double *d = new double [n+1];

cout<<"Vvedite L[0]: ";

cin>>L0;

cout<<"Vvedite L[1]: ";

cin>>L1;

cout<<"Vvedite A: ";

cin>>A;

cout<<"Vvedite B[0]: ";

cin>>B0;

cout<<"Vvedite B[1]: ";

cin>>B1;

cout<<"Vvedite B: ";

cin>>B;

x[0]=a;

c[0]=L1/(L0*h-L1);

d[0]=A*h/Ll;

//Prjamoi hod

for(int i=0;i<=n;i++)

{

x[i]=x[0]+i*h;

m[i]=2*h*h*QX(x[i])-4)/(2+h*PX(x[i]));

nn[i]=(2-h*PX(x[i]))/(2+h*PX(x[i]));

f[i]=2*FX(x[i])/(2+h*PX(x[i]));

if(i!=0 {c[i]=1/(m[i]-nn[i]*c[i-1]);

d[i]=FX(x[i])*h*h-nn[i]*c[i-1]*d[i-1];}

}

//Obratnii hod

y[n]=(B*h+Bl*c[n-1]*d[n-1])/(BO*h+B1*(c[n-1]+1));

for (i=n-1;i>=0;i--) y[i]=c[i]*(d[i]-y[i+1]);

cout<<"Tablichnaja fynkchija:\n";

for(i=0;i<=n;i++) cout<<"x["<<i<<"]="<<x[i]<<"\ty["<<i<<"]="<<y[i]<<"\n";

}

Результат программы


 

А также другие работы, которые могут Вас заинтересовать

5750. Физиологические особенности лошади 134.5 KB
  На протяжении тысячелетий лошадь остаётся верным спутником и помощником человека. Трудно назвать другое животное, чьё значение для нас было бы столь велико. Уже более четырех десятилетий общая численность лошадей в мире остаётся стабильной...
5751. История фирмы Сименс 81.5 KB
  Биография основателя компании Сименс. 13 декабря 1816 г. в городе Ленте близ Ганновера родился Вернер Сименс - будущий инженер, изобретатель, ученый, промышленник, общественный деятель. Окончив с отличием гимназию в Любеке, затем артиллерийское инже...
5752. Цинкодефициты и значение цинка в жизни человека 71.5 KB
  О цинкодефицитах и не только. Все больше людей сейчас приходят к осознанию что прежде чем требовать от своего организма стабильно - эффективных результатов работы - необходимо обеспечить ему для этого максимально благоприятные условий...
5753. Монолитное перекрытие выполняемое по балочной схеме 74 KB
  На сегодняшний день из существующих технологий возведения зданий и сооружений наиболее перспективным является монолитное строительство. Это - возведение конструктивных элементов из бетоносодержащей смеси с использованием специальных...
5754. Конвейер ленточный крутонаклонлонный (угол наклона 600) 5.64 MB
  Высокопроизводительная работа современного предприятия невозможна без правильно организованных и надежно работающих средств промышленного транспорта. Например, на машиностроительном заводе получают и распределяют по цехам сотни тонн металла...
5757. Построение осесимметричного меридиального потенциального потока 246 KB
  Исходные данные к курсовой работе Большой радиус канала R= 0,35 м Малый радиус канала r=0,045 м Высота канала на входе b0=0,3 м Угол наклона конической части за малым радиусом ...
5758. Глобальные проблемы мировой цивилизации 123.5 KB
  Введение Глобальные проблемы нашей эпохи - закономерное следствие всей современной глобальной ситуации, сложившейся на земном шаре в последней трети XX века. Для правильного понимания происхождения, сущности и возможности их решения необходимо ...