Лабораторная работа 2.
Тема: Векторы и матрицы
Цель: научить создавать векторы и матрицы разными способами, производить с ними различные операции.
Общие сведения
Задачи линейной алгебры, решаемые в MathCAD, можно условно разделить на два класса. Первый ‑ это простейшие матричные операции, которые сводятся к определенным арифметическим действиям над элементами матрицы. Они реализованы в виде операторов и нескольких специфических функций, предназначенных для создания, объединения, сортировки, получения основных свойств матриц и т. д. Второй класс ‑ это более сложные действия, которые реализуют алгоритмы вычислительной линейной алгебры, такие как вычисление определителей и обращение матриц, вычисление собственных векторов и собственных значений, решение систем линейных алгебраических уравнений и различные матричные разложения.
Простейшие операции матричной алгебры реализованы в MathCAD в виде операторов, причем их запись максимально приближена к математическому значению. Каждый оператор выражается соответствующим символом. Некоторые операции применимы только к квадратным матрицам N ´ N, некоторые допускаются только для векторов (например, скалярное произведение), а другие, несмотря на одинаковое написание, по-разному действуют на векторы и матрицы.
Создание матриц
Имеется два способа создать матрицу.
1-й способ. Использование команды создания массивов:
· Воспользоваться командой Вставка ® Матрица;
· нажатие клавиш Ctrl+M;
· выбор пиктограммы с изображением шаблона матрицы на панели инструментов Матрицы.
В диалоговом окне указать размерность матрицы, т. е. количество ее строк m (Rows) и столбцов n (Columns).
Для векторов один из этих параметров должен быть равен 1. При m = 1 получим вектор-столбец, а при n = 1- вектор-строку.
Далее на экране появится шаблон , в который нужно ввести значения элементов массива.
Обращаться к отдельным элементам вектора или матрицы можно используя нижний индекс. Для элемента матрицы указываются два индекса, один ‑ для номера строки, другой ‑ для номера столбца.
Чтобы ввести нижний индекс, нужно нажать клавишу [ после имени вектора или матрицы или выбрать команду на панели Матрицы.
2-й способ. Использование ранжированной переменной.
Ранжированная переменная используется для определения индекса (номера) элемента массива.
Например:
1) Создать матрицу В, состоящую из 2 строк и 3 столбцов.
2) Создать вектор S, состоящий из 3 элементов
Команды панели инструментов Матрицы
Кнопка | Назначение |
Создание матрицы | |
Обратная матрица | |
Определитель матрицы | |
Транспонирование матрицы | |
Выделение столбца матрицы |
Операторы для работы с массивами
Обозначения: для векторов ‑ V, для матриц ‑ М и для скалярных величин ‑ z.
Оператор | Ввод | Назначение оператора |
V1+V2 | V1+V2 | Сложение двух векторов V1 и V2 |
V1-V2 | V1-V2 | Вычитание двух векторовV1 и V2 |
-М | -М | Смена знака у элементов матрицы M |
V-z | V-z | Вычитание из вектора V скаляра z |
z*V, V*z | z*V, V*z | Умножение вектора V на скаляр z |
z*M, M*z | z*M, M*z | Умножение матрицы М на скаляр z |
V1*V2 | VI*V2 | Умножение двух векторов V1 и V2 |
M*V | M*V | Умножение матрицы М на вектор V |
М1*М2 | М1*М2 | Умножение двух матриц М1 и М2 |
V/z | Деление вектора V на скаляр z | |
M/z | Деление матрицы М на скаляр z | |
М^n | Возведение матрицы М в степень п |
Фрагмент документа MathCAD:
Функции для работы с векторами и матрицами.
Некоторые из них (V должен быть вектором, A может быть вектором либо матрицей):
length(V) ‑возвращает число элементов в векторе v;
last(V) ‑ возвращает индекс последнего элемента;
max(A) ‑ возвращает максимальный по значению элемент;
min(A) ‑ возвращает минимальный по значению элемент.
Матричные функции
Для работы с матрицами также существует ряд встроенных функций:
augment(M1, М2) ‑ объединяет в одну матрицы М1 и М2, имеющие одинаковое число строк;
identity(n) ‑ создает единичную квадратную матрицу размером , (n – размер матрицы(число));
stack(MI, M2) ‑ объединяет две матрицы М1 и M2, имеющие одинаковое число столбцов, сажая M1 над M2;
diag(V) ‑ создает диагональную матрицу, элемент главной диагонали которой ‑ вектор V;
cols(M) ‑ возвращает число столбцов матрицы М;
rows(M) ‑ возвращает число строк матрицы М;
rank(M) ‑возвращает ранг матрицы М;
tr(M) ‑ возвращает след (сумму диагональных элементов) квадратной матрицы М;
mean(M) ‑ возвращает среднее значение элементов массива М;
median(M) ‑ возвращает медиану элементов массива М;
eigenvals(M) ‑ возвращает вектор, элементами которого являются собственные значения матрицы M (M должна быть квадратной матрицей.);
submatrix(M,ir,jr,ic,jc) ‑ возвращает подмассив, состоящий из всех элементов, которые содержатся в строках с ir по jr и столбцах с ic по jc массива М.
Символьные вычисления
Все матричные и векторные операторы допустимо использовать как в численных, так и в символьных расчетах. Мощь символьных операций заключается в возможности проводить их не только над конкретными числами, но и над переменными.
Фрагмент документа MathCAD:
Задания к лабораторной работе 3
1. Ввести в документ название лабораторной работы, вариант задания и фамилию студента
2. Создать квадратные матрицы А, В, D, размером (5,5,4 соответственно) первым способом
3. Исследовать следующие свойства матриц на примере преобразования заданных массивов:
· транспонированная матрица суммы двух матриц равна сумме транспонированных матриц (A+B)T=AT+BT ;
· транспонированная матрица произведения двух матриц равна сумме произведению транспонированных матриц, взятых в обратном порядке: (A*B)T=BT*AT ;
· при транспонировании квадратной матрицы определитель не меняется: |D|=|DT|;
· произведение квадратной матрицы на соответствующую ей квадратную дает единичную матрицу (элементы главной диагонали единичной матрицы равны 1, а все остальные – 0) D*D-1=E.
4. Для матриц A,B найти обратные матрицы.
5. Найти определители матриц A,B.
6. Для матрицы А увеличить значения элементов в № раз, где № ‑ номер варианта.
7. Для матрицы В увеличить значения элементов на №.
8. Создать вектор C вторым способом, количество элементов которого равно 6.
9. Применить к матрицам А, В, D встроенные матричные функции (всевозможные) из приведенных в пункте “Функции для работы…..”
10. Применить к вектору С встроенные векторные функции.
11. Применить ко всем матрицам и вектору общие встроенные функции.
12. Сохранить документ.
Контрольные вопросы
1. Как создать матрицу, вектор ‑ строку, вектор ‑ столбец?
2. Какие операторы есть для работы с матрицами?
3. Перечислите команды панели инструментов Матрицы.
4. Как вставить матричные функции?
5. Как выполнять вычисления, если матрица задана в символьном виде?