Формирование векторов и матриц. Особенности задания векторов и матриц.
Описанные выше простые правила вычислений распространяются и на гораздо более сложные вычисления, которые (при использовании обычных языков программирования типа Бейсик или Паскаль) требуют составления специальных программ. MATLAB – система, специально предназначенная для проведения сложных вычислений с векторами, матрицами и массивами. При этом она по умолчанию предполагает, что каждая заданная переменная – это вектор, матрица или массив. Все определяется конкретным значением переменной. Например, если задано Х=1, то это значит, что X – это вектор с единственным элементом, имеющим значение 1. Если надо задать вектор из трех элементов, то их значения следует перечислить в квадратных скобках, разделяя пробелами. Так, например, присваивание:
>> V=[1 2 3] V=1 2 3Задает вектор V, имеющий три элемента со значениями 1, 2 и 3. После ввода вектора система выводит его на экран дисплея.
Задание матрицы требует указания нескольких строк. Для разграничения строк используется знак; (точка с запятой). Этот же знак в конце ввода предотвращает вывод матрицы или вектора (и вообще результата любой операции) на экран дисплея. Так, ввод:
>> M=[1 2 3; 4 5 6; 7 8 9];Задает квадратную матрицу, которую можно вывести:
>> M M =1 2 34 5 67 8 9Возможен ввод элементов матриц и векторов в виде арифметических выражений, содержащих любые доступные системе функции, например:
>> V= [2+2/(3+4) exp(5) sqrt(10)]: >> V V =2.2857 148.4132 3.1623Для указания отдельного элемента вектора или матрицы используются выражения вида V(1) или M(i .j). Например, если задать:
>> M(2. 2) arts= 5То результат будет равен 5. Если нужно присвоить элементу M(i .j) [В тексте программ MATLAB лучше не использовать i и j как индексы, так как i и j – обозначение квадратного корня из -1. Но можно использовать I и J. – Примеч. ред.] новое значение х, следует использовать выражение:
M(ij) = xНапример, если элементу М(2, 2) надо присвоить значение 10, следует записать:
>> M(2. 2)=10Выражение М(i) с одним индексом дает доступ к элементам матрицы, развернутым в один столбец. Такая матрица образуется из исходной, если подряд выписать ее столбцы.
Следующий пример поясняет такой доступ к элементам матрицы М:
>> M=[1 2 3: 4 5 6: 7 8 9] M =1 2 34 5 67 8 9>> M(2) ans =4>> M(8) ans =6>> M(9) ans =9>> M(5)=100; >> M M =1 2 34 100 67 8 9Возможно задание векторов и матриц с комплексными элементами, например:
>> i=sqrt(-1): >> CM =[1 2: 3 4] + i*[5 6: 7 8]…или:
>> CM - [1+5*1 2+6*1: 3+7*1 4+8*1]Это создает матрицу:
CM =1.0000 + 5.00001 2.0000 + 6.000013.0000 + 7.00001 4.0000 + 8.00001Наряду с операциями над отдельными элементами матриц и векторов система позволяет производить операции умножения, деления и возведения в степень сразу над всеми элементами, т. е. над массивами. Для этого перед знаком операции ставится точка. Например, оператор * означает умножение для векторов или матриц, а оператор .* – поэлементное умножение всех элементов массива. Так, если М – матрица, то М.*2 даст матрицу, все элементы которой умножены на скаляр – число 2. Впрочем, для умножения матрицы,на скаляр оба выражения – М*2 и М.*2 – оказываются эквивалентными.
Имеется также ряд особых функций для задания векторов и матриц. Например, функция magic(n) задает магическую матрицу размера пхп, у которой сумма всех столбцов, всех строк и даже диагоналей равна одному и тому же числу:
— Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта.
— Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы).
— SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание.
SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Зарегистрироваться и Начать продвижение
>> M=magic(4) M =16 2 3 135 11 10 89 7 6 124 14 15 1>> sum(M) ans=34 34 34 34>> sum(M') ans=34 34 34 34>> sum(diag(M)) ans=34>> M(1.2)+M(2.2)+M(3.2)+M(4.2) ans= 34Уже сама по себе возможность создания такой матрицы с помощью простой функции magic заинтересует любителей математики. Но векторных и матричных функций в системе множество, и мы их детально рассмотрим в дальнейшем. Напомним, что для стирания переменных из рабочей области памяти служит команда clear.
