Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_28-36.doc
Скачиваний:
12
Добавлен:
18.03.2015
Размер:
4.15 Mб
Скачать

Лабораторна робота № 32

Тема: Розв’язування рівнянь та систем рівнянь функціями Mathcad.

Мета: Навчитися розв'язувати рівняння та системи рівнянь в системі Mathcad різними способами.

Теоретичні відомості

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

Обчислення коренів рівняння за початковими наближеннями

(функція root)

Процес знаходження наближених значень коренів рівняння ділиться на два етапи:

  1. Відокремлення коренів для знаходження початкового значення.

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

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

  1. Уточнення коренів до заданої степені точності.

Для обчислення кореня рівняння Mathсad має у своєму розпорядженні вбудовану функцію root, що має формат:

root (вираз, змінна, х1, х2),

де х1, х2 – інтервал, в якому знаходиться корінь;

або root (вираз, змінна),

перед використанням цієї функції треба обов’язково задати початкове значення кореня, наприклад, х:=0 root(cos(x),x)=

За допомогою функції root можна розв'язувати рівняння, які не мають аналітичних розв’язків, але можуть бути розв'язані чисельними методами з заданою похибкою (похибка задається в меню Math (Математикa)  Параметри…Змінні  Допуск збіжності TOL) Значення змінної TOL можна також встановити безпосередньо в робочому листі перед обчисленнями. (TOL:=0.0001)

Обчислення поліномів(функція polyroots)

Поліноми зручно обчислювати за допомогою спеціальної функції polyroots(V), де V – вектор коефіцієнтів поліному.

Розв’язування систем лінійних рівнянь (функція lsolve)

Розглянемо систему n лінійних рівнянь з n невідомими:

Систему можна записати коротко у вигляді одного матричного рівняння:

,

Тоді розв’язати систему n лінійних рівнянь можна за допомогою функції lsolve. x:=lsolve(A,b)

Розв’язування систем нелінійних рівнянь (блок Given)

При розв'язування систем нелінійних рівнянь використовують обчислювальний блок Given, який має структуру:

Початкові значення змінних

Given

Рівняння

Нерівності

Функція Find, Minner, Maximize, або Minimize

Символьне розв'язування рівнянь

Для розв'язування рівнянь в аналітичному вигляді треба ввести рівняння, замість = використати логічний знак рівності (Ctrl + =), виділити змінну, яку треба знайти і виконати команду Symbolics (Символи)  Variable (Змінні)  Solve (Обчислити)

Для розв'язуваннясистем рівнянь в аналітичному вигляді використовується блок Given (початкові значення змінних задавати необов'язково, функцію Find… треба використовувати з символьним знаком рівності Ctrl + Shift +. )

Практичні завдання

Приклад 1. (функція root) Розв’язати рівняння з точністю до 10-2 та 10-16

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

З малюнку видно, що корені знаходяться у проміжках:

(-3.01,-2.5), (-2.5,-2.12), (0.56, 1).

2. Встановимо похибку обчислень 10-2 і знайдемо корені:

Не дивлячись на те, що на екрані представлено результат обчислень з 15 десятковими знаками, не всі вони є вірними. При встановленні TOL:=10-2 тільки перші 2 десяткові цифри є точні.

Розв’яжемо це рівняння з іншою похибкою:

В цьому випадку всі 15 цифр результату вірні.

Приклад 2. Знайти корені поліному

Відомо, що поліном 3-го степеня має 3 корені (дійсні або комплексні).

Графік поліному показує існування тільки дійсного кореня, інші 2 корені – комплексні.

Для знаходження другого кореня (комплексного) перший виключається діленням F(x) на (x-x1); для пошуку третього кореня потрібно повторити процедуру ділення, при цьому F(x) ділиться на (x-x1)(x-x2).

1 спосіб (функція root)

  • Введіть поліном

  • Задайте початкове значення кореня

  • Обчисліть перший корінь: введіть root(F(x), x) =

  • Обчисліть другий і третій комплексні корені

2 спосіб (функція polyroots)

Застосування функції polyroots

  • задайте вектор коефіцієнтів

  • наберіть polyroots(V)=

Приклад 3. (функція lsolve) Розв’язати систему лінійних рівнянь

Введіть матрицю А коефіцієнтів системи, і матрицю В – вільних членів.

Використовуючи функцію x:=lsolve(A,b) знайдіть розв’язки системи

Самостійно перевірте розв’язок системи за допомогою матричного способу (Лабораторна робота № 4)

Приклад 4. (блок Given) Розв’язати систему рівнянь

1 спосіб

  • Задайте початкові значення невідомих

  • Введіть слово Given (дано)

  • Праворуч або нижче введіть всі рівняння. Для введення знака = використовуйте Ctrl + =

  • Введіть ім'я функції Find, перелічите в дужках імена невідомих, значення яких потрібно обчислити, натисніть =

2 спосіб (символьний)

  • Введіть слово Given

  • Введіть всі рівняння

  • Введіть ім'я функції Find (знайти)*, перелічите в дужках імена невідомих, натисніть Ctrl +Shift + . потім клавішу Enter

* Використовуємо Find, коли корені рівняння реально існують і Minerr, коли необхідно максимальне наближення навіть до неіснуючого розв’язку.