-
Матрицы представляют собой самые распространенные объекты системы MATLAB. Ниже описываются основные операции с матрицами. По обилию матричных операторов и функций MATLAB является лидером среди массовых систем компьютерной математики.
-
Для создания матриц, все элементы которых – единицы, используется функция ones: | ones(n) – возвращает матрицу размера nхn, все элементы которой – единицы. Если n – не скаляр, то появится сообщение об ошибке; | ones(m.n) или ones([m n]) – возвращают матрицу размера mxn, состоящую из единиц;
-
Функция linspace формирует линейный массив равноотстоящих узлов. Это подобно оператору:, но дает прямой контроль над числом точек. Применяется в следующих формах: | linspace(a.b) – возвращает линейный массив из 100 точек, равномерно распределенных между а и b;
-
р = randperm(n) – возвращает случайные перестановки целых чисел 1:n в векторе-строке. Пример: | >> randperm(6) | ans = | 243651 | Функция rand генерирует массивы случайных чисел, значения элементов которых равномерно распределены в промежутке (0, 1): | rand(n) – возвращает матрицу размера nхn.
-
Конкатенацией называют объединение массивов, которое реализует следующая функция. | С = cat (dim, А, В) – объединяет массивы А и В в соответствии со спецификацией размерности dim и возвращает объединенный массив;
-
Для перестановок элементов матриц служат следующие функции: | В = fiiplr(A) – зеркально переставляет столбцы матрицы А относительно вертикальной оси. | Пример: | >> F=[1.2.3;5.45.3] | F = | 1 2 3 | 5 45 3 | >> fliplr(F) | ans= | 3 2 1 | 3 45 5
-
Несколько простых функций служат для перемножения элементов массивов: | prod(A) – возвращает произведение элементов массива, если А – вектор, или вектор-строку, содержащую произведения элементов каждого столбца, если А – матрица;
-
Определены следующие функции суммирования элементов массивов: | sum(A) – возвращает сумму элементов массива, если А – вектор, или вектор-строку, содержащую сумму элементов каждого столбца, если А – матрица;
-
Для создания матриц, состоящих из других матриц, используются следующие функции: | repmat (А, m, n) – возвращает матрицу В, состоящую из mxn копий матрицы А (т. е. в матрице mxn каждый элемент заменяется на копию матрицы А); | repmat(А,n) – формирует матрицу, состоящую из nхn копий матрицы А;
-
При выполнении ряда матричных вычислений возникает необходимость в выделении треугольных частей матриц. Следующие функции обеспечивают такое выделение: | tril(X) – возвращает матрицу, все элементы которой выше главной диагонали X заменены нулями, неизменными остаются лишь элементы нижней треугольной части, включая элементы главной диагонали;
-
Начиная с этого раздела рассматриваются функции, относящиеся к различным специальным матрицам. Они довольно широко используются при решении достаточно серьезных задач матричного исчисления. В связи с тем, что назначение соответствующих функций вытекает из их наименования, мы не будем сопровождать описание вводными комментариями. Соответствующие подробные определения вы найдете в книге.
-
Н = hadamard(n) – возвращает матрицу Адамара порядка n. | Матрица Адамара – это квадратная матрица размера n, составленная из значений 1 и -1, столбцы которой ортогональны, так что справедливо соотношение Н' *Н=n* I, где I = eye (п, п) (единичная квадратная матрица размера п).
-
hilb(n) – возвращает матрицу Гильберта порядка п. Матрица Гильберта является примером плохо обусловленной матрицы. Элементы матрицы Гильберта определяются как H(i.j)=l/(i+j-l).
-
magic(n) – возвращает матрицу размера nхn, состоящую из целых чисел от 1 до n2, в которой суммы элементов по строкам, столбцам и главным диагоналям равны одному и тому же числу. Порядок матрицы должен быть больше или равен 3. | Пример: | >> M=magic(4) | M = | 16 3 13 | 5 10 8 | 9 6 12 | 4 15 1
-
toeplitz(c, r) – возвращает несимметрическую матрицу Топлица, где с – ее первый столбец, а r – первая строка. Если первый элемент столбца с и первый элемент строки г различны, то выдается соответствующее предупреждение, но отдается предпочтение элементу столбца;
-
Весьма представителен в MATLAB набор матричных функций. Они перечислены ниже. | ехрт(Х) – возвращает ех от матрицы X. Комплексный результат получается, если X имеет неположительные собственные значения. Функция expm является встроенной и использует разложение Паде.