Специальные символы
Символы () (круглые скобки) используются для задания порядка выполнения операций в арифметических выражениях, указания последовательности аргументов функции и указания индексов элемента вектора или матрицы. Если X и V – векторы, то X(V) можно представить как [X(V(D), X(V(2))…..X(V(n))]. Элементы вектора V должны быть целыми числами, чтобы их можно было использовать как индексы элементов массива X. Ошибка генерируется в том случае, если индекс элемента меньше единицы или больше, чем size(X). Такой же принцип индексирования действителен и для матриц. Если вектор V имеет т компонентов, а вектор W – п компонентов, то A(V,W) будет матрицей размера mxn, сформированной из элементов матрицы А, индексы которой – элементы векторов V и W.
Символы [ ] (квадратные скобки) используются для формирования векторов и матриц:
- [6.9 9.64 sqrt(-l)] – вектор, содержащий три элемента, разделенных пробелами;
- [6.9. 9.64 .i] – такой же вектор;
- [1+j 2-j 3] и [1 +j 2 – j 3] – разные векторы: первый содержит три элемента, а второй пять;
- [11 12 13: 21 22 23] – матрица размера 2x3. Точка с запятой разделяет первую и вторую строки.
Еще несколько примеров:
- А = [ ] – сохраняет пустую матрицу в А;
- А(m.:) = [] – удаляет строку m из матрицы А;
- А(:,n) = [ ] – удаляет столбец n из матрицы А.
Символы { } (фигурные скобки) используются для формирования массивов ячеек. Например, {magic(3) 6.9 'hello'} – массив ячеек с тремя элементами.
Символ. (десятичная точка) используется для отделения дробной части чисел от целой. Например, 314/100, 3.14 и. 314е1 – одно и то же число.
Кроме того, символ точки. используется для выделения полей структур. Например, A.(field) и A(i).field, где А – структура, означает выделение поля структуры с именем "field".
Ниже перечислено назначение остальных специальных символов MATLAB:
- .. (родительский каталог) – переход по дереву каталогов на один уровень вверх;
- … (продолжение) – три или более точек в конце строки указывают на продолжение строки;
- ; (точка с запятой) – используется внутри круглых скобок для разделения строк матриц, а также в конце операторов для запрета вывода на экран результата вычислений;
- , (запятая) – используется для разделения индексов элементов матрицы и аргументов функции, а также для разделения операторов языка MATLAB. При разделении операторов в строке запятая может заменяться на точку с запятой с целью запрета вывода на экран результата вычислений;
- % (знак процента) – используется для указания логического конца строки. Текст, находящийся после знака процента, воспринимается как комментарий и игнорируется (увы, за исключением русскоязычных комментарий, которые нередко ведут к ошибочным командам);
- ! (восклицательный знак) – является указателем ввода команды операционной системы. Строка, следующая за ним, воспринимается как команда операционной системы;
- = (знак равенства) – используется для присваивания значений в арифметических выражениях;
- ' (одиночная кавычка, апостроф) – текст в кавычках представляется как вектор символов с компонентами, являющимися ASCII-кодами символов. Кавычка внутри строки задается двумя кавычками. Например:
>
>
a
-
'Hello'
'my friend'
a
=
Hello'my friend
- ' (транспонирование с комплексным сопряжением) – транспонирование матриц, например А' – транспонированная матрица А. Для комплексных матриц транспонирование дополняется комплексным сопряжением. Строки транспонированной матрицы соответствуют столбцам исходной матрицы;
- .' (транспонирование) – транспонирование массива, например А.' – транспонированный массив А. Для комплексных массивов операция сопряжения не выполняется;
- [.] – горизонтальная конкатенация. Так, [А.В] – горизонтальная конкатенация (объединение) матриц А и В. А и В должны иметь одинаковое количество строк. [А В] действует аналогично. Горизонтальная конкатенация может быть применена для любого числа матриц в пределах одних скобок: [А,В,С]. Горизонтальная и вертикальная конкатенации могут использоваться одновременно: [А,В:С];
- [:] – вертикальная конкатенация. Так, [А:В] – вертикальная конкатенация (объединение) матриц А и В. А и В должны иметь одинаковое число столбцов. Вертикальная конкатенация может быть применена для любого числа матриц в пределах одних скобок: [А:В:С]. Горизонтальная и вертикальная конкатенации могут использоваться одновременно: [А;В,С];
- (),{} – присваивание подмассива. Приведем несколько примеров:
- А(1)=В – присваивает значения элементов массива В элементам массива А, которые определяются вектором индексов I. Массив В должен иметь такую же размерность, как и массив I, или может быть скаляром;
- А(I,J)=B – присваивает значения массива В элементам прямоугольной подматрицы А, которые определяются векторами индексов I и J. Массив В должен иметь LENGTH(I) строк и LENGTH(J) столбцов;
- А{1}=В, где А – массив ячеек и I – скаляр, помещает копию массива В в заданную ячейку массива А. Если I имеет более одного элемента, то появляется сообщение об ошибке.