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

чм3

.pdf
Скачиваний:
8
Добавлен:
01.12.2024
Размер:
716 Кб
Скачать
☆

Рисунок 2.7 – Результат работы программы для второй последовательности точек

Рисунок 2.8 – Результат работы программы для третьей последовательности точек

Вычисленные с помощью программы значения совпадают со

значениями, полученными в пункте 2.1.

2.3 Построение аппроксимирующей квадратной функции с помощью

метода наименьших квадратов

Для построения аппроксимирующей квадратной функции была реализована программа, представленная в приложении Б.

В основе программы лежит система для нахождения коэффициентов функции (2.2) и формула квадратичной функции (2.3):

∙ ∑ 4

+ ∙ ∑ 3

+ ∙ ∑ 2

= ∑ 2

;

 

 

 

 

 

 

 

 

=0

=0

=0

=0

 

 

 

 

 

 

 

 

 

 

∙ ∑ 3

+ ∙ ∑ 2

+ ∙ ∑

= ∑ ;

(2.2)

 

 

 

 

 

 

 

=0

=0

=0

=0

 

 

 

 

 

 

 

 

 

 

 

∙ ∑ 2

+ ∙ ∑ + ∙ = ∑

{

 

 

 

=0

=0

=0

= 2 + +

(2.3)

Для решения системы уравнений используется метод Зейделя.

На рисунках 2.9-2.11 представлены результаты работы программы для трех последовательностей точек.

Рисунок 2.9 – Результат работы программы для первой последовательности точек

Рисунок 2.10 – Результат работы программы для второй последовательности точек

Рисунок 2.11 – Результат работы программы для третьей последовательности точек

Для первой последовательности точек формула квадратичной функции

(2.4) имеет вид:

= 3,599 2 + 0,289 + 3,941

(2.4)

Для второй последовательности точек формула квадратичной функции

(2.5) имеет вид:

= −0,926 2 + 3,897 − 0,726

(2.5)

 

Для третьей последовательности точек формула квадратичной функции

(2.6) имеет вид:

= −0,112 2 + 0,400 − 0,285

(2.6)

 

На рисунках 2.12-2.14 представлны графики последовательностей точек и их аппроксимирующих функций.

Рисунок 2.12 – Аппроксимация ряда точек первой последовательности

Рисунок 2.13 – Аппроксимация ряда точек второй последовательности

Рисунок 2.14 – Аппроксимация ряда точек третьей последовательности

2.4Анализ результатов

Втаблицах 2.4-2.6 представлены результаты для трех последовательностей точек.

Таблица 2.4 – Результаты для первой последовательности

x

y(x)

L2(x)

∆x = |y(x) – L 2(x)|

̃ ( )

∆x = |y(x) – ̃ ( )|

 

 

 

 

 

 

xi = 1.6

10.1949

10.1949

0

13.6149

3.42

 

 

 

 

 

 

x* = 1.1

-

10.5772

-

8.6125

-

 

 

 

 

 

 

1=3̃

-

44.8340

-

37.1942

-

 

 

 

 

 

 

2=4̃ .5

-

168.6571

-

78.1124

-

 

 

 

 

 

 

Таблица 2.5– Результаты для второй последовательности

x

y(x)

L2(x)

∆x = |y(x) – L 2(x)|

̃ ( )

∆x = |y(x) – ̃ ( )|

 

 

 

 

 

 

xi = 1.6

2.8226

2.8226

0

3.1394

0.3168

 

 

 

 

 

 

x* = 1.1

2.4506

2.4515

0.0009

2.4404

0.0102

 

 

 

 

 

 

1=3̃

3.4484

3.4476

0.0008

2.6342

0.8142

 

 

 

 

 

 

2=4̃ .5

3.8528

3.7695

0.0833

-1.9339

1.9189

 

 

 

 

 

 

Таблица 2.6 – Результаты для третьей последовательности

x

y(x)

L2(x)

∆x = |y(x) – L 2(x)|

̃ ( )

∆x = |y(x) – ̃ ( )|

 

 

 

 

 

 

xi = 1.6

0.9870

0.9870

0

0.06696

0.9200

 

 

 

 

 

 

x* = 1.1

-0.9826

-0.8836

0.099

0.0188

0.9638

 

 

 

 

 

 

1=3̃

-0.8733

-2.9968

2.1235

-0.0749

0.7984

 

 

 

 

 

 

2=4̃ .5

0.0163

-55.1570

55.1737

-0.7634

0.7801

 

 

 

 

 

 

Из анализа полученных данных можно заключить, что для функций,

аналогичных первой последовательности точек, предпочтительнее применять полином Лагранжа, поскольку он обеспечивает значительно меньшую погрешность по сравнению с методом наименьших квадратов (МНК).

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

Для периодических функций рекомендуется применять полином Лагранжа для вычисления промежуточных значений, а метод наименьших квадратов — для оценки прогнозных точек.

Также можно сделать вывод о том, что выбор метода построения приближенной функции зависит от типа функции.

Заключение

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

Приложение А

double[] X = { 0.0, 0.2, 0.4, 0.6, 0.8, 1.0, 1.2, 1.4, 1.6, 1.8, 2.0, 2.2, 2.4, 2.6, 2.8};

//y1

//double[] Y = { 1.172229425, 4.551715624, 7.466763616, 6.871556362, 4.374340838, 9.470381565, 10.72324083, 10.73028883, 10.19491856, 16.12438536, 23.9858893, 18.74725305, 22.75740465, 28.37326328, 35.7321433};

//y2

//double[] Y = { -2.302585093, 0.783901544, 1.453953010, 1.851599470, 2.135349174, 2.356125860, 2.536866389, 2.689886230, 2.822568655, 2.939690883, 3.044522438, 3.139399623, 3.226050029, 3.305787197, 3.379633204};

//y3

double[] Y = { 0.010796117, -0.982827061, -0.352638252, 0.860174137, 0.651819843, - 0.633461325, -0.872147284, 0.330115293, 0.986966382, 0.013166561, -0.982386853, - 0.354855585, 0.858962707, 0.653615822, - 0.631625227 };

void Lagrange(double x)

{

if (x <= 0.0)

{

double y = (((x - X[1]) * (x - X[2])) / ((X[0] - X[1]) * (X[0] - X[2])))

* Y[0] +

(((x - X[0]) * (x - X[2])) / ((X[1] - X[0]) * (X[1] - X[2]))) * Y[1] +

(((x - X[0]) * (x - X[1])) / ((X[2] - X[0]) * (X[2] - X[1]))) * Y[2];

Соседние файлы в предмете Численные методы