- •Математичні моделі в сапр: методичні вказівки до лабораторних робіт
- •Передмова до методичних вказівок
- •1.Лабораторна робота EvalExpr на тему "Знаходження похибок обчислень"
- •Теоретичні питання.
- •Приклад виконання роботи EvalExpr
- •Варіанти індивідуальних завдань до роботи EvalExpr
- •2.Лабораторна робота DetKram на тему “Розв’язання слр за формулами Крамера”
- •Теоретичні питання
- •Приклад виконання роботи DetKram
- •Варіанти індивідуальних завдань до роботи DetKram
- •Допоміжні матеріали до роботи DetKram Інструкція користувачу до додатку InteractiveDet
- •Приклад змісту вхідного файла Det.Inp:
- •Вихідні файли програми.
- •Натискання клавіші “Введення з файлу”.
- •Натискання клавіші “Зменшити у рядку”.
- •Натискання клавіші “Зменшити у стовпці”.
- •Натискання клавіші “Зменшити розміри”.
- •Завершення роботи додатку.
- •3.Лабораторна робота InvMatr на тему “Розв’язання слр за методом оберненої матриці”
- •Теоретичні питання
- •Приклад виконання роботи InvMatr
- •Варіанти індивідуальних завдань до роботи InvMatr
- •Допоміжні матеріали до роботи InvMatr Програма AdjMatr
- •Інструкція користувачу до додатку InteractiveAdjMatr
- •4.Лабораторна робота Gauss на тему „Наближене розв`язання слр методами виключення невідомих”
- •Теоретичні питання
- •Приклад виконання роботи Gauss
- •2В. Обчислення компонент вектора нев’язки.
- •3A. Знаходження наближеної оберненої матриці за методом Гауса.
- •3B. Знаходження компонент наближеного розв’язку .
- •3C. Знаходження компонент вектору нев’язки
- •5. Знаходження міри обумовленості головної матриці системи.
- •Варіанти індивідуальних завдань до роботи Gauss
- •Додаткові матеріали до роботи Gauss Програма NormVect знаходження різних норм вектора
- •Програма NormMatr знаходження різних норм матриці
- •Процедура g3v33l4
- •Модуль GaussRow
- •Iнструкцiя користувачу до програми InteractiveGauss
- •5.Лабораторна робота LinSysIt на тему “Ітераційні методи розв’язання слр”
- •Теоретичні питання
- •Приклад виконання роботи LinSysIt
- •Варіанти індивідуальних завдань до роботи LinSysIt
- •Допоміжні матеріали до роботи LinSysIt Програма NormForm
- •Програма SysIter
- •Програма Zeidel
- •6.Лабораторна робота TransEq на тему "Розв'язання трансцендентних рівнянь з одним невідомим"
- •Теоретичні питання
- •Приклад виконання роботи TransEq
- •Розрахункова таблиця знаходження кореня
- •Розрахункова таблиця знаходження кореня
- •Розрахункова таблиця знаходження кореня
- •Уточнення відокремленого кореня за методом простих ітерацій.
- •Розрахункова таблиця знаходження кореня рівняння за методом простих ітерацій
- •Розрахункова таблиця знаходження кореня рівняння за методом простих ітерацій
- •Варіанти індивідуальних завдань до роботи TransEq
- •Додаткові матеріали до роботи TransEq Інструкція користувачу для роботи з додатком TranscEq
- •Робота з додатком TranscEq
- •7.Лабораторна робота NonLinSys на тему „Розв’язання систем нелінійних рівнянь”
- •Теоретичні питання
- •Приклад виконання роботи NonLinSys
- •Розрахункова таблиця знаходження роз'вязку
- •Варіанти індивідуальних завдань до роботи NonLinSys
- •Допоміжні матеріали до роботи NonLinSys Інструкція користувачу для роботи з програмою Newton2
- •Текст програми Newton2
- •Текст модуля Funct
- •Текст модуля NewtonS
- •8.Лабораторна робота SelfEq на тему ”Знаходження характеристичного рівняння”
- •Теоретичні питання
- •Приклад виконання роботи SelfEq
- •Варіанти індивідуальних завдань до роботи SelfEq
- •9.Лабораторна робота SelfVect на тему “Знаходження власних векторів”
- •Теоретичні питання.
- •Приклад виконання роботи SelfVect
- •Варіанти індивідуальних завдань до роботи SelfVect
- •Література
Вихідні файли програми.
Якщо додаток обробляє матрицю, яка завантажена, наприклад з файлу Name.inp, то наслідком роботи додатку буде файл Name.out, у якому відображено процес інтерактивного знаходження визначника.
Опис інтерактивного алгоритму знаходження визначника.
Натискання клавіші “Введення з файлу”.
Закриваються всі відкриті файли (якщо такі були). З вікна редагування Файл додаток одержує нове ім’я файла, наприклад Name.inp. Формується і'мя результуючого файлу Name.out. Відкриваються результуючий файл з цим іменем і починається запис до нього матриці, яка буде оброблятися. Встановлюються за замовчанням значення Рядок=1 і Стовпець=1.
Натискання клавіші “Зменшити у рядку”.
У поточному рядку з номером Рядок=j шукаємо відмінний від нуля елемент мінімальний за абсолютною величиною. Позначимо його (якщо він є) через аjm .
1). Якщо такого елементу нема, то виводиться повідомлення (під сіткою і над клавішами) Значення визначника = 0. Виводяться також відповідний запис у результуючий файл.
2). Якщо такий
елемент знайдений (аjm
≠ 0 існує, j
та m
фіксовані), то здійснюється цикл за
стовпцями s
без включення того стовпця, у якому
знаходиться елемент аjm
(s
≠ m).
Для кожного стовпця s,
знаходимо цілу частину відношення
.
Нехай це число r.
Множимо стовпець m
на число
,
де
sign
x
- знак числа x
≠ 0, і від стовпця s
віднімаємо
результат цього множення. Зрозуміло,
що при такому перетворенні визначник
старої поточної матриці буде рівним
визначнику нової поточної матриці.
Після здійснення
повного циклу (за стовпцями s)
одержуємо, що у рядку j
всі елементи нової поточної матриці
будуть за абсолютною величиною менші
ніж абсолютна величина елементу
.
Далі здійснюється запис нової поточної матриці у вихідні файли.
Натискання клавіші “Зменшити у стовпці”.
Дії при натисканні цієї клавіші цілком аналогічні натисканню клавіші “Зменшити у рядку” з заміною “рядка” на “стовпець”. Відповідне переформулювання залишаємо студентові.
Натискання клавіші “Зменшити розміри”.
1). При розмірі матриці більш ніж одиниця:
Для поточних
значень
Рядок=j
і Cтовпець=k
проводиться
перевірка: як всі елементи рядка j
або всі елементи стовпця k
за виключенням
елемента
(що знаходиться
на перетині рядка j
і стовпця
k)
є нульовими. Якщо це так, то множник
перед визначником множимо на
і здійснюємо віддалення рядка j
та стовпця
k
поточної
матриці.
Далі здійснюється запис нової поточної матриці у результуючий файл.
Якщо значення множника стане рівним нулеві, то виводиться повідомлення (під сіткою StringGrid) Значення визначника = 0. Також виводимо відповідний запис у результуючий файл.
2). При розмірі
матриці рівним одному: здійснюється
множення множника на єдиний елемент
поточної матриці
і виводиться повідомлення (під сіткою)
Значення
визначника
= ХХХХХ,
де ХХХХХ
– одержане значення визначника. Виводимо
також відповідний запис у результуючий
файл.
Завершення роботи додатку.
Завершення роботи додатку InteractiveDet здійснюємо натисканням кнопки Закрыть приложение у правому верхньому куті форми. Після цього додаток закриває результуючий файл і завершує роботу.
