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

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

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

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

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

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

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

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

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

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

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

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

  • Числові методи
  • Системи нелінійних рівнянь
  • Метод Ньютона
  • Матриця Якобі
  • Метод Гауса
  • Програмування на C++

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»  Звіт До лабораторної роботи №4 З курсу: Комп’ютені методи дослідження систем керування На тему: СИСТЕМИ НЕЛІНІЙНИХ РІВНЯНЬ. МЕТОД НЬЮТОНА ТА -АЛГОРИТМ Мета роботи: ознайомитися з найпоширенішим ітераційним методом розв’язування систем нелінійних рівнянь – методом Ньютона та екстраполяційним методом – -алгоритмом. Завдання: 9 Метод Ньютона з кінцево-різницевою матрицею Якобі (оберт.матриці методом Гауса з вибор. гол. ел-тів по стовпцю) №9  поч. наближення   Текст програми: #include "stdafx.h" #include<iomanip> #include<iostream> #include<conio.h> #include<math.h> using namespace std; void Func(double*x,double*f) { f[0]=pow(x[0],2)-pow(x[1],2)+0.1-x[0]; f[1]=2.0*x[0]*x[1]-0.1-x[1]; } void main() {int n=2; bool cond_N; double x[2] = {1, 1}, x_old[2] = {1, 1}, J[2][2], ee,x_[2],f_[2],h=1e-6; double INVERS[2][2], E[2][2], V[2][2], C[2][2], P[2], X[2], Y[2], f[2], inx[2]; ee=0.00001; for (int i=0;i<n;i++) for (int j=0;j<n;j++) //Ініціалізація одиничної матриці: { if(i==j) E[i][j]=1; else E[i][j]=0; } do { cond_N=false; Func(x,f); for (int i=0;i<n;i++) for (int j=0;j<n;j++) { for (int k=0;k<n;k++) x_[k]=x[k]; x_[j]=x[j]+h; Func(x_,f_); J[i][j]=(f_[i]-f[i])/h; } double A[2][2], B[2]; for (int b=0;b<n;b++) { for (int i=0;i<n;i++) inx[i]=i; for (int i=0;i<n;i++) // Метод Гауса Прямий хід: for (int j=0;j<n;j++) { V[i][j]=J[i][j]; P[i]=E[i][b]; } for (int k=0;k<n;k++) //матричне сортування { Y[k]=P[k]/V[k][k]; for (int i=k+1;i<n;i++) { P[i]=P[i]-V[i][k]*Y[k]; for (int j=k+1;j<n;j++) { C[k][j]=V[k][j]/V[k][k]; V[i][j]=V[i][j]-V[i][k]*C[k][j]; } } } X[n-1]=Y[n-1]; for (int i=n-2;i>=0;i--) { // обернений хід double Scx=0; for (int j=i+1;j<n;j++) { Scx=Scx+C[i][j]*X[j]; } X[i]=Y[i]-Scx; } for (int i=0;i<n;i++) INVERS[i][b]=X[i]; } double Sinvf; for (int i=0;i<n;i++) { Sinvf=0; for (int j=0;j<n;j++) Sinvf=Sinvf+INVERS[i][j]*f[j]; x[i]=x_old[i]-Sinvf; } for (int i=0;i<n;i++) { cond_N = cond_N || fabs((x[i]-x_old[i])/x[i])*100>ee; x_old[i]=x[i]; } } while(cond_N); cout<<"rozvazok"<<endl; for(int i=0; i<n; i++) cout<<x[i]<<endl; cout<<"Perevirka"<<endl; f[0]=pow(x[0],2)-pow(x[1],2)-0.1-x[0]; f[1]=2.0*x[1]*x[0]+0.1-x[1]; cout<<f[0]; cout<<f[1]; getch(); } РЕЗУЛЬТАТ ПРОГРАМИ: / Висновок: Під час лабораторної роботи я ознайомився з найпоширенішим ітераційним методом розв’язування систем нелінійних рівнянь – методом Ньютона та екстраполяційним методом – -алгоритмом.
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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