- •Міністерство освіти і науки України
- •Практична робота №1 Вивчення будови пеом
- •Теоретичні питання
- •Практична робота №2 Вивчення будови процесора і організації пам’яті
- •Теоретичні питання
- •Практична робота №3 Дослідження логічних елементів
- •Теоретичні питання
- •Практична робота №4 Основи роботи з matlab
- •Теоретичні питання
- •Завдання до практичної роботи:
- •Практична робота №5 Написання програм з використанням умовних операторів
- •Теоретичні питання
- •Практична робота №6 Написання програм з використанням циклічних операторів
- •Теоретичні питання
- •Практична робота №7 Побудова графіків функцій
- •Теоретичні питання
- •Завдання до практичної роботи:
- •Практична робота №8 Рішення алгебраїчних і трансцендентних рівнянь в середовищі matlab
- •Теоретичні питання
- •Варіанти алгебраїчних та трансцендентних рівнянь
- •Практична робота №9 Рішення систем рівнянь в середовищі matlab
- •Теоретичні питання
- •Варіанти систем алгебраїчних рівнянь
- •Практична робота №10 Загальні відомості про програмний комплекс simulink. Побудова простих моделей
- •Теоретичні питання
- •Варіанти завдань
- •Порядок роботи над завданнями:
- •Практична робота №11 Моделі алгебраїчних об'єктів. Форматування об’єктів моделей
- •Теоретичні питання
- •Варіанти завдань.
- •Практична робота №12 Маскування підсистем в Matlab/Simulink
- •Теоретичні питання
- •Варіанти завдань.
- •Список літератури
- •Для нотаток навчально-методичне видання
- •Тир.__ прим. Зам.______
- •43018, М. Луцьк, вул. Львівська, 75
Варіанти алгебраїчних та трансцендентних рівнянь
Таблиця 8.1 – алгебраїчні рівняння для рішення аналітичними методами
№ п/п |
Рівняння |
№ п/п |
Рівняння |
1 |
x3-a=0 |
10 |
e-2x-2a=0 |
2 |
x5+(b-a)x4-abx3+ax2+ax(b-a)-a2b=0 |
11 |
sin ax+cos ax=0 |
3 |
x5+bx4-a4x-a4b=0 |
12 |
sin ax+tg ax=0 |
4 |
x4+2x3(1+a)+x2(4a-1)-2x(1+a)-4a=0 |
13 |
e-ax+eax=0 |
5 |
x5-3x4+(a-b3)x3+3(b3-a)x2-ab3x+3ab3=0 |
14 |
e-ax+eax-1=0 |
6 |
x5-ax3+2x2-2a=0 |
15 |
e-ax+eax-ln a=0 |
7 |
x7+ax5-x2-a=0 |
16 |
ae-x+bex=0 |
8 |
2x-2(a+b)=0 |
17 |
a sin x+b cos x=0 |
9 |
ln sin x-2a=0 |
|
|
Таблиця 8.2 – алгебраїчні і трансцендентні рівняння для рішення чисельними методами
№ п/п |
Рівняння | |
алгебраїчні |
трансцендентні | |
1 |
x4-4x3-10x2+3x-4=0 |
2sin ln|x|=0 |
2 |
x5-5x2+4.5=0 |
arctg tg x=0 |
3 |
x5-x+0.2=0 |
4e-1/|x|-2 |
4 |
x3-0.2x2+0.5x+1.5=0 |
sin sin x |
5 |
x10-1=0 |
2x-4x=0 |
6 |
x8+2x-1.5=0 |
x!+2x-2=0 |
7 |
x4-2x2+8x+1=0 |
ln x+(x+1)3=0 |
8 |
x3+4x2-5x-2=0 |
arctg (x-2)+x=0 |
9 |
6x8-2x2+3=0 |
x2+4sin x-2=0 |
10 |
3.5x5-2.8x3+7.5x-2.5=0 |
x-ln (7-4x) |
11 |
х5+х4+х3+х2+х+1=0 |
e-2x+3/x-1=0 |
12 |
1.5х5+17х-21=0 |
e-6x+3x2-18=0 |
13 |
2x4-3.5x2+3=0 |
ln (4-2x)+x2-2=0 |
14 |
17x9-15x7+13x4+11x3+9x=0 |
3x-9x+1=0 |
15 |
x4+2x3-1=0 |
2x+ln 2x-5.6=0 |
16 |
x10-1=0 |
x+lg x-0.5=0 |
17 |
x7+6x6+x5-4x4+x3-2x2+x-1=0 |
2x!-e-x+5=0 |
Практична робота №9 Рішення систем рівнянь в середовищі matlab
Мета: Вивчення методів рішення систем рівнянь
Теоретичні питання
Розглянемо наступні способи рішення систем лінійних алгебраїчних рівнянь засобами MATLAB:
спосіб обчислення визначників матриці коефіцієнтів системи рівнянь;
матричний спосіб;
за допомогою функції solve ();
за допомогою вбудованої функції nnls ().
Рішення системи лінійних рівнянь за допомогою визначників.
Нехай D – головний визначник матриці коефіцієнтів системи рівнянь, dk – частинний визначник, сформований заміною коефіцієнтів при до k-му невідомому системи рівнянь на коефіцієнти правих частин рівнянь (вільних членів). Тоді невідоме хк обчислюється по виразу:
Необхідно вирішити наступну систему лінійних рівнянь:
Методом визначників рішення системи матиме вигляд:
Тепер представимо визначники у вигляді матриць:
Тоді програма обчислення невідомих матиме вигляд:
Недолік методу визначників полягає в тому, що він вимагає утворення числа матриць на одне більше, ніж число невідомих.
Матричний метод рішення систем лінійних рівнянь.
Нехай А - матриця коефіцієнтів системи рівнянь, В – вектор вільних членів, X – вектор невідомих. Тоді невідомі визначаються:
Для попередньої системи рівнянь:
MATLAB дозволяє вирішувати системи лінійних рівнянь в аналітичному вигляді, коли коефіцієнти рівнянь є символьними змінними. Для цього необхідно визначити символьні змінні за допомогою вбудованої функції syms x, де х— перелік символьних змінних, які відділяються пробілами.
Необхідно розв’язати наступну систему рівнянь:
Рішення:
Програма дозволяє вирішувати рівняння у разі, коли коефіцієнти є числами комплексними.
Рішення систем лінійних рівнянь за допомогою функції solve().
Функція solve () у разі рішення систем рівнянь має вигляд:
де: ' fi' – i-те рівняння системи, і=1,2..., n;
хі — і-тe невідоме і = 1,2 ..., n.
Кожне рівняння системи береться в одинарні лапки і відділяється від попереднього комою. Перед функцією solve () необхідно за допомогою функції syms описати символьні змінні.
Рішення системи рівнянь:
Програма рішення системи рівнянь має вигляд:
Після натиснення клавіші <Enter> отримаємо відповідь в наступному вигляді:
Програма задачу вирішила, але не видала значення невідомих х, у, z. Для їх отримання необхідно скористатися командою Y.k, де k – ім'я невідомої. В нашому випадку рішення буде мати вигляд:
Можна також використовувати функцію vpa (Y.k, n)
де k – шукане невідоме;
n – число знаків відповіді.
Отримаємо вирішення з числом знаків n=5:
Рішення систем нелінійних рівнянь.
Рішення систем нелінійних рівнянь в MATLAB здійснюється функцією fsolve (), яка має вигляд:
де file – система рівнянь, збережена в m-файлі.
Нехай необхідно вирішити наступну систему нелінійних рівнянь:
Представимо систему рівнянь у вигляді функції користувача з ім'ям myfun і збережемо її у файлі myfun.m.
Вміст файлу має вигляд:
Програма і результати рішення мають вигляд:
MATLAB має велике число функцій вирішення спеціальних рівнянь. У них реалізовані ітераційні методи рішення рівнянь і метод найменших квадратів. Деякі з цих функцій дозволяють вирішувати також звичайні системи лінійних рівнянь.
Такими функціями є: bicq(), cqs(), qmres(), qmr().
Функція bicq() має вигляд:
де А – матриця коефіцієнтів системи рівнянь;
B – вектор вільних членів.
Функція обчислює невідомі методом ітерацій.
За початкові наближення за умовчанням приймає нульовий вектор довжиною n, де n – число невідомих.
Кількість ітерацій визначається або по максимальному їх числу (20 по замовчанню), або по досягненню відносної похибки (за замовчанням 10-6).
Функція має декілька модифікацій.
bicq(A, B, tol) — видає рішення з погрішністю tol;
bicq(A, B, tol, maxit) — видає рішення з погрішністю tol при заданому числі ітерацій.
Функція cqs().
Функція cqs () представляється в наступному вигляді:
cqs (А, В)
cqs (A, B, tol)
cqs(A, B, tol, maxit)
Цією функцією реалізується так званий квадратичний метод спряжених аргументів. Ітераційний процес починається з нульової ітерації (нульовий вектор початкових значень).
Число ітерацій визначається по одній з наступних ознак:
число ітерацій задається користувачем;
збіжність ітераційного процесу;
погрішність результату.
Функції qmres() і qmr() вирішують систему лінійних рівнянь методом ітерацій, використовуючи відповідно метод мінімізації узагальненої нев'язності і метод квазімінімізації нев'язності. Вони мають ті ж модифікації, що і функція bicq(). Технологія рішення рівнянь не відрізняється від розглянутих вище.