Шрифт
Урок 21. Векторы и матрицы в Mathcad
Play

Урок 21. Векторы и матрицы в Mathcad

С этими понятиями Вы могли сталкиваться, работая в Excel – столбец чисел называется вектор-столбцом, строка – вектор-строкой. Блок объектов является матрицей. Вычисления в Excel, по сути, являются операциями с векторами и матрицами. В этом уроке мы познакомимся с аналогичными вычислениями в Mathcad, и мы поймем, почему в Mathcad их проводить проще.

Введение

В предыдущих уроках наши векторы начинались с элемента с номером «0». В этом уроке для простоты сделаем номер первого элемента равным «1». Это можно сделать с помощью вкладки Расчет –> Параметры документа –> ORIGIN:

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

Теперь рассмотрим несколько матриц:

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

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

Матрицы выше являются квадратными 2х2, но у них может быть любой размер по строкам и столбцам:

Запомните: первое число – номер строки (или их количество), второе – столбца.

Элементы, выделенные с помощью подстрочных индексов:

Для вектор-столбца второй индекс можно опустить, но не для вектор-строки:

Во вкладке Математика –> Операторы и символы –> Операторы –> Векторы и матрицы Вы найдете команды для выделения столбцов и строк:

Многие операции для векторов и матриц аналогичны операциям для обычных чисел, переменных и функций: сложение, вычитание, некоторые виды умножения. Поиск обратной матрицы близко к операции деления. Вы можете записать эти операторы, используя имена векторов и матриц. В качестве примера рассмотрим векторное произведение матрицы и вектора:

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

Применение векторов очень широко. Вспомните пиксели на экране монитора – их могут быть миллионы. Они обрабатываются с помощью операций с матрицами.

В Mathcad

Для создания вектора или матрицы откройте вкладку Матрицы/таблицы. Когда курсор находится в пустой области щелкните по самой левой кнопке «Вставить матрицу». Появится сетка с маленькими квадратами:

Перемести указатель на сетку, выберите желаемый размер матрицы, затем щелкните левой кнопкой мыши. Появится пустая матрица:

Матрице можно присвоить имя, щелкнув на левую скобку, нажав [:] для оператора присваивания и введя имя:

Вставку и удаление строк и столбцов легко осуществлять с помощью команд из меню «Операторы с векторами/матрицами» на вкладке Матрицы и таблицы:

Операции с матрицами

Эффект от различных операций с матрицами и векторами будет проще понять, используя символы. Будем использовать две матрицы и два вектора:

Оператор транспонирования находится на вкладке Математика –> Операторы –> Векторы и матрицы:

Щелкните по правой границе матрицы и примените оператор. Он работает как для символьных, так и для числовых матриц:

Часто операции в векторами приходится совершать поэлементно. Для этого служит оператор векторизации. Операции в Excel зачастую являются поэлементными, они также важны и в Mathcad. Чтобы перемножить два вектора поэлементно, сначала введите простое умножение:

Затем выберите все выражение и примените векторизацию:

Вычислите, чтобы посмотреть результат: первый элемент умножается на первый, второй – на второй, и т.д.:

Другие поэлементные операции:

Поэлементные операции применимы только к массивам одного размера.

Сложение и вычитание

Сложение и вычитание выполняется поэлементно:

Эта операция также применима лишь к массивам одного размера.

С помощью оператора суммирования можно найти сумму всех элементов вектора (не матрицы):

Умножение на константу работает так:

При скалярном умножении матриц происходит умножение строк на столбцы. При этом используется тот же символ, что и при обычном умножении. Эта операция допустима только для тех матриц, в которых число строк в первой матрице равно числе столбцов во второй. Для наших матриц 2х2:

Заметьте, что последовательность множителей играет роль:

Скалярное произведение не коммутативно, за исключением особых случаев:

Скалярное произведение двух векторов дает результат с комплексно-сопряженными числами (с чертой сверху). Для действительных чисел на это можно не обращать внимания:

Этот оператор применим только для двух вектор-столбцов, состоящих из трех элементов:

Векторное произведение имеет широкое применение в механике, гидродинамике, электромагнетизме и в других областях.

Обратная матрица определяется только для квадратных матриц:

Произведение матрицы и ее обратной матрицы является единичной матрицей:

Произведение матрицы и единичной матрицы дает изначальную матрицу:

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

Если определитель равен нулю, обратной матрицы не существует, а матрица является сингулярной. Вспомните деление на ноль в обычной алгебре. Mathcad сообщит, если матрица является сингулярной:

Для скаляра определитель равен его модулю:

Для вектора команда Определитель вычисляет длину вектора:

Резюме

В этом уроке мы рассмотрели векторы и матрицы (массивы).

  1. Элементы массива можно вывести с помощью подстрочного индекса – один индекс для вектор-столбца, два – для других массивов. Первое индекс – для строк, второй – для столбцов.
  2. Есть специальные команды для извлечения отдельных строк и столбцов.
  3. Векторы и матрицы создаются и редактируются с помощью команд со вкладки Матрицы/таблицы.

Операции над векторами и матрицами, которые мы рассмотрели:

  1. Транспонирование.
  2. Поэлементные операции.
  3. Сложение и вычитание.
  4. Скалярное произведение.
  5. Векторное произведение.
  6. Поиск обратной матрицы.
  7. Поиск определителя.
Другие интересные материалы About Павел Демидов

а длина длинного вектора какова?

Из вкладки калькулятор(или как он там называется) вызовите оператор абсолютного значения (модуля)

📎📎📎📎📎📎📎📎📎📎