Чем закончилась попытка создать пролетарскую биологию

  • Вид работы:
    Реферат
  • Предмет:
    Биология
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    28,60 kb
  • Опубликовано:
    2009-01-12
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Чем закончилась попытка создать пролетарскую биологию

Міністерство освіти та науки, молоді та спорту України

Дніпропетровський національний університет ім. О. Гончара

Факультет фізики, електроніки та комп’ютерних систем

Кафедра радіоелектроніки









ПРАКТИЧНА РОБОТА

З дисципліни: «Обчислювальна математика»

на тему: «Розв'язання системи чотирьох лінійних рівнянь. Матричний метод»

Виконав: студент Пономар А.С.

Перевірив: Доц. , к. ф. - р. ф. Скуратовський І.А.



м.Дніпропетровськ 2012

ЗМІСТ

Реферат

Вступ

.        Умова задач

.        Теоретична частина

.        Практична частина: результати вирішення задачі

.        Листинг програми

.        Приклад роботи програми

Висновки

Список використаної літератури

РЕФЕРАТ

Рішення лінійної системи рівнянь матричним методом , написання програми на мові С++ .

Такий метод розв’язання системи лінійних рівнянь використовується в обчислювальній математиці досить часто.

Отримані результати задовольняють заданим умовам поставленої задачі.

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

ЗНАХОДЖЕННЯ ЧОТИРЬОХ НЕВІДОМИХ В ДАНІЙ СИСТЕМІ

ВСТУП

Мета роботи: скласти програму на мові програмування С++, для обчислення чотирьох лінійної системи рівнянь матричним методом.

Дана програма зможе обчислювати будь-яку систему чотирьох лінійних рівнянь заданих користувачем програми. Програма призначена для використання на персональних компьютерах, з використанням новітніх обчислювальних технологій.

Матричний метод обчислення досить часто використовують для рішення такого типу задач, але він не є достатньо ефективним для вирішення чьотирьох лінійної системи рівнянь, бо включає в себе достатньо велику кількість обчислювальних операцій.

Для рішення данного типу задачі у своїй роботі, я використовую мову програмування С++.

1.      УМОВА ЗАДАЧІ

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

Задана система:



                                                (1.1)

Завдання

Скласти програму для рішення цієї системи матричним методом

лінійний матричний алгебраїчний ітераційний

2.      ТЕОРЕТИЧНА ЧАСТИНА

Як відомо матричний метод відноситься до прямих методів (матричний метод, метод Гаусса, метод Крамера ) розв’язку систем , ітераційні методи це (метод Гаусса-Зейделя, метод простої ітерації, метод хорд). Прямі методи, дозволяють знайти рішення за певну кількість кроків. Ітераційні методи, засновані на використанні повторюваного процесу і дозволяють отримати рішення в результаті послідовних наближень.

Багато задач математичного аналізу, диференціальних та інтегральних рівнянь зводяться при чисельному рішенні до вирішення завдань лінійної алгебри і, зокрема, до розв'язання системи лінійних алгебраїчних рівнянь (коротко - СЛАР) виду:



                                                          (2.1)

яка в матричній формі прийме вигляд:


                           (2.2)


                                                        (2.3)

Скрізь далі передбачається, що:


Методи вирішення більшості завдань чисельних методів (у тому числі завдань рішення лінійних алгебраїчних систем) можна розділити на два типи: прямі та ітераційні. Метод рішення задачі називається прямим, якщо він дає її точне рішення за кінцеве число дій. Зауважимо, що при реалізації прямого методу на ЕОМ взагалі кажучи виникає обчислювальна похибка, пов'язана з кінцевим числом розрядів ЕОМ для представлення дійсних чисел. Метод рішення задачі називається ітераційним, якщо він дає точне рішення як межа послідовності наближень, що обчислюються за однакової схемою, тобто


де x - точне рішення задачі, xk - k-те наближення (ітерація) до рішення. При реалізації ітераційного методу на ЕОМ його доводиться обривати на якомусь наближенні з номером K і думати x ≈ x(k). Зазвичай вказують точність ε , з якого потрібно знайти рішення x і умова закінчення ітерацій задають таким чином, щоб норма різниці точного рішення та чергового ітераційного наближення не перевищувала ε. Типові значення задається похибки ε знаходяться в діапазоні 10-3 - 10-8. До прямих методів розв'язування СЛАР відносяться відомий з алгебри метод Крамера, метод Гауса і його модифікації та інші, до ітераційним - метод простої ітерації, метод Зейделя і інші.

Нагадаємо основні поняття та визначення норм у просторі векторів і матриць.


Нехай в просторі векторів                                    введена норма . Тоді ||A|| норма в просторі                                   матриць називається узгодженою з нормою вектора, якщо для будь-якої матриці A і для будь-якого вектора x виконується нерівність:


                        (2.4)

Як приклад наведемо такі узгоджені норми:



                                                                    (2.5)


Надалі будуть завжди використовуватися лише узгоджені векторні та матричні норми.

.        Матриця A називається симетричною, якщо AT = A.

.        Матриця A називається трьохдіагональной, якщо всі елементи, що не знаходяться на головній діагоналі і її сусідніх (наддіагоналі і піддіагоналі), дорівнюють нулю.

. Верхньою (нижньою) трикутньою називається така матриця, у якої дорівнюють нулю усі елементи, розташовані нижче (вище) головної діагоналі.

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

Якщо всі нерівності строгі, то говорять, що матриця A - із строгим діагональним переваженням.


                                     (2.6)

3.      МАТРИЧИЙ МЕТОД

Система лiнiйних рівнянь записується в матричному вигляді, тобто виписуємо всі коефіцієнти, що стоять перед « х1,х2,х3,х4 » також стовпець вільних членів коефіцієнти, що стоять після знаку « = »



                                           В =                   (3.1)

Розв'язання матричного рiвняння зводиться до знаходження оберненої матрицi А-1 i подальшого перемноження її на матрицю вiльних членiв

Формула для знаходження невідомих коефіцієнтів « x1,x2, x3, x4 »

Х=*В (3.2)

Обернена матриця А-1 обчислюється таким чином:

а) знаходиться визначник початкової матрицi А:

A=(3.3)

б) обчислюються алгебраїчнi доповнення до елементiв матрицi

 (3.4)

в) складається матриця, елементами якої є алгебраїчнi доповнення:

А=(3.5)

г) транспонується матриця А. (транспонована матриця - матриця, у якiй строки міняються місцями зі стовпчиками):

С= (3.6)

д) обчислюються елементи оберненої матриці А діленням елементів матриці С на величину detA:

 (3.7)

Правильність розрахунку елементів А-1 можна перевірити, виконуючи перевірку за формулою:

A ==E (3.8)

 - одинична матриця, де всі елементи крім тих, що стоять на головній діагоналі = 0

E= (3.9)

Після знаходження матриця перемножується на стовбець вільних членів В, за формулою:

Х=*В (3.10)

та виконавши дані обчислення отримуємо невідомі: х1,х2,х3,х4 з задої чотирьох лінійної системи рівнянь.

4.      ПРАКТИЧНА ЧАСТИНА: РЕЗУЛЬТАТИ ВИРІШЕННЯ ЗАДАЧІ

 В =

 

5.      ЛИСТИНГ ПРОГРАМИ

#include <iostream>

#include <math.h>0namespace std;minor_ij(int,int); // minor - алгебрарическое дополнениеa[4][4],m[3][3];main(void)

{i=0,j=0;b[4];(;i!=4;i++)<<”a[”<<i+1<<”,1]*x1+a[”<<i+1<<”,2]*x2+a[”<<i+1<<”,3]*x3+a[”<<i+1<<”,4]*x4=b”<<i+1<<”\n”;<<”\n”;(i=0;i!=4;i++)(j=0;j!=4;j++)

{<<”a[”<<i+1<<”][”<<j+1<<”]=”;>>a[i][j];

}(i=0;i!=4;i++)

{<<”b[”<<i+1<<”]=”;>>b[i];

}minor[4][4];(i=0;i!=4;i++)(j=0;j!=4;j++)[i][j]=minor_ij(i,j);det=0;(i=0;i!=4;i++)+=a[0][i]*minor[0][i];(det!=0)

{(i=0;i!=4;i++)(j=0;j!=4;j++)[i][j]=minor[j][i]/det;x[4],p;(i=0;i!=4;i++)

{=0;(j=0;j!=4;j++)+=b[j]*a[i][j];[i]=p;

}(j=0;j!=4;j++)<<”x”<<j<<”=”<<x[j]<<”\n”;

}cout<<”The system has no solutions ”;

}minor_ij(int q=0,int w=0)

{t;s=q+w+2,k,l;(k=0;k!=4;k++)

{(k<q) for(l=0;l!=3;l++)(l>=w) m[k][l]=a[k][l+1];m[k][l]=a[k][l];if (k>q) for(l=0;l!=3;l++)(l>=w) m[k-1][l]=a[k][l+1];m[k-1][l]=a[k][l];

}=m[0][0]*m[1][1]*m[2][2]+m[0][1]*m[1][2]*m[2][0]+m[1][0]*m[2][1]*m[0][2];=t-m[2][0]*m[1][1]*m[0][2]-m[1][2]*m[2][1]*m[0][0]-m[0][1]*m[1][0]*m[2][2];(s%2!=0) t*=-1;t;}

6.      БЛОК СХЕМА ВИКОНАННЯ АЛГОРИТМА ПРОГРАММИ

7.      ПРИКЛАД РОБОТИ ПРОГРАММИ













ВИСНОВОК

Робота присвячена вирішенню чотирьох системи лінійних рівнянь, а саме написанню програми на мові програмування С++ для вирішення поставленої задачі.

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

СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ

1.      Боглаев Ю. П. Учебное пособие для студентов втузов / Боглаев Ю.П. - М.: Высшая школа, 1990. - 544

.        Калиткин Н. Н. Численные методы/ Калиткин Н.Н. - М.: Наука, 1978. - 512с.

.        Самарский А. А. Численные методы/ Самарский А. А., Гулин А. В. - М.: Наука, 1989, 432с.

.        Методические указания к выполнению лабораторных работ по вычислительной математике в среде Mathcad /Сост. Доц. к. ф.- м. н. И. В. Гомилко - Днепропетровск: ДНУ, 2010 (стр. 6-12)

Похожие работы на - Чем закончилась попытка создать пролетарскую биологию

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!