Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Создание специальных матриц
ВMATLAB предусмотрены команды для создания векторов и матриц специального вида. Рассмотрим некоторые из них: zeros(M,N) – создает матрицу размером M×N c нулевыми элементами: >> zeros(3,4) ans = 0 0 0 0 0 0 0 0 0 0 0 0 ones(M,N) – создает матрицу размером M×N c единичными элементами: >> ones(3,4) ans = 1 1 1 1 1 1 1 1 1 1 1 1 eye(M,N) – создает матрицу размером M×N c единицами по главной диагонали и остальными нулевыми элементами: >> eye(3,4) ans = 1 0 0 0 0 1 0 0 0 0 1 0 rand(M,N) – создает матрицу размером M×N из случайных чисел, равномерно распределенных в диапазоне от 0 до 1: >> rand(3,4) ans = 0.9501 0.4860 0.4565 0.4447 0.2311 0.8913 0.0185 0.6154 0.6068 0.7621 0.8214 0.7919 randn(M,N) – создает матрицу размером M×N из случайных чисел, распределенных по нормальному закону с нулевым математическим ожиданием и стандартным (среднеквадратическим) отклонением, равным единице 1: >> randn(3,4) ans = 1.1908 -0.1567 -1.0565 0.5287 -1.2025 -1.6041 1.4151 0.2193 -0.0198 0.2573 -0.8051 -0.9219 Для всех перечисленных команд можно задавать один аргумент M в случае квадратной матрицы (M=N): >> eye(3) ans = 1 0 0 0 1 0 0 0 1 rot90 – осуществляет разворот матрицы на 90o против часовой стрелки: >> Q=[1 2;3 4] Q = 1 2 3 4 >> R=rot90(Q) R = 2 4 1 3 D=diag(V) – диагональная матрица, элементы которой задаются во входном аргументе - векторе V; D=diag(V,k) – диагональная матрица со смещенной на k позиций диагональю (положительные k – смещение вверх, отрицательные – вниз), результатом является квадратная матрица размера length(V)+abs(k); d=diag(A) – выделение главной диагонали из матрицы A в вектор d; d=diag(A,k) – выделение k -ой диагонали из матрицы A в вектор d. Пример: Создать трехдиагональную матрицу
A =
размера 5×5 с помощью рассмотренных выше команд. Решение: Введем вектор V с целыми числами от одногодо пяти и используем его для создания диагональной матрицы и матрицы со смещенной на 2 вверх диагональю. Вектор длины четыре, содержащий двойки, заполняется, например, так: 2*ones(1,4). Этот вектор укажем в первом аргументе команды diag, а минус единицу – во втором и получим третью вспомогательную матрицу. Теперь достаточно вычесть из первой матрицы вторую и сложить с третьей: >> V=1:5; >> A=diag(V)-diag(V(1:3),2)+diag(2*ones(1,4),-1) A = 1 0 -1 0 0 2 2 0 -2 0 0 2 3 0 -3 0 0 2 4 0 0 0 0 2 5 Более полная информация о специальных матрицах содержится в разделе elmat справочной системы MATLAB. Date: 2016-08-30; view: 273; Нарушение авторских прав |