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

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

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

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

Системи нелінійних рівнянь. Метод Ньютона та E-алгоритм

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

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

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

Рік:
2014
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Комп’ютерні методи дослідження систем керування
Група:
СІ-21
Коротко про документ

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

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

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

  • Чисельні методи
  • Системи нелінійних рівнянь
  • Метод Ньютона
  • E-алгоритм
  • Програмування мовою C++
  • Дослідження систем керування

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

  1. Мета роботи
  2. Завдання
  3. Код програми
  4. Результат роботи програми
Для кого:Студенти технічних спеціальностей вищих навчальних закладів.
Викладачі:Не вказано

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

метод НьютонаE-алгоритмнелінійні рівнянняпочаткове наближенняітераційний методC++масивпохибкаобчисленнясистеми керування

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

Міністерство освіти та науки України Національний університет “Львівська політехніка” Звіт до лабораторної роботи № 4 з курсу “Комп’ютерні методи дослідження систем керування” СИСТЕМИ НЕЛІНІЙНИХ РІВНЯНЬ. МЕТОД НЬЮТОНА ТА -АЛГОРИТМ Варіант #16 Мета роботи: ознайомитися з найпоширенішим ітераційним методом розв’язування систем нелінійних рівнянь – методом Ньютона та екстраполяційним методом – -алгоритмом. Завдання: 16 -алгоритм    поч. наближення  Код програми: #include "iostream" using namespace std; int main(void) { const int m = 2; const int n = 5; int q = m; int p = 2; double sum; double e[n + 1][n + 1][m], V[m], x[m] = {0.5, 0.5}; double ee = pow(10.0, -7); bool con_d = false; for (int j = 0; j < n+1; j++) for (int i = 0; i < m ; i++) { e[j][0][i] = 0; } do { con_d = false; for (int j = 1; j <= p; j++) { x[0] = pow(x[0], 2) - pow(x[1], 2) + 0.1; x[1] = 2 * x[0] * x[1] - 0.1; } for (int i = 0; i < m; i++) { e[0][1][i] = x[i]; } for (int j = 0; j <= 2 * q - 1; j++) { e[j + 1][1][0] = x[0] = pow(x[0], 2) - pow(x[1], 2) - 0.1; e[j + 1][1][1] = x[1] = 2 * x[0] * x[1]- 0.1; if (j == 0) { for (int i = 0; i < m; i++) { con_d = con_d || (fabs((e[1][1][i] - e[0][1][i]) / e[1][1][i]) > ee); } if (con_d = false) { break; } } } if (con_d) { for (int k = 1; k <= n - 1; k++) for (int j = 0; j < n - k; j++) { for (int i = 0; i < m; i++) { V[i] = e[j + 1][k][i] - e[j][k][i]; } sum = 0; for (int i = 0; i < m; i++) { sum = sum + V[i] * V[i]; } for (int i = 0; i < m; i++) { V[i] = V[i] / sum; } for (int i = 0; i < m; i++) { e[j][k + 1][i] = e[j + 1][k - 1][i] + V[i]; } } for (int i = 0; i < m; i++) { x[i] = e[0][n][i]; } } } while (con_d); for (int i = 0; i < m; i++) { cout << "x["<< i + 1 <<"] = " << x[i] << endl; } cout << "f[1] = " << pow(x[0], 2) - pow(x[1], 2)- 0.1-x[0] << endl; cout << "f[2] = " << 2 * x[0] * x[1] - 0.1- x[1] << endl; system("pause"); return 0; } Результат роботи програми: /
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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