Файл: Математический редактор MathCAD (ЛЕКЦИЯ 3).doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 25.07.2020

Просмотров: 195

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ЛЕКЦИЯ 3

Линейная алгебра


Простейшие операции матричной алгебры реализованы в Mathcad в виде операторов. Написание операторов по смыслу максимально приближено к их математическому действию. Каждый оператор выражается соответствующим символом. Рассмотрим матричные и векторные операции Mathcad. Векторы являются частным случаем матриц размером , поэтому для них справедливы все те операции, что и для матриц, если ограничения особо не оговорены (например, некоторые операции применимы только к квадратным матрицам ). Какие-то действия допустимы лишь для векторов (например, скалярное произведение), а какие-то, несмотря на одинаковое написание, по-разному действуют на векторы и матрицы.

Непосредственное проведение векторных операций над строками, т.е. матрицами , невозможно; для того, чтобы превратить строку в вектор, ее нужно предварительно транспонировать.


1 Транспонирование

Транспонированием называют операцию, переводящую матрицу размером в матрицу размером , делая столбцы исходной матрицы строками, а строки – столбцами. Ввод символа транспонирования (transpose) осуществляется с помощью панели инструментов Matrix (Матрица) или нажатием комбинации клавиш Ctr + l. Не забывайте, что для вставки символа транспонирования матрица должна находиться между линиями ввода.

Задание: Транспонируйте матрицу .

Решение:


2 Сложение

В Mathcad можно как складывать матрицы, так и вычитать их друг из друга. Для этих операций применяются символы “+” или “–” соответственно. Матрицы должны иметь одинаковый размер, иначе будет выдано сообщение об ошибке. Каждый элемент суммы двух матриц равен сумме соответствующих элементов матриц-слагаемых.

Задание: Найдите сумму и разность двух матриц и .


Решение:

Кроме сложения матриц Mathcad поддерживает операцию сложения матрицы со скаляром. Каждый элемент результирующей матрицы равен сумме соответствующего элемента исходной матрицы и скалярной величины.

Задание: Вычислите и , если – матрица и – скаляр: и .

Решение:


3 Умножение

При умножении следует помнить, что матрицу размером допустимо умножать только на матрицу размером . В результате получается матрица размером .

Чтобы ввести символ умножения, нужно нажать клавишу « или воспользоваться панелью инструментов Matrix (Матрица), нажав на ней кнопку Dot Product (Умножение). Умножение матриц обозначается по умолчанию точкой.

Задание: Умножить матрицу A на транспонированную матрицу B, если и .

Решение:

Результат: если вычисление невозможно, то программа выделяет красным цветом ошибку.

Аналогично сложению матриц со скаляром определяется умножение и деление матрицы на скалярную величину.

Задание: Вычислить и , если .

Решение:


4 Определитель квадратной матрицы

Определитель (Determinant) матрицы обозначается стандартным математическим символом. Чтобы ввести оператор нахождения определителя матрицы, можно нажать кнопку Determinant (Определитель) на панели инструментов Matrix (Матрица). В результате появляется местозаполнитель, в который следует поместить матрицу. Чтобы вычислить определитель уже введенной матрицы нужно:

  1. Переместить курсор в документе таким образом, чтобы поместить матрицу между линиями ввода (напоминаем, что линии ввода – это вертикальный и горизонтальный отрезки синего цвета, образующие уголок, указывающий на текущую область редактирования).

  2. Ввести оператор нахождения определителя матрицы.

  3. Ввести знак равенства, чтобы вычислить определитель.

Задание: Найдите определитель матрицы A = .

Решение:


5 Модуль вектора

По определению модуль вектора (vector magnitude) равен квадратному корню из суммы квадратов его элементов. Он обозначается тем же символом, что и определитель матрицы.


6 Скалярное произведение векторов

Скалярное произведение векторов (vector inner product) определяется как скаляр, равный сумме попарных произведений соответствующих элементов. Векторы должны иметь одинаковый размер. Скалярное произведение двух векторов и равно , где – угол между векторами. Если векторы ортогональны, их скалярное произведение равно 0. Обозначается скалярное произведение тем же символом умножения. Никогда не применяйте для обозначения скалярного произведения символ ×, который является общеупотребительным символом векторного произведения.

Пример:



7 Векторное произведение

Векторное произведение (cross product) двух векторов и с углом между ними равно вектору с модулем , направленным перпендикулярно плоскости векторов и . Обозначают векторное произведение символом ×, который можно ввести нажатием кнопки CrossProduct (Векторное произведение) на панели Matrix (Матрица) или сочетанием клавиш Ctr + 8.


Пример:



8 Сумма элементов вектора и след матрицы

Иногда бывает нужно вычислить сумму всех элементов вектора. Для этого существует вспомогательный оператор, задаваемый кнопкой VectorSum (Сумма вектора) на панели Matrix (Матрица) или сочетанием клавиш Ctrl + 4. Этот оператор чаще оказывается полезным не в векторной алгебре, а при организации циклов с индексированными переменными.

Сумму диагональных элементов квадратной матрицы называют следом (trace) матрицы. След можно найти с помощью функции tr:

tr(A) – след квадратной матрицы A.

Задание: Найдите след квадратной матрицы A = .

Решение:


9 Обращение квадратной матрицы

Поиск обратной матрицы возможен, если матрица квадратная, и ее определитель не равен нулю. Произведение исходной матрицы на обратную по определению является единичной матрицей. Для ввода оператора поиска обратной матрицы нажмите кнопку Inverse (Обратная матрица) на панели инструментов Matrix (Матрица).


10 Возведение матрицы в степень

К квадратным матрицам можно формально применять операцию возведения в степень . Для этого должно быть целым числом. Ввести оператор возведения матрицы в степень можно точно так же, как и для скалярной величины: нажав кнопку Raise to Power (Возвести в степень) на панели Calculator (Калькулятор) или клавишу ^. После появления местозаполнителя в него следует ввести значение степени .


11 Символьные преобразования

Все матричные и векторные операторы, о которых шла речь выше, допустимо использовать в символьных вычислениях. Мощь символьных операций заключается в возможности проводить их не только над конкретными числами, но и над переменными.

Пример:



12 Генераторы матриц

Самым наглядным способом создания матрицы или вектора является применение первой кнопки панели инструментов Matrix (Матрицы). Однако в большинстве случаев, в частности, при программировании сложных проектов, удобнее бывает создавать массивы с помощью встроенных функций.


12.1 Создание матрицы на основе функции

Matrix(M, N, f) – создание матрицы размера , каждый , элемент которой есть f(i, j), где:

  1. M – количество строк;

  2. N – количество столбцов;

  3. f(i, j) – функция.



12.2 Генерация матриц специального вида

В Mathcad легко создать матрицы определенного вида с помощью одной из встроенных функций:

  1. identity(N) – единичная матрица размера ;

  2. diag(V) – диагональная матрица, на диагонали которой находятся элементы вектора V;

  3. geninv(A) – создание матрицы, обратной матрице А;

  4. rref(A) – преобразование матрицы или вектора A в ступенчатый вид, где:

N – целое число;

V – вектор;

A – матрица из действительных чисел.


Примечание: Размер матрицы A для функции geninv должен быть таким, чтобы .


13 Выделение части матрицы

Часть матрицы выделяется одним из следующих способов:

1) для выделения одного элемента предназначен оператор нижнего индекса. Оператор вводится нажатием кнопки Subscript (Нижний индекс) со значком xn на панели Matrix (Матрица), либо нажатием клавиши [;

2) для выделения из матрицы столбца примените оператор выделения столбца нажатием кнопки Matrix Column (Столбец матрицы) с изображением угловых скобок <> на панели Matrix (Матрица), либо сочетанием клавиш Ctrl + 6. Этот оператор называют еще, по аналогии с предыдущим, оператором верхнего индекса;

3) чтобы выделить из матрицы строку, примените тот же оператор <> к транспонированной матрице;

4) для выделения подматрицы используйте встроенную функцию submatrix(A, ir, jr, ic, js), возвращающую часть матрицы A, находящуюся между строками ir, jr и столбцами ic, jc включительно.

Примечание: выделить из матрицы один столбец или одну строку можно и с помощью функции submatrix; нумерация строк и столбцов ведется в MathCAD с нуля.


14 Слияние матриц

Для того, чтобы составить из двух и более матриц одну, в Mathcad предусмотрены две матричные функции:

1) augment(A, B, C, …) – матрица, сформированная слиянием матриц – аргументов слева направо;

2) stack(A, B, C, …) – матрица, сформированная слиянием матриц – аргументов сверху вниз, где A, B, C, … - векторы или матрицы соответствующего размера.

Задание: Составьте из двух матриц и одну двумя способами.