Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Інф_MaThCad_практика.doc
Скачиваний:
21
Добавлен:
16.08.2019
Размер:
3.99 Mб
Скачать

Лабораторна робота № 3. Дії над матрицями у MathCad Поняття про вбудовані функції Маткада.

Б ільшість задач у Маткаді вирішуються за допомогою так званих вбудованих функцій, тобто за допомогою заздалегідь складених програм розв’язку того чи іншого завдання. Кожна така програма має своє власне ім'я, по якому вона викликається. Ім'я можна набирати з клавіатури, але можна і викликати за допомогою кнопки f(x) головного меню. Натиснувши цю кнопку, ми викличемо панель Insert Function (вставити функцію), в якій є два вікна: Function Category (тип функції) та Function Name (ім'я функції). Вибравши тип і ім'я, і натиснувши кнопку ОК, ми викличемо цю функцію (Рис.1).

Рис.1.Панель виклику функції

Нехай, наприклад, потрібно знайти синус числа 45. Викликавши панель вставки функції, виберемо категорію Trigonometric і назва sin, натиснемо ОК. На екрані з'явиться шаблон зі словом sin всередині і дужками. Вставивши в дужки число 45, натиснемо «=». Отримаємо sin (45) = 0.851. Можна було б набрати ліву частину на клавіатурі і, після натискання знаку =, отримати ту саму відповідь.

Аналогічно використовуються і інші вбудовані функції Маткада.

У Маткаді масиви можуть записуватися у вигляді векторів (одновимірні масиви), у вигляді матриць (двовимірні масиви) і у вигляді таблиць. Ми розглянемо поки тільки запис матриць і векторів. Для дій над ними є панель Matrix (матриця), показана на рис. 2.

Р ис.2. Панель матриць

Для введення матриць і векторів натиснемо кнопку панелі матриць і викличемо цим вікно введення Insetrt Matrix (ввести матрицю), показане на рис.3.

Рис.3. Вікно введення матриць і векторів. Рис.4. Шаблон

вектора.

При введенні вектора в графі columns (стовпці) слід проставити 1, а в графі rows (рядки) проставити розмір вектора. З'явиться шаблон, показаний на рис. 4.

Нижче представлено три п’ятиелементні масиви-вектори: Два з них - чисельні, третій - літерний, четвертий складається з виразів.

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

Над векторами, що показані на рис.5, визначені операції додавання, віднімання, транспонування, множення за математичними правилами множення матриць. Знак транспонування слід вводити з панелі Matrix (матриця).

Порядковий номер елемента, який є його адресою, називається індексом.

Н ижня межа індексації задається значенням системної змінної ORIGIN, яка може приймати значення 0 або 1. По замовчуванню прийнято 0.

Рис.5. Запис векторів у Маткаді.

Ім'я масиву пов'язане з іменами індексованих змінних, значеннями яких є елементи масиву. Для цього досить у вигляді підрядкового індексу вказати індекс елемента. Наприклад, якщо третій з представлених масивів має ім'я V, то його елементами при ORIGIN = 0 будуть індексовані змінні:

v0 = 0 V1 = b, w3 = d, W4 = x.

При заданні ORIGIN = 1, отримаємо:

v1 = 0, V1 = a, w3 = c, W4 = x3 - x5.

Завдання 1. Ввести всі вектори рис.5 і здійснити над ними всі дії, що наведені на малюнку. Матриці в Маткаді вводяться так само, як і вектори, але число стовпців у них - більше одиниці. Елементами матриці можуть бути також числа, букви, вирази. Як і у випадку векторів, літерні елементи і елементи – вирази повинні бути попередньо визначені чисельно. На рис.6 показано різні способи введення матриць.

Рис.6. Введення матриць

Завдання 2. Ввести всі матриці, наведені на рис.6.

Елементи матриць є індексованими змінними, імена яких збігаються з іменами матриць. Для кожної індексованої змінної вказуються два індекси: один - для номера рядка, інший - для номера стовпця. Наприклад, для матриці W середній елемент позначається як W1,1 а останній як W2,2. (Індекси набираються через кому). На рис.7 показано зміну індексації при різних значеннях змінної ORIGIN. (Набирається обов'язково заголовними буквами).

Рис.7. Роль змінної ORIGIN

У Маткаді визначені наступні дії над векторами і матрицями:

    1. сумування - віднімання,

    2. скалярне і векторне множення,

    3. звернення,

    4. транспонування,

    5. сортування,

    6. виділення стовпців.

Вони виконуються з використанням наступних кнопок панелі Matrix:

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

к нопка звернення матриці,

кнопка скалярного добутку векторів і матриць

кнопка транспонування матриці,

к нопка векторного добутку двох векторів

к нопка додавання векторів

кнопка виділення стовпця матриці

кнопка обчислення детермінанта матриці.

Завдання 3: Провести над матрицями всі дії, показані на рис.8 ..

Рис.8. Дії над матрицями

Завдання 4: Ввести дві довільні матриці. Перемножити. Наприклад:

Перевірте на папері правильність зроблених вище дій

Рис.9. Приклад виконання завдання 4

Звернення та обчислення визначника можливо тільки для квадратних матриць.

Завдання 5. Введіть довільну квадратну матрицю, знайдіть їй обернену та обчисліть визначник, використовуючи наведені вище кнопки вбудованих операторів.

Рис.10. Приклад виконання завдання 5 ..

Як відомо, множення матриці на обернену дає одиничну матрицю. Перевіримо, чи правильно було проведено обертання

Завдання 6. Знайти скалярний і векторний добуток двох заданих трьохелементних векторів: Перевірити на папері правильність обчислень.

Рис.11.Пример виконання завдання 6.

Перевіримо правильність скалярного множення, перемноживши vxТ і vy. Отримали також 36.

При розгляді матриць великих розмірів зручно виділяти їх стовпці.

Завдання 7. Використовуючи кнопку виділення стовпців, виділіть другий стовпець довільної матриці, наприклад:

Рис.12.Приклад виконання завдання 7.

У Маткаді є велика кількість вбудованих функцій для дій над матрицями та векторами. Розглянемо деякі з них.

Обчислення максимального і мінімального елементів матриці або вектора проводиться за допомогою вбудованих функцій Max (A) і Min (A).

Завдання 8. Обчислити максимальний та мінімальний елемент довільної матриці, наприклад:

Рис13. Обчислення максимального і мінімального елемента матриці.

Знати кількість стовпців і рядків в матриці дуже зручно для перевірки дій над багатовимірними матрицями і векторами. Вони знаходяться за допомогою вбудованих функцій Cols(A) – число стовпців матриці А і Rows(A) – число рядків матриці А

Завдання 9. Визначити число рядків і стовпців у довільній матриці, наприклад

Рис.13. Приклад виконання завдання 9.

Одинична матриця розміром N формується убудованою функцією Idenfity (N), а слід матриці - вбудованою функцією. tr (A):

Рис.14. Формування одиничної матриці і обчислення сліду матриці.

Графіки матричних і векторних залежностей

У Маткаді можлива побудова графіків за даними, записаними у векторній і матричній формі. На рис.15 показано побудову двовимірного графіка за даними векторів vx і vy, а на рис.16. - побудова тривимірного графіка по заданим в матриці аргументів і вектору функції.

Рис.15. Побудова двовимірного графіка по векторних даних.

Задані двовимірна матриця аргументів S і вектор значень функції цих аргументів Y. Показано побудова графіка.

Рис.16.Трьохвимірний графік даних, записаних у векторній формі.

Операції над матрицями в аналітичній (символьній) формі

Системи комп'ютерної алгебри забезпечуються спеціальним процесором для виконання аналітичних (символьних) обчислень. Його основою є ядро, що зберігає всю сукупність формул і формульних перетворень, за допомогою яких робляться аналітичні обчислення. Чим більше цих формул у ядрі, тим більш надійна робота символьного процесора і тем імовірніше, що поставлена задача буде розв’язана, зрозуміло, якщо такий розв'язок існує в принципі (що буває далеко не завжди).

Ядро символьного процесора системи Маткад – дещо спрощений варіант ядра відомої системи символьної математики Maple V фірми Waterloo Maple Software, у якої MathSoft (розробник Mathcad) придбала ліцензію на його застосування, завдяки чому Маткад став системою символьної математики.

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

Операції, що відносяться до роботи символьного процесора, містяться в підменю позиції Symbolic (Символіка) головного меню.

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

Символьні операції розбиті на п'ять розділів. Це операції з виразами, операції зі змінними, операції з матрицями, операції перетворення, стиль еволюції. Першими йдуть найбільш часто використовувані операції Вони можуть виконуватися з виразами, що містять комплексні числа чи мають розв'язок в комплексному вигляді

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

При символьних обчисленнях, перш за все, слід відобразити панель символьних обчислень натисканням кнопки на математичній панелі.

Після цього з'явиться панель символьних обчислень, показана на рис.17

Рис.17. Панель символьних обчислень

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

Завдання 10. Використовуючи кнопки панелі символьних обчислень, провести аналітичне транспонування і звернення довільної матриці, наприклад:

Рис.18. Приклад символьного розв’язку матричних задач

Завдання 11. Обчислення матричного виразу. Дано матриці

, ,

де N– номер по списку.

Обчислити матричний вираз

  1. (A3+CB)(A2+2CB)T

  2. A4+3A2−ACB

  3. BAC−5CTBT

  4. 2BA-1C−BAC+3BC

  5. -2CTAC−BBT

  6. (BCB−2CT)A2

  7. (ABT−C)(C+ABT)T

  8. (ABTB)3BTCTA

  9. CT(BTB+CCT)C

  10. AAT−(CB)2+3(CB)-2

  11. (BTB−3AT)A-2

  12. (CBATC−C)(C+CBATC)T

  13. (2CTAC−BBT)CT +B

  14. 2C(BBT+CTC)CT+CB−A3

  15. CB−(AAT)2+3CBA

  16. CT+(BTB+3CCT)C

  17. AAT−(CB)2+6(CB)-2

  18. (BTB−5AT)A-2

  19. (CBATC−9C)(C+CBATC)T (CTAC−2BBT)CT +B