Комп’ютерні методи дослідження інформаційних процесів і систем

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

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

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

Рік:
2010
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Метрологія
Група:
БІ

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

Міністерство освіти і науки України Національний університет «Львівська Політехніка» Інститут комп’ютерних технологій автоматики та метрології Кафедра захисту інформації / Звіт Про виконання лабораторної роботи № 5 «Комп’ютерні методи дослідження інформаційних процесів і систем» (Варіант3) Мета роботи: ознайомлення з напоширенішим ітераційним методом розвязування систем нелінійних рівнянь – модифікованим методом Ньютона. Завдання: Ознайомитись з основними теоретичними відомостями. Розробити детальну блок-схему алгоритму методу. Написати програму, яка забезпечить розв’язок та виведення на екран результатів роботи. Ввести в комп’ютер програму згідно з отриманим завданням. Здійснити відладку введеної програми, виправивши виявлені помилки. Виконати програму. Текст відлагодженої програми та отримані результати оформити у звіт з лабораторної роботи. варіант Система рівнянь Метод Початкові наближення Похибка  3  Модифікований Ньютона  х1 = -1 х2 = 1 0,0001   Блок-схеми: початок введення х1,х2,Е обчислення якобіана обчислення визначника матриці обчислення оберненого якобіана обчислення функції Обчислення нових іксів   while (dE>E); Вивести х1,х2 кінець Остаточна версія програми: #include <stdafx.h> #include <iostream> #include <math.h> using namespace std; double xs[2],xn[2],jac[2][2],F[2],Jobernene[2][2],E,det,dE; int i,j,ins; double sqr(double a) { return a*a; } int main() { cout<<"Vvedit: x1,x2,E\n"; cin>>xs[0]>>xs[1]>>E; do { jac[0][0]=(1-(xs[0]*xs[0]-2*xs[0]*xs[0])/(sqr((xs[0]*xs[0]+xs[1]*xs[1])))); jac[0][1]=(2*xs[0]*xs[1])/(sqr((xs[0]*xs[0]+xs[1]*xs[1]))); jac[1][0]=(2*xs[0]*xs[1])/(sqr((xs[0]*xs[0]+xs[1]*xs[1]))); jac[1][1]=(1-(xs[0]*xs[1]-2*xs[1]*xs[1])/((sqr((xs[0]*xs[0]+xs[1]*xs[1]))))); det = jac[1][ 1] * jac[0][ 0] - jac[0][ 1] * jac[1][ 0]; Jobernene[0][ 0] = (1 / det) * jac[1][ 1]; Jobernene[0][ 1] = ((-1) / det) * jac[1][ 0]; Jobernene[1][ 0] = ((-1) / det) * jac[0][ 1]; Jobernene[1][ 1] = (1 / det) * jac[0][ 0]; F[0]=xs[0]-(xs[0]/(sqr(xs[0])+sqr(xs[1])))+0.4; F[1]=xs[1]-(xs[1]/(sqr(xs[0])+sqr(xs[1])))-1.4; xn[0]=xs[0]-Jobernene[0][0]*F[0]+Jobernene[1][0]*F[1]; xn[1]=xs[1]-Jobernene[0][1]*F[0]+Jobernene[1][1]*F[1]; dE=(xn[0]-xs[0])/xs[0]; if(((xn[1]-xs[1])/xs[1])<dE)dE=((xn[1]-xs[1])/xs[1]); xs[0]=xn[0]; xs[1]=xn[1]; } while (dE>E); cout<<"x1="<<xn[0]; cout<<"x2="<<xn[1]; cin>>ins; Результати роботи програми: / Висновок: В цій лабораторній роботі я ознайомився з основним методом розвязання систем нелінійних рівнянь – модифікованим методом Ньютона. Дана програма розвязує систему з n рівнянь методом Ньютона без обертання матриці Якобі з заданою точністю і виводить результати роботи на екран.
Антиботан аватар за замовчуванням

24.01.2013 00:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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