Лабораторная работа №7. Умножение матриц.
Произведение матрицы А на матрицу В определяется в предположении, что число столбцов матрицы А равно числу строк матрицы В.
Пусть даны матрица А размера [п х т] и матрица В размера [т х р].
Произведение матриц А и В, взятых в указанном порядке, обозначается А·В или АВ.
Свойство 5. (АВ) Т =В Т А Т , где А,В,С – матрицы, а l – число, а А Т это матрица, полученная из матрицы А в результате транспонирования.
Пусть нам даны две матрицы А и В, где матрица А имеет размерность [5х6], а матрица В имеет размерность [6х7].
2. После того, как на экране монитора появится рабочий стол операционной системы Windows, откройте окно Microsoft Word.
3. Вставьте объект Microsoft Equation 3.0.
4. Перепишем матрицы А и В в формульном редакторе. Для этого:
·Вставьте шаблон матрицы А в формульном редакторе, используя в ШАБЛОНЕ СКОБОК шаблон вида , а в ШАБЛОНЕ МАТРИЦ шаблон вида (в окне СТОЛБЦОВ выберите число 6, а в окне СТРОК – число 5).
·Выполните нажатие ЛКМ на кнопке ОПЕРАТОРЫ и выберите шаблон вида .
·Вставьте шаблон матрицы В в формульном редакторе, используя в ШАБЛОНЕ СКОБОК шаблон вида , а в ШАБЛОНЕ МАТРИЦ шаблон вида (в окне СТОЛБЦОВ выберите число 7, а в окне СТРОК – число 6) см. рис. 7.1.
Выполним вычисления. Для этого воспользуемся инструментами программы Excel.
6. Перепишите матрицы А и В из Word в Excel (см. рис. 7.2).
7. Чтобы подсчитать элементы матрицы С, воспользуемся функцией СУММПРОИЗВ, которая находится в мастере функций ƒх и перемножает все компоненты двух массивов, а затем складывает полученные произведения.
Но вышесказанную операцию функция может осуществить, если аргументы, которые являются массивами, имеют одинаковые размерности. В нашем примере матрицы А и В имеют разные размерности. Поэтому, чтобы воспользоваться данной функцией, прежде транспонируем матрицу В. Для этого:
· выполните нажатие ЛКМ на ячейке А7 и перетащите курсор по главной диагонали до ячейки G12;
· отпустите левую кнопку мыши, при этом область А7¸G12 окажется выделенной.
& Далее в тексте задачника будем обозначать: выделите область .
·Выполните нажатие ПКМ, после чего на экране компьютера появится контекстное меню;
·выполните нажатие ЛКМ на слове КОПИРОВАТЬ (рис. 7.3);
·в строке меню выполните нажатие ЛКМ на кнопке ПРАВКА, а затем в открывшемся контекстном меню выполните то же самое действие на кнопке СПЕЦИАЛЬНАЯ ВСТАВКА (рис. 7.4);
·в открывшемся окне выполните нажатие ЛКМ на Транспонировать(рис. 7.5);
·выполните нажатие ЛКМ на ОК; результат см. на рис. 7.6.
В результате проделанных действий на экране Excel появится матрица В Т (рис. 7.6), при помощи которой мы сможем осуществить поставленную задачу.
· воспользуйтесь функцией СУМПРОИЗВЕД, которая находится в мастере функций ƒх в категории МАТЕМАТИЧЕСКИЕ ;
· для вычисления второго элемента 1-ой строки необходимо ввести в ячейку В22 следующие строки: и т.д.;
· формула вычисления 7-го элемента 1-ой строки будет иметь следующий вид: и т.д.;
· в ячейке А26 разместим 1-ый элемент последней строки матрицы С: ;
· в ячейке G26 окажется последний элемент последней строки матрицы С:
При этом в окне программы появятся следующие числа (рис. 7.7):
На рис. 7.7 элементы матрицы С располагаются в ячейках А22¸G26.
9. Быструю проверку проделанных вычислений произведём также в программе Excel. Для этого:
· воспользуйтесь функцией МУМНОЖ, которая находится в мастере функций ƒх в категории МАТЕМАТИЧЕСКИЕ, где в окне Массив1 выделите область А1:F5, а в окне Массив2 выберите область А7:G12 (рис. 7.8);
на клавиатуре одновременно нажмите следующую комбинацию клавиш: Shift+Ctrl+Enter.
В результате чего в ячейках появятся следующие значения (рис. 7.9). Полученные значения доказывают правильность произведённых вычислений.
2. воспользуемся функцией ТРАНСП, которая находится в мастере функций fx в категории Ссылки и массивы в появившемся диалоговом окне в поле «Массив» выделим область A7:G12;
3. на клавиатуре одновременно нажмём комбинацию клавиш Shift+Ctrl+Enter.
В результате, если нам снова придётся находить произведение матриц размерностей [5×6] и [6×7], то автоматически результаты будут выведены на экран. Например, при нахождении произведения матриц
промежуточные вычисления и результат разу же появляются в ячейках электронной таблицы (см. рис. 7.10).
[expert_bq id=»1570″]Размер буфера для переупорядоченной матрицы A ограничиваем размером L2 кэша процессора он обычно составляет от 256 до 1024 kb для разных типов процессоров. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] Как видите, при умножении вектор-строки и вектор-столбца на квадратную матрицу на выходе мы всегда получаем строку или столбец того же размера. Этот факт имеет множество приложений — от решения линейных уравнений до всевозможных преобразований координат (которые в итоге тоже сводятся к системам уравнений, но давайте не будем о грустном).Умножение матриц: эффективная реализация шаг за шагом / Хабр
Все авторские права на размещённые материалы сохранены за правообладателями этих материалов. Любое коммерческое и/или иное использование кроме предварительного ознакомления материалов сайта natalibrilenova.ru запрещено. Публикация и распространение размещённых материалов не преследует за собой коммерческой и/или любой другой выгоды.
[expert_bq id=»1570″]Кроме того, капитан очевидность как бы намекает, что квадратные матрицы одинакового размера left n times n right согласованы всегда. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq]
Изучение матричных операций очень увлекательное, но сложное занятие. Если у вас нет времени на учёбу, ФениксХэлп может помочь в решении контрольных и самостоятельных работ, написании статей и диссертаций.
Согласованные матрицы
- Сочетательное свойство, или ассоциативность: (AB)C = A(BC)
- Распределительное свойство, или дистрибутивность: А(В+С) = АВ + АС / (А+В)С = АС + ВС
- Умножение на единичную матрицу: ЕА = А
- Умножение на нулевую матрицу: 0А = 0
·Вставьте шаблон матрицы А в формульном редакторе, используя в ШАБЛОНЕ СКОБОК шаблон вида , а в ШАБЛОНЕ МАТРИЦ шаблон вида (в окне СТОЛБЦОВ выберите число 6, а в окне СТРОК – число 5).
[expert_bq id=»1570″]Функция которая осуществляет вычисление такого маленького кусочка матрицы С , обычно называется микроядром, ниже приведен пример такой функции. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq]
Сейчас рассмотрим одно из лучших тренировочных заданий для тех, кто только начинает работать с матрицами. В нём нужно не просто перемножить какие-то две таблички, а сначала определить: допустимо ли такое умножение?
Умножение квадратных матриц
- перестановку местами двух параллельно лежащих рядов;
- умножение всех элементов определенного ряда из таблицы на число, не равняющееся нулю;
- прибавление к элементам одного ряда элементов из другого ряда, умноженных на конкретное число.
Итоговую матрицу, получаемую прямым произведением, называют блочной. Если вновь проанализировать рисунок, то можно заметить, что наш результат состоит из 4 блоков. Все они включают элементы матрицы B. Дополнительно элемент каждого блока умножен на конкретный элемент матрицы A. В первом блоке все элементы умножены на a11, во втором – на a12, в третьем – на a21, в четвертом – на a22.