DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт про виконання лабораторної роботи № 2 з курсу «Алгоритмічні основи криптології» на тему: «Ітераційні методи розв’язування систем лінійних алгебраїчних рівнянь»

Оригінальна назва роботи

Ітераційні методи розв’язування систем лінійних алгебраїчних рівнянь

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Не вказано

Інформація про роботу

Рік:
2007
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Алгоритмічні основи криптології
Група:
ІБ – 42
Коротко про документ

Про що ця робота

У звіті розглядаються ітераційні методи розв'язування систем лінійних алгебраїчних рівнянь. Наведено теоретичні відомості, блок-схему алгоритму, програму мовою C та результати обчислень.

У роботі розглядаються

  • Чисельні методи
  • Системи лінійних алгебраїчних рівнянь
  • Метод простої ітерації
  • Алгоритмічні основи криптології
  • Програмування мовою C
  • Похибки обчислень

Зміст і розділи

  1. Теоретичні відомості
  2. Метод простої ітерації
  3. Вихідна система лінійних алгебраїчних рівнянь
  4. Блок-схема алгоритму
  5. Текст програми
  6. Результат виконання програми
  7. Висновок
Для кого:Студенти технічних спеціальностей та виші, які вивчають дисципліни з криптології, чисельних методів та програмування.
Викладачі:Лагун А.Е.

Ключові поняття

ітераційний методсистема лінійних рівняньметод простої ітераціїпохибкаматрицяалгоритмкриптологіяпрограмазбіжність

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НУ ”Львівська політехніка” Звіт про виконання лабораторної роботи №2 з курсу: ”Алгоритмічні основи криптології” на тему: ”Ітераційні методи розв’язування систем лінійних алгебраїчних рівнянь ” Львів-2007 Теоретичні відомості Методи чисельного розв‘язування систем лінійних рівнянь поділяються на дві групи: 1) „точні” (прямі) методи, які дозволяють одержати розв‘язок, якщо він існує, як скінченну кількість арифметичних операцій (наприклад: метод Крамера, метод Жордана-Гауса та ін.); 2) наближені (ітераційні) методи, які дозволяють одержати розв‘язки системи лінійних рівнянь лише з заданою точністю з припущенням, що обчислення проводиться без округлень. Точний розв‘язок в даному випадку можна одержати я к результат нескінченно збіжного процесу. До таких методів відносять метод простої ітерації, метод Зейделя та ін. „Точні” методи використовуються при розв‘язуванні на ЕОМ систем невисокого порядку (n<103 де n - число лінійних алгебраїчних рівнянь системи). Наближені методи використовуються для систем високого порядку (n=103ч106). Переваги наближених методів (метод простих ітерацій) над точними (метод Гауса) є такими: 1. Час обчислень пропорційний n2 на ітерацію, тоді як для методу виключення час обчислень пропорційний n3. Якщо для розв‘язку потрібно менше ніж n ітерацій, то затрати машинного часу будуть менші. 2. Як правило, похибки округлення при ітераційному методі впливають на остаточні результати значно менше, ніж при розв‘язуванні методом Гауса, оскільки при його використанні похибки не нагромаджуються. 3. Метод ітерацій стає особливо зручним при розв‘язку систем, переважна кількість коефіцієнтів яких дорівнює 0. Недоліком методу ітерацій є те, що рішення не завжди збігаються. Метод простої ітерації. Нехай задана система лінійних алгебраїчних рівнянь: , (1) де , , . Будемо вважати, що діагональні коефіцієнти матриці А , . Розв‘яжемо перше рівняння системи (1) відносно , друге - відносно  і т.д. Тоді отримаємо еквівалентну систему: , (2) де  при ;  при , . Введемо позначення: ,. Тоді систему (2) можна записати: . (3) Задамося вектором початкового наближення , де - довільні числа. Тоді послідовно знаходимо перше наближення: , друге наближення: , і т.д. довільне (K+1) наближення обчислюється за формулою: , , (4) або в розгорнутому вигляді: , . Ітераційний процес закінчують тоді, коли: , , де Е - гранична абсолютна похибка. Методом простої ітерації можна визначити розв‘язок системи рівнянь лише у випадку, коли цей метод є збіжним. Доведено, що якщо елементи матриці  задовольняють одну з умов: , , (5) , , (6) то процес ітерації збігається до точного розв‘язку при будь-якому векторі нульового наближення. Як правило, за вектор нульового наближення приймають стовпчик вільних членів . Вихідна система лінійних алгебраїчних рівнянь A= 24,21+s 2,42 3,85 2,31 31,49 1,52 3,49 4,84 28,72+s 30,24 40,95-r 42,81 де s = 0.2*k , r = 0.2*p, k=6, p=0. Блок-схема алгоритму    /*Текст програми розв’язку системи лінійних алгебраїчних рівнянь методом простої ітерації */ #include <stdio.h> #include <math.h> const int m=3; void main(void) /* оголошення змінних */ { typedef double matrix[3][3]; typedef double vector[3]; matrix a, alpha; vector b, beta, x, x0; int i, j, k; int rez=0; double E; /* вводимо значення матриці коефіцієнтів системи і вектора вільних членів */ for(i=0;i<m;i++) { for(j=0;j<m;j++) { printf("a[%d,%d]?:", i+1, j+1); scanf("%lf", &a[i][j]); } printf("b[%d]?:", i+1); scanf("%lf", &b[i]); } /* присвоєння значень ά і β*/ for(i=0;i<m;i++) { for(j=0;j<m;j++) { if (i!=j) alpha[i][j]=-a[i][j]/a[i][i]; else alpha[i][i]=0; } beta[i]=b[i]/a[i][i]; } /* вводимо значення похибки Е */ { printf("E="); scanf("%lf", &E); /* присвоюємо початкові наближення */ for(i=0;i<m;i++) x0[i]=beta[i]; /* перевірка виконання умови */ while (!rez) { rez=1; for(i=0;i<m;i++) { x[i]=beta[i]; for(j=0;j<m;j++) x[i]+=x0[j]*alpha[i][j]; rez*=(fabs(x[i]-x0[i])<E); } for(i=0;i<m;i++) x0[i]=x[i]; } /* виводимо результати виконання програми */ for(i=0;i<m;i++) printf("x[%d]=%lf\n", i+1, x[i]); /* здійснюємо перевірку перавильності виконаних обчислень */ for (i=0; i<n; i++) { q=0; for (j=0;j<(m-1);j++) q+=d[i][j]*x[j]; printf ("q%d=%lf\n",i,q); } } Результат виконання програми  Висновок: під час виконання даної лабораторної роботи ми вивчили найбільш поширені методи розв’язку системи лінійних алгебраїчних рівнянь. Похибки округлень при ітераційному методі впливають на остаточні результати значно менше, ніж при розв’язку за методом Гауса, оскільки при його використані похибки не нагромаджуються. Метод ітерації стає особливо зручним при розв’язку систем переважна кількість коефіцієнтів яких дорівнює 0. Недоліком методу ітерації є те, що рішення не завжди збігаються.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!