Операторы
и функции
Оператор —
это специальное обозначение для определенной операции над
данными —
операндами.
Например, простейшими арифметическими операторами
являются знаки суммы +, вычитания -, умножения * и деления /. Операторы используются
совместно с операндами. Например, в выражении 2+3 знак + является оператором
сложения, а числа 2 и 3 — операндами.
Следует отметить, что большинство операторов относится к матричным операциям,
что может служить причиной серьезных недоразумений. Например, операторы умножения
* и деления / вычисляют произведение и частное от деления двух многомерных массивов,
векторов или матриц. Есть ряд специальных операторов, например, оператор \ означает
деление
справа налево,
а операторы . * и . / означают соответственно
поэлементное
умножение и
поэлементное
деление массивов.
Следующие примеры поясняют сказанное на примере операций с векторами:
» Vl=[2
4 6 8]
V1=
2468
» V2=[l 2 3 4]
V2 =
1234
»
V1/V2
ans =
2
» V1.*V2
ans=
2 8 18 32
»
V1./V2
ans =
2 2 2 2
Полный список операторов можно получить, используя команду » help ops.
Постепенно мы рассмотрим все операторы системы MATLAB и обсудим особенности
их применения. А пока приведем только часть полного списка операторов, содержащую
арифметические операторы:
» help ops
Operators
and special characters.
Arithmetic
operators.
|
|
|
|
|
|
Plus
|
-
Plus
|
+
|
|
|
Up!
us
|
-
Unary plus
|
+
|
|
|
Minus
|
-
Minus
|
—
|
|
|
Umlnus
|
-
Unary minus
|
-
|
|
|
Mtimes
|
-
Matrix multiply
|
*
|
|
|
|
|
|
|
|
|
|
|
|
|
times
|
-
Array multiply
|
*
|
|
|
mpower
|
-
Matrix power
|
^
|
|
|
poWer
|
-
Array power
|
.^
|
|
|
mldlvlde
|
-
Backslash or left matrix divide
|
\
|
|
|
mrdlvlde
|
-
Slash or right matrix divide
|
/
|
|
|
Idi-vide
|
-
Left array divide
|
.\
|
|
|
rdlvlde
|
-
Right array divide
|
./
|
|
|
kron
|
-
Kronecker tensor product
|
kron
|
|
|
|
|
|
|
Функции
—
это имеющие уникальные имена объекты, выполняющие
определенные преобразования своих аргументов и при этом возвращающие результаты
этих преобразований.
Возврат результата —
отличительная черта функций.
При этом результат вычисления функции с одним выходным параметром подставляется
на место ее вызова, что позволяет использовать функции в математических выражениях,
например функцию sin в 2*sin(pi/2).
Функции в общем случае имеют список аргументов (параметров), заключенный в круглые
скобки. Например, функция Бесселя записывается как bessel(NU.X). В данном случае
список параметров содержит два аргумента — NU в виде скаляра и X в виде вектора.
Многие функции допускают ряд форм записи, отличающихся списком параметров. Если
функция возвращает несколько значений, то она записывается в виде [Yl. Y2....]=func(Xl.
X2...)
где Yl. Y2,... — список
выходных
параметров и XI, Х2.... — список
входных
аргументов (параметров).
Со списком элементарных функций можно ознакомиться, выполнив команду hel p elfun,
а со списком специальных функций — с помощью команды help specfun. Функции могут
быть
встроенными
(внутренними) и
внешними,
или
т-функциями.
Так, встроенными являются наиболее распространенные элементарные функции
например, sin(x) и ехр(у), тогда как функция sinh(x) является внешней функцией.
Внешние функции содержат свои определения в m-файлах. Задание таких функций
с помощью специального редактора m-файлов мы рассмотрим в уроке 5. Встроенные
функции хранятся в откомпилированном ядре системы MATLAB, в силу чего они выполняются
предельно быстро.
Содержание раздела