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

ЧМ Лабораторная работа 2

.pdf
Скачиваний:
0
Добавлен:
17.06.2025
Размер:
526.94 Кб
Скачать

Министерство науки и высшего образования Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра комплексной информационной безопасности электронновычислительных систем (КИБЭВС)

ЧИСЛЕННОЕ РЕШЕНИЕ СИСТЕМЫ НЕЛИНЕЙНЫХ УРАВНЕНИЙ Отчет по лабораторной работе №2 по дисциплине «Численные методы»

Студент гр. 7х3-х

_______ ххххххххх

_______

Принял:

Старший преподаватель КИБЭВС

_______ Катаева Е.С.

_______

Томск 2024

 

Содержание

 

1

Введение..............................................................................................................

3

2

ХОД РАБОТЫ....................................................................................................

4

 

2.1 Решение НУ. Метод Ньютона..................................................................

4

Заключение.............................................................................................................

6

Приложение А........................................................................................................

7

2

1 Введение

Целью работы является освоение методов отделения и уточнения решения систем нелинейных уравнений.

3

2 ХОД РАБОТЫ

2.1 Решение НУ. Метод Ньютона.

Для тестовой и индивидуальной (2.1) систем нелинейных уравнений было написано программное решение, представленное в приложении А.

3 x22+2 x1 x2+3 x1

+2=0 ;

(2.1)

2

5 x1 x2 7 x

2 14=0

{2 x1

 

Исходя из графика, решения находятся в отрезках x1 [-3,5; -3] [-2,5; - 1,5]; х2 [-1; -0,5] [1,5; 2,5], откуда были взяты начальные значения (2.2). График представлен на рисунке 2.1.

Рисунок 2.1 – График

x1(0)=−2,3; x(20)=2,3

(2.2)

[x1(0)=−3 ,5; x(20)=−1

 

При написании программного решения была использована итерационная формула для метода Ньютона (2.3).

( +1)= (1)( )( )

(2.3)

4

На рисунке 2.2 представлен результат работы программы.

Рисунок 2.2 – Результат В таблице 2.1 представлены полученные значения для проверочной и

индивидуальной систем.

Таблица 2.1 – Результаты решения систем

 

Начальная точка

Число итераций

Решение

 

 

 

 

Проверочная

x(0)=(11,5,5)

2

=(1,5021,545)

система

 

 

 

 

 

 

 

Индивидуальная

x(0)=(22,3,3)

4

=(22)

 

 

 

система

 

 

 

x(0)=(31,5)

6

=(0,8663 ,35 )

 

5

Заключение

В ходе данной лабораторной работы были освоены методы отделения и уточнения решения систем нелинейных уравнений.

6

Приложение А Метод Ньютона

double eps = 0.001; int iterations1 = 0; int iterations2 = 0;

void NewtonTest(double x0, double y0)

{

double F1 = y0 * y0 * y0 - x0 * x0 - 1; double F2 = y0 * x0 * x0 * x0 - x0 - 4;

double dxF1 = -2*x0; double dyF1 = 3*y0*y0;

double dxF2 = 3*y0*x0*x0-1; double dyF2 = x0*x0*x0;

double dxy = (dxF1 * dyF2) - (dyF1 * dxF2);

double x_n = x0 - ((1/dxy)*(dyF2*F1 - dyF1*F2));

double y_n = y0 - (-(1 / dxy) * (dxF2 * F1 + dxF1 * F2));

if (Math.Abs(x_n-x0) < eps)

{

Console.WriteLine($"Корни уравнения: {x_n} ; {y_n}"); Console.WriteLine($"Количество итераций: {iterations1}");

}

else

{

iterations1++;

7

NewtonTest(x_n, y_n);

}

}

void NewtonTask(double x0, double y0)

{

double F1 = 3*y0*y0+2*x0*y0+3*x0+2; double F2 = 2*x0*x0-5*x0*y0-7*y0-14;

double dxF1 = 2*y0+3; double dyF1 = 6*y0+2*x0; double dxF2 = 4*x0-5*y0; double dyF2 = -5*x0-7;

double dxy = (dxF1 * dyF2) - (dyF1 * dxF2);

double x_n = x0 - ((1 / dxy) * (dyF2 * F1 - dyF1 * F2)); double y_n = y0 - (-(1 / dxy) * (dxF2 * F1 + dxF1 * F2));

if (Math.Abs(x_n - x0) < eps)

{

Console.WriteLine($"Корни уравнения: {x_n} ; {y_n}"); Console.WriteLine($"Количество итераций: {iterations2}");

}

else

{

iterations2++; NewtonTask(x_n, y_n);

}

8

}

NewtonTest(1.5, 1.5);

Console.WriteLine();

NewtonTask(-2.3, 2.3);

NewtonTask(-3.5,-1);

9