Файл: Отчет по лабораторной работе по дисциплине Вычисления в инфокоммуникациях.docx

ВУЗ: Не указан

Категория: Отчет по практике

Дисциплина: Не указана

Добавлен: 05.12.2023

Просмотров: 84

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
ФЕДЕРАЛЬНОЕ Государственное АВТОНОМНОЕ образовательное УЧРЕЖДЕНИЕ ВЫСШЕГО образованияБЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ(НИУ «БелГУ»)ИНСТИТУТ ИНЖЕНЕРНЫХ И ЦИФРОВЫХ ТЕХНОЛОГИЙКАФЕДРА ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННЫХ СИСТЕМ И ТЕХНОЛОГИЙОтчет по лабораторной работепо дисциплине: «Вычисления в инфокоммуникациях»Лабораторная работа №2. «Итерационные методы решения системы линейных алгебраических уравнений»студент заочного отделения 2 курса 12002153 группыПасивенко А.Ю.Проверил: Балабанова Татьяна НиколаевнаБелгород 2023Цель работы: освоить реализацию алгоритмов решения систем линейных алгебраических уравнений итерационными методами.1. Задание: Реализовать метод простых итераций решения системы линейных алгебраических уравнений. Система линейных уравнений имеет вид .Данные:

7.

0,1

0,3

0,1

0,2

9




0,4

0,1

0,1

0,2

5




0,1

0,2

0,2

0,1

2




0,1

0,2

0,1

0,2

9
Суть метода заключается в последовательном приближении к искомому значению, зная только приблизительное значение при помощи итераций. Т.е. в данном случае СЛАУ записана в виде , где D - квадратичная числовая матрица n – порядка;X - n – мерный вектор, неизвестная величина, которую требуется найти.F - n – мерный вектор (известный, заданный столбец свободных членов).
Затем необходимо задать начальное приближение, чаще всего его задают нулями.Была составлена блок-схема:Рисунок 1 – Блок-схема метода простых итерацийЛистинг программыclear, clc;A=[0.1 0.4 0.1 0.1; 0.3 0.1 0.2 0.2; 0.1 0.1 0.2 0.1; 0.2 0.2 0.1 0.2];B=[9; 5; 2; 9;];e=0.001; N=4; p=1; %коэффициент апостериорной проверкиX=zeros(size(B)); %начальное приблежённоеwhile p>eX1=A*X; %вектор решений на предыдущем шагеfor i=1:NX1(i,1)=X1(i,1)+B(i,1)endfor j=1:NR(j)=abs(X1(j,1)-X(j,1)); %апостериорная проверкаendX=X1; %вектор решенийp=max(R); %апостериорная проверкаendP=A*X+B %проверкаВ результате выполнения программы были получены следующие результатыРисунок 2 – Результат вычисленийПри выполнении проверки были получены следующие результатыРисунок 2 – Результат проверкиЗадание 2. Реализовать метод Якоби решения СЛАУ. Система линейных уравнений имеет вид .Данные:

7.

1,4

0,1

0,1

0,2

5




0,1

1,2

0,2

0,1

2




0,1

0,2

1,1

0,2

9




0,2

0,3

0,1

1,1

7
Для реализации метода Якоби необходимо понять суть метода. Метод Якоби – один из наиболее простых методов приведения системы матрицы к виду, удобному для итерации: из 1-го уравнения матрицы выражаем неизвестное x

1, из 2-го выражаем неизвестное x2 и т.д.Результатом служит матрица В, в которой на главной диагонали находятся нулевые элементы, а все остальные вычисляются по формуле:y(j)=(B(j)-A(j,1:j-1)*x(1:j-1)-A(j,j+1:n)*x(j+1:n))/A(j,j);В ходе проверка должно выполняться условие, что максимальное значение из следующего выражения: |A*y-B|, не должен превышать заданного значения e.Была составлена блок-схема:Рисунок 4 – Блок-схема метода ЯкобиЛистинг программыclc; clear;A=[1.4 0.1 0.1 0.2; 0.1 1.2 0.2 0.3; 0.1 0.2 1.1 0.1; 0.2 0.1 0.2 1.1];B=[5; 2; 9; 7;];e=0.001;N=4; x=zeros(size(B)); y=ones(size(B));while max(abs(A*y-B))>efor j=1:Ny(j)=(B(j)-A(j,1:j-1)*x(1:j-1)-A(j,j+1:N)*x(j+1:N))/A(j,j);endx=yendP=A\B %проверкаПри вычислении были получены следующие результатыРисунок 5 – Результат вычисленийПри выполнении проверки были получены следующие результатыРисунок 6 – Результат проверкиЗадание 3. Реализовать метод Зейделя решения СЛАУ. Система линейных уравнений имеет вид . Данные:

7.

1,4

0,1

0,1

0,2

5




0,1

1,2

0,2

0,1

2




0,1

0,2

1,1

0,2

9




0,2

0,3

0,1

1,1

7



















Метод Зейделя представляет собой некоторую модификацию метода простой итерации. Основная его идея заключается в том, что при вычислении (k+1)-го приближения неизвестной xi учитываются уже вычисленные ранее (k+1) – е приближения неизвестных x1, х2, ...,. И как в простом методе итерации необходимо сначала выбрать произвольно начальные приближения корней.Следует обратить внимание на особенность метода Зейделя, которая состоит в том, что полученное в первом уравнении значение х1(l) сразу же используется во втором уравнении, а значения х1(1), х2(1) – в третьем уравнении и т. д. То есть все найденные значения х1(1) подставляются в уравнения для нахождения хi+1(1)Была построена блок-схема.Рисунок 7 – Блок-схема метода ЗейделяЛистинг программыclc; clear;A=[1.4 0.1 0.1 0.2; 0.1 1.2 0.2 0.3; 0.1 0.2 1.1 0.1; 0.2 0.1 0.2 1.1];B=[5; 2; 9; 7;];e=0.001;x0=B; x1=B; N=4;for i=1:1:Ns=0;for j=1:1:Ns=s+(A(i,j)*x0(j));endx1(i)=s+B(i);endwhile abs(x0(i)-x1(i))>ex0=x1;for i=1:1:Ns=0;for j=1:1:Ns=s+(A(i,j)*x0(j));endx1(i)=s+B(i)endendP=A*x1+BПо результатам выполнения программы были получены следующие результатыРисунок 8 – Результат вычисленийПри выполнении проверки были получены следующие результатыРисунок 9 – Результат проверкиВывод: В ходе выполнения лабораторной работы были изучены и реализованы алгоритмы решения систем линейных алгебраических уравнений итерационными методами. А именно были реализованы методы простой итерации, метод Якоби и метод Зейделя. Были составлены блок- схемы и реализованы в программе Matlab.