"MATLAB 7 (Наиболее полное руководство в подлиннике)" - читать интересную книгу автора (Ануфриев И.Е., Смирнов А.Б., Смирнова Е.Н.)-¦9.0000 9.0000 2.5000
'4^1 й = ;Z> = (-9 9). Последний оператор можно заменить на эквивалентный м = [[S; b] [а,- 2.5]]. MATLAB позволяет конструировать блочно-диагональные матрицы с помощью функции bikdiag. Рассмотрим пример: » R - [1 2,- 3 4]; » Q = [5 6 7; 8 9 10; 11 12 13]; » Т = [-3 5; 6 7] ; Z = blkdiag(R. Q. Т) 2 = 12 0 0 0 0 0 3 4 0 0 0 0 0 0 0 5 6 7 00 о о а 9 ю о о 0 0 11 12 13 0 0 0 0 0 0 0-35 0 0 0 0 0 6 7 Блоки, используемые функцией bikdiag, не обязательно должны быть квадратными и одного размера. Глава 2. Работа с массивами 91 Обратной задачей к конструированию блочных матриц является выделение блоков. Выделение блоков Выделение блоков матриц осуществляется индексацией при помощи двоеточия, которая уже использовалась в предыдущих разделах для выделения блоков из векторов. Введите матрицу Р = 4 0 I9 2 0 21 5 5 5J 2 3 затем выделите очерченный блок, задав номера строк и столбцов при помощи двоеточия: » Р1 = Р(2:3,2:3) Р1 = 10 12 11 10 Для выделения из матрицы столбца или строки (т. е. массива, у которого один из размеров равен единице) следует в качестве одного из индексов использовать номер столбца или строки матрицы, а другой индекс заменить на двоеточие без указания пределов. Например, запишите вторую строку Р в вектор р » р р = 4 10 12 5 Р(2, :) При выделении блока до конца матрицы можно не указывать ее размеры, а использовать end: » р = Р(2, 2:end) р ¦= 10 12 5 Удаление строк и столбцов Как уже было сказано, в MATLAB парные квадратные скобки [ ] обозначают пустой массив, который, в частности, позволяет удалять строки и 92 Часть t. Основы работы В MATLAB столбцы матрицы. Для удаления строки следует присвоить ей пустой массив. Удалите, например, первую строку квадратной матрицы; » М = [2 0 3 1 1 4 6 1 3]; » М(1, :) = []; » М м = 114 6 13 |
|
|