Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Институт радиоэлектроники и информационных техн....docx
Скачиваний:
1
Добавлен:
21.04.2019
Размер:
282.12 Кб
Скачать
  1. Задание исследования

Провести исследование решения двухточечной краевой задачи методом прогонки на языке С++.

2. Подробное описание задачи и методы её решения

Физические процессы часто описываются обыкновенными линейными дифференциальными уравнениями второго порядка. В некоторых случаях представляет интерес описание процесса на некотором интервале изменения аргумента при условии, что на обеих границах этого интервала заданы значения линейных комбинаций состояний процесса и его первых производных. Такая задача называется линейной двухточечной краевой задачей и может быть решена с помощью так называемого метода прогонки. Метод прогонки часто еще называют алгоритмом Томаса.

Сначала требуется найти функцию y(x), на отрезке [a,b], которая удовлетворяет следующему дифференциальному уравнению и краевым условиям:

где p(x), q(x), f(x) - известные непрерывные на отрезке [a,b] функции, - заданные постоянные , причем .

Предполагается, что отрезок [a,b], на котором будет находиться решение этого уравнения, разбит на n равных частей системой точек (сеткой).

Пусть pi, qi, fi, yi - значения соответствующих функций в узлах сетки. Тогда вычисления производятся в два приема (прямой ход и обратных ход ) следующем порядке:

  • Прямой ход:

Вычислить набор значений mi и ki по формулам:

, (i=0,1,…..,n-2)

Затем находим набор значений ci и di:

,

;

  • Обратный ход:

Находим все значения функции yi:

Таким образом, все вычисления как бы прогоняют два раза. Вычисления прямого хода заготавливают вспомогательные числа ci и di в порядке возрастания индекса i. При этом для вычисления с0, d0 используется краевое условие на левом конце отрезка интегрирования. Затем на первом шаге обратного хода происходит согласование полученных чисел сn-2, dn-2 с краевым условием на первом конце отрезка интегрирования, после чего последовательно получаются значения искомой функции yi в порядке убывания индекса i.

Примените метод прогонки для приближенного решения следующей краевой задачи:

3. Описание работы программы и результаты исследований

Программа написана на языке С и является консольным приложением. Данная программа позволяет получить решение вышеуказанного уравнения на интервале от ab[0;1] в точках Xn с шагом h=(b-a)/n, где n – число точек на интервале, при параметрах fi и S. Значения fi приведены в таблице. S же, изменяется от нуля до пяти, с шагом в единицу.

При запуске программы происходит последовательный расчет значений искомой функции в зависимости от S от первого значения f. Затем выполняется замена значений f в точках на следующее. Рассчитываются значения для всех S (от 0 до 5). Все результаты промежуточных вычислений выводятся на экран.

Окончательным результатом программы являются значения yi при разных значениях S и f. В ходе работы программы все полученные значения функции в шести точках (краевые значения равны нулю), номер fi, значение S записываются в файл “пакет.xls”, находящийся в корневой папке программы.

ВеличинаS

Номер f

Y(X0)

Y(X1)

Y(X2)

Y(X3)

Y(X4)

Y(X5)

0

1

0

3,980894

4,405836

3,744178

2,085366

0

1

1

0

3,815281

4,056137

3,312149

1,757537

0

2

1

0

3,572898

3,544334

2,705821

1,317501

0

3

1

0

3,485276

3,359318

2,503196

1,182326

0

4

1

0

3,682209

3,77515

3,00631

1,556194

0

5

1

0

3,976915

4,397435

3,742575

2,090463

0

0

2

0

3,654345

3,738309

2,965904

1,52744

0

1

2

0

3,76441

3,971378

3,229848

1,709948

0

2

2

0

3,518236

3,450089

2,601282

1,245099

0

3

2

0

3,341685

3,076232

2,180668

0,955433

0

4

2

0

3,555327

3,528633

2,722247

1,353371

0

5

2

0

3,761977

3,966227

3,222206

1,702749

0

0

3

0

3,282824

2,971335

2,073229

0,886283

0

1

3

0

3,558644

3,557061

2,754581

1,373147

0

2

3

0

3,478538

3,38695

2,534976

1,200369

0

3

3

0

3,227626

2,854118

1,930523

0,780543

0

4

3

0

3,44936

3,324987

2,488143

1,185269

0

5

3

0

3,528437

3,492915

2,659427

1,289651

0

0

4

0

3,139643

2,686186

1,744918

0,652842

0

1

4

0

3,290331

3,00709

2,123044

0,925397

0

2

4

0

3,427463

3,299129

2,443318

1,140144

0

3

4

0

3,136968

2,68049

1,738587

0,648716

0

4

4

0

3,360464

3,156446

2,296553

1,049075

0

5

4

0

3,312564

3,054439

2,152857

0,929362

0

0

5

0

3,192476

2,817918

1,892702

0,752538

0

1

5

0

3,082047

2,582085

1,643681

0,591647

0

2

5

0

3,346448

3,146744

2,278696

1,029476

0

3

5

0

3,063344

2,542142

1,588454

0,547344

0

4

5

0

3,282893

3,011016

2,132899

0,933796

0

5

5

0

3,134912

2,694983

1,752052

0,654446

0