Практична частина

Приклад 1. Потрібно сформувати вектор x. що складається з 6 елементів. Елементам цього вектора привласнити значення індексів.

Рішення. Надамо два варіанти вирішення цього завдання:

1. за допомогою індексованої змінної;

2. за допомогою командиInserts-Matrix.

Для того щоб сформувати вектор, скористаємося допоміжною змінною, яка буде грати роль індексу (наприклад, i), а потім будемо використовувати цю змінну для будівлі елементних значень векторах. Формування вектора представлено на рис. 1.

Формування вектора х будемо проводити за допомогою команди Matrix. Для цього спочатку напишемо оператор присвоювання: «х =», а потім виконаємо командуMatrix. Ця команда відкриває діалогове вікно «Insert Matrix», яке представлено на рис. 2, в якому необхідно вказати число рядків і число стовпців. У нашому прикладі число рядків дорівнює 6, а число стовпців дорівнює 1.

Практична частина

Мал. 1. Формування вектора з використанням індексованої змінної

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

Практична частина

Мал. 2. Виклик діалогового вікна «Insert Matrix» для створення матриці за допомогою команди «Matrix»

Приклад 2. У файлі з ім'ям «int (4_4) .txt» записані числа в вигляді матриці чотири рядки по чотири елементи, розділеними пробілами. У файлі з ім'ям «int (4_1) .txt» записані числа в стовпчик. Потрібно прочитати ці дані в матрицю Q і вектор P.

Рішення. Для читання даних з файлу в матрицю / вектор можна скористатися функцією READPRN, яка має один параметр - ім'я файлу. Фрагмент з рішенням представлений на рис. 3.

Мал. 3. Читання даних з файлів

З матрицями можуть проводитися як чисельні, так і символьні обчислення. Операції з матрицями в системі MathCAD позначаються так, як це прийнято в математиці: -, +, *.

На рис. 4 показано призначення деяких спеціалізованих команд, розташованих на панелі інструментовMatrix.

Крім цього, система MathCAD представляє велику кількість функцій для роботи з векторами і матрицями. Скористатися цими функціями можна за допомогою майстра функцій f (x).

Практична частина

Мал. 4. Призначення деяких команд, розташованих на панелі інструментів «Matrix»

На рис. 5 представлені обчислення з використанням операцій над матрицями.

Практична частина

Мал. 5. Приклади матричних обчислень в MathCAD

Приклад 3. Потрібно сформувати діагональну квадратну матрицю з (6x 6). Значення елементів головної діагоналі повинні збігатися з номером рядка / стовпця.

Рішення. Для отримання діагональної матриці в системі передбачена функція diag. яка має один параметр - вектор діагональних елементів. Тому формування матриці почнемо з створення допоміжного вектора, в який занесемо елементи для діагоналі. Для формування цього допоміжного вектора (наприклад, з ім'ям s), скористаємося допоміжною змінною, яка буде грати роль індексу (наприклад, i). Тоді формування діагональної матриці може бути отримано в результаті операцій, як це показано на рис. 6.

Практична частина

Мал. 6. Формування діагональної матриці

Приклад 4. Дано дві матриці: A (4x3) і В (4x 2). Потрібно об'єднати ці матриці в одну матрицю C (4x 5), причому, першими стовпцями нової матриці повинні бути стовпці матриці А, а праворуч від цих елементів слідувати стовпці матриці В (методом «дописування справа»).

Рішення. Для з'єднання двох матриць в одну матрицю можна використовувати функцію augment. параметрами якої будуть імена з'єднуються матриць, як це показано на рис. 7.

Практична частина

Мал. 7. Об'єднання двох матриць за правилом «дописування справа»

Приклад 5. Дано дві матриці: A (2x3) і В (3x3). Потрібно об'єднати ці матриці в одну матрицю С (5x3), причому, в новій матриці в якості перших рядків повинні бути рядки матриці А, а за ними повинні слідувати рядки матриці В.

Рішення. Для з'єднання двох матриць в одну матрицю за правилом «один під одним» можна використовувати функцію stack. параметрами якої будуть імена з'єднуються матриць, як це показано на рис. 8.

Практична частина

Мал. 8. Об'єднання двох матриць за правилом «один під одним»

Приклад 6. Дана матриця A (6x 6). Потрібно забрати з цієї матрицю підматрицю, в яку включити елементи, розташовані в рядках, починаючи з номера 2-го по номер 4-ий, і шпальтах, починаючи з номера 0-го по номер 5-ий.

Рішення. Для виділення подматріци з номерами стовпців і рядків представленими граничними значеннями передбачена функція submatrix. Ця функція має 5 параметрів: ім'я матриці, з якої виробляється вибір; початковий номер рядка вибору; кінцевий номер рядка вибору; початковий номер стовпця вибору; кінцевий номер стовпця вибору. Можливе рішення представлено на рис. 9.

Практична частина

Мал. 9. Виділення подматріци із заданої матриці

Приклад 7. Дана матриця A (6x6). Потрібно забрати з цієї матрицю два вектора. Перший вектор повинен збігатися з 4-х стовпцем матриці А, а другий - з 3-ї рядком матриці А.

Рішення. Для отримання векторних значень можна скористатися командою М <> (З матриці взяти вектор-стовпець), яка розташована на панелі «Matrix». Для отримання першого вектора цю команду потрібно застосувати безпосередньо до матриці А, а для отримання другого вектора потрібно спочатку отримати з матриці А транспоновану матрицю, а тільки потім скористатися командою «взяти стовпець». Можливе рішення представлено на рис. 10.

Практична частина

Мал. 10. Виділення векторних значень із заданої матриці

Приклад 8. З матриці А (6x 6) виділити мінор, який утворюється в результаті викреслювання з цієї матриці нульовий рядки і третього стовпчика.

Рішення. Рішення завдання можна звести до з'єднання двох підматриць, виділених з матриці А, як це показано на рис. 11.

Практична частина

Мал. 11. Виділення мінору із заданої матриці

Використання матриць спеціального виду для
виконання матричних операцій в системі MathCAD

Відомо, що в результаті множенні матриці на вектор виходить вектор. Причому, кожен i- ий елемент цього вектора-результату являє собою суму попарних творів відповідних елементів i -ої рядки матриці на елементи вектора-співмножник. Очевидно, якщо в векторі, на який множиться матриця, всі елементи дорівнюють нулю, а один елемент дорівнює одиниці, то результатом такого твору буде число, що відповідає тому елементу i- го рядка матриці, де векторних співмножником буде одиниця. Такий висновок можна використовувати для виділення (формування) з матриці потрібного стовпчика.

Приклад 9. Дана матриця: A (4x4). Потрібно забрати з цієї матрицю два вектора. Перший вектор повинен збігатися з 0-им стовпцем матриці А. а другий - з 3-им стовпцем матриці А.

Рішення. Для отримання нових векторів сформуємо два допоміжних вектора: вектор B 1 - з одиничним значенням в рядку з номером 0, а другий вектор В 4 - з одиничним значенням в рядку з номером 3. Тоді для отримання векторів відповідно до умовою завдання досить помножити матрицю А справа на вектори В В1 і В2, як це по-казано на рис. 12.

Мал. 12. Виділення векторних значень із заданої матриці

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

Приклад 10. Дана матриця: A (4x 4). Потрібно виділити з матриці перший рядок по порядку (з номером 0).

Рішення. Спочатку потрібно підготувати допоміжний вектор-рядок, а потім помножити цю рядок зліва на матрицю А. Вектор-рядок можна отримати з попереднього прикладу Транспонированием вектора-стовпця В 1.

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

Приклад 11. Дана матриця: A (4x 4). Потрібно переставити в матриці рядки з номерами 0 і 1.

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

Приклад 12. Дана матриця: A (4x4). Потрібно переставити в матриці стовпці з номерами 0 і 1.

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

Таким чином, можна за допомогою допоміжного вектора з одиничними компонентами отримати вектор, компоненти якого будуть дорівнюють сумі рядків (стовпців) матриці, а також суми окремо виділеного стовпчика (рядки).

Приклад 13. Дана матриця: A (4x4). Потрібно знайти суму елементів в стовпці з номером 3.

Рішення. Для виконання завдання потрібно підготувати допоміжний вектор-рядок з одиничних елементів і виконати множення:

Приклад 14. Дана матриця: A (4x4). Потрібно забрати вектора, елементи якого будуть представляти суми елементів в шпальтах матриці.

Рішення. Для вирішення потрібно підготувати допоміжний вектор-рядок з одиничних елементів і виконати множення:

1. Як визначити індексовану змінну?

2. Які види масивів в MathCAD Вам відомі?

3. Яка системна змінна визначає нижню межу індексації елементів масиву?

4. Опишіть способи створення масивів в MathCAD.

6. Панель інструментів, що містить функції роботи з матрицями в MathCAD.

7. Перерахуйте можливості пакета MathCAD при роботі з матрицями.

8. Яким чином можна отримати вектор-рядок з матриці?

9. Які функції використовуються при виділенні мінору з матриці?

10. Які функції використовуються при об'єднанні матриць?

Варіанти завдань до лабораторної роботи № 2

Завдання 1. Розрахувати вираз у відповідність з варіантом. Одну з матриць ввести за допомогою файлу .txt.

Завдання 2. Перетворити матриці відповідно до варіанта завдання. Значення матриць довільні.

Варіант 1. З матриці А (5x5) виділити мінор, який утворюється в результаті викреслювання з цієї матриці 4-го рядка і 0-го стовпця.

Варіант 2. Дана матриця: A (6x4). Потрібно виділити з матриці другий рядок по порядку (з номером 1).

Варіант 3. Дана матриця: A (4x4), і В (5x5). Потрібно забрати з цих матриць два вектора. Перший вектор повинен збігатися з 4-им стовпцем матриці А. а другий - з 0-им стовпцем матриці B.

Варіант 4. З матриці А (4x4) виділити мінор, який утворюється в результаті викреслювання з цієї матриці другого рядка і другого шпальти.

Варіант 5. Потрібно сформувати діагональну квадратну матрицю С (5x5). Значення елементів головної діагоналі повинні збігатися з номером рядка / стовпця.

Варіант 6. Дана матриця: A (3x3). Потрібно забрати з цієї матрицю два вектора. Перший вектор повинен збігатися з 0-им стовпцем матриці А. а другий - з 3-им стовпцем матриці А.

Варіант 7. Дано дві матриці: A (2x2) і В (4x2). Потрібно об'єднати ці матриці в одну матрицю С (6x2), причому, в новій матриці в якості перших рядків повинні бути рядки матриці B, а за ними повинні слідувати рядки матриці A.

Варіант 8. Дано дві матриці: A (4x3) і В (4x2). Потрібно об'єд-нить ці матриці в одну матрицю C (4x5), причому, першими стовпцями нової матриці повинні бути стовпці матриці А, а праворуч від цих еле-ментів слідувати стовпці матриці В (методом «дописування справа»).

Варіант 9. Потрібно сформувати діагональну квадратну матрицю з (6x6). Значення елементів головної діагоналі повинні збігатися з номером рядка / стовпця.

Варіант 10. Дано матриця: A (4x5) і В (4x2). Потрібно виділити з матриці A перший рядок по порядку (з номером 0) і об'єднати отриману рядок з матрицею B (методом «дописування справа»)

Завдання 3. Вирішити систему лінійних рівнянь (СЛАР) методом Крамера.