АрхитектураNo4
.pdfмой диагональной матрицы и двух матриц с шестью ненулевыми элементами над и под главной диагональю.
Посмотрите содержание полученных файлов (они должны находиться в подкаталоге work основного каталога MATLAB).
Матрицы больших размеров удобно представлять в наглядном виде. В программе MATLAB это можно проделать при помощи визуализации матриц. В следующем разделе разобраны простейшие способы визуализации матричных данных.
Визуализация матриц
Матрицы с достаточно большим количеством нулей называются разреженными. Часто необходимо знать, где расположены ненулевые элементы, т. е. получить так называемый шаблон матрицы. Для этого в MATLAB служит функция spy. Посмотрим шаблон матрицы G , определенной в предыдущем разделе
G = 2 * е у е ( 7 ) + d i a g ( o n e s ( l , б), 1) + d i a g ( o n e s ( l , б), -1)
После выполнения команды spy на экране появляется графическое окно Figure 1. На рис. 2.10 изображена часть окна без заголовка, меню и панели инструментов.
На вертикальной и горизонтальной осях отложены номера строк и столбцов. Ненулевые элементы обозначены маркерами, внизу графического окна указано число ненулевых элементов (nz = 19).
Наглядную информацию о соотношении величин элементов матрицы дает функция imagesc, которая интерпретирует матрицу как прямоугольное изображение. Каждый элемент матрицы представляется в виде квадратика, цвет которого соответствует величине элемента. Для того чтобы узнать соответствие цвета и величины элемента, следует использовать команду coiorbar, выводящую рядом с изображением матрицы шкалу цвета. Наконец, для печати на монохромном принтере удобно получить изображение в оттенках серого цвета,используя команду coiormap(gray). Мы будем работать с матрицей М, определенной в предыдущем разделе.
Шаблон разреженной матрицы
Интерпретация матрицы как изображения
Набирайте команды, указанные ниже, и следите за состоянием графического окна:
В результате получается наглядное представление матрицы
Поэлементные операции и встроенные функции
Поскольку векторы и матрицы хранятся в двумерных массивах, то применение математических функций к матрицам и поэлементные операции производятся так же, как для векторов. Работа со встроенными функциями (такими как min, max, sum и т. д.) имеет свои особенности в применении к матрицам.
Поэлементные операции с матрицами
Введите две матрицы
Умножение каждого элемента одной матрицы на соответствующий элемент другой производится при помощи оператора . *
Для деления элементов первой матрицы на соответствующие элементы второй используется . /, а для деления элементов второй матрицы на соответствующие элементы первой служит . \
Поэлементное возведение в степень осуществляется при помощи . ^
Показатель степени может быть матрицей того же размера, что и матрица, возводимая в степень. При этом элементы первой матрицы возводятся в степени, равные элементам второй матрицы:
Обратите внимание на форму вывода результата. Во-первых, выделен общий множитель 1. Ое+ооз для всех элементов результирующей матрицы, т. е. ответ выглядит так:
Во-вторых, при возведении 4-3 и 9-3 получились нули, т. е. произошла потеря точности из-за того, что использовался формат short. Дело в том, что 4-3 = 0.0156, 9-3 =0.000016935, а эти числа малы по сравнению с остальными, и допустимого числа знаков формата short не хватает для их отображения на экране. Если мы хотим получить более точный результат поэлементного возведения в степень, то мы должны задать формат long, и затем вывести РВ снова:
Заметьте, что повторного вычисления элементов матрицы РВ не потребовалось. Вне зависимости от установленного формата вывода все вычисления производятся с двойной точностью (в предположении, что данные типа single не участвуют в операциях). Перейдем теперь к вычислению математических функций от элементов матриц.
Задания на матрицы
1. Задана квадратная матрица
Элементы матрицы А обозначим aik . Требуется узнать и записать размер матрицы в переменную п (конечно, он равен 3, но лучше использовать функцию для автоматического определения размера) и вычислить приведенные ниже величины (нормы матрицы):
2. При помощи встроенных функций для заполнения стандартных матриц, индексации двоеточием и, возможно, поворота, транспонирования или вычеркивания получите следующие матрицы:
3. Сконструируйте блочные матрицы (используя функции для заполнения стандартных матриц) и определите заданные величины, применяя функции обработки данных и поэлементные операции.