Генерирование векторов и матриц.
Ввод векторов.
Векторы-строки:
a=1:6 linspace(1,6,10)
Векторы-столбцы:
a=(1:6)' linspace(1,6,10)'
О длине вектора можно справиться следующим образом:
Length(d)
Рассмотрите действие операторов.' и ' над векторами:
y1=linspace(1,6,4)'; y2=y1; y=y1+i*y2; y.', y'
Команды linspace и: применимы для задания только вещественных векторов.
Ввод некоторых специальных матриц.
Ниже приводятся некоторые часто используемые матрицы, задаваемые с помощью функций:
eye(m), eye(m,n) - матрицы из нулей, но с единицами на главной диагонали, размерами m x mи m x n соответственно;
ones(m), ones(m,n) – матрицы из одних единиц;
zeros(m), zeros(m,n) - из одних нулей;
rand(m), rand(m,n) из случайных чисел, равномерно распределенных на интервале (0, 1).
randn(m), randn(m,n) - из случайных чисел, нормально распределенных c мат. ожиданием=0 и дисперсией=1.
Примеры:
Z = zeros(2,4)
F = 5*ones(3,3)
N = fix(10*rand(1,10)) %используется округление к нулю
R = randn(4,4)
Размеры матриц можно узнавать с помощью функции size:
size(F), [m,n]=size(Z)
А вот как можно задать другие размеры уже существующей матрицы (соблюдая условие неизменности количества её элементов):
b=1:24
A=reshape(b,6,4)
Некоторые простые команды:
Triu(A), triu(A,0), triu(A,2), triu(A,-1), tril(A)
v=1:5, diag(v), diag(v,2), diag(v,-1)
Rot90(A), rot90(A,2)
Загрузка матриц.
Команда load cчитывает двоичные файлы, содержащие матрицы, созданные в MATLAB ранее, или текстовые файлы, содержащие численные данные. Текстовые файлы должны быть сформированы в виде прямоугольной таблицы чисел, отделенных пробелами, с равным количеством элементов в каждой строке. Например, создадим вне MATLAB текстовой файл, содержащий 4 строки:
16.0 3.0 2.0 13.0
5.0 10.0 11.0 8.0
9.0 6.0 7.0 12.0
4.0 15.0 14.0 1.0
Сохраним этот файл под именем magik.dat. Тогда команда
Load magik.dat
прочитает этот файл и создаст переменную magik, содержащую нашу матрицу.
М-файлы
Можно создавать свои собственные матрицы, используя М-файлы, которые представляют собой текстовые файлы, содержащие код MATLAB. Просто создайте файл с выражением, которое вы хотите написать в командной строке MATLAB. Сохраните его под именем, заканчивающимся на.m.
Например, создадим файл, включающий следующие 5 строк:
A = [...
16.0 3.0 2.0 13.0
5.0 10.0 11.0 8.0
9.0 6.0 7.0 12.0
4.0 15.0 14.0 1.0];
Сохраним его под именем magik.m. Тогда выражение
Magik
прочитает файл и создаст переменную A, содержащую исходную матрицу.
Объединение.
Объединение - это процесс соединения маленьких матриц для создания больших. Фактически, нашу первую матрицу мы создали объединением ее отдельных элементов. Пара квадратных скобок - это оператор объединения. Например, начнем с матрицы A (магического квадрата 4x4) и сформируем
В = [А, А+32; А+48 А+16]
Результатом будет матрица 8x8. получаемая соединением четырех подматриц.
Удаление строк и столбцов.
Можно удалять строки и столбцы матрицы, используя просто пару квадратных скобок. Рассмотрим
X = А;
Теперь удалим второй столбец матрицы X.
Х(:,2) = []
Эта операция изменит X следующим образом
X =
16 3 13
5 10 8
9 6 12
4 15 1
Если вы удаляете один элемент матрицы, то результат уже не будет матрицей. Так выражение
Х(1,2) = []
результатом вычисления выдаст ошибку. Однако использование одного индекса удаляет отдельный элемент или последовательность элементов и преобразует оставшиеся элементы в вектор-строку:
Х(2:2:10) = []
Командное окно: Команда format.
Команда format управляет численным форматом значений, выводимых MATLAB.Этаоперация влияет только на то, как числа изображаются на экране, но не влияет на то. как их вычисляет и сохраняет MATLAB. Ниже представлены различные форматы чисел, используемые для отображения вектора х с компонентами различных величин.
x = [4/3 1.2345e-6]
Format short
1.3333 0.0000
Format short e
1. ЗЗЗЗе+000 1.2345e-006
Format short g
1.3333 1.2345e-006
Format long
1.33333333333333 0.00000123450000
Format long e
1.333333333333333e+000 1.234500000000000e-006
Format long g
1.33333333333333 1.2345e-006
Format bank
1.33 0.00
Format rat
4/3 1/810045
Format hex
3ff5555555555555 3eb4b6231abfd271
В добавление к командам format, рассмотренным выше,
Format compact
убирает много пустых линий, появляющихся на выходе. Это позволяет видеть больше информации на экране. Если нужно изменить контроль над форматом выходных данных, то следует использовать функции sprintf и fprintf.
Сокращение выходных данных
Если набрать выражение и нажать Return или Enter, MATLAB автоматически выведет результат на экран. Однако если в конце строки поставить точку с запятой, MATLAB проведет вычисления, но не отобразит их. Это часто бывает нужно при создании больших матриц. Например,
А = magic(100);
Длинные командные строки
Если выражение не умещается на одной строке, используйте троеточие, а за ним Return или Enter для обозначения того, что выражение продолжается на cледующей строке. Например
s = 1 -1/2 + 1/3 -1/4 + 1/5 - 1/6 +1/7...
-1/8 + 1/9 - 1/10 + 1/11 - 1/12;
Пробелы вокруг знаков =, +, - не обязательны, но улучшают читаемость текста.