| Деструктор
Точечные изображения как объекты
Геометрическая оптика Фотоэлектрический
эффект
Ядерные реакции Волновые свойства
Квантовая механика Электромагнитное
поле
Задачник по ядерной физике Квантовая
физика Электростатика
Математика MATLAB Компьютерная математика Maple
Лекции по математике учебник
Outlook На главную Числовые
ряды |
Компьютерная математика Mathematica
Операторы
и функции
Операторы и функции являются основными кирпичиками в построении математических выражений, которые вычисляются или преобразуются системой Mathematica. Кроме того, это важнейшие элементы языка программирования системы. В данном разделе мы познакомимся с этими объектами.
Математические выражения в системе Mathematica записываются с помощью операторов и функций. Операторы (от слова operator — исполнитель) являются элементами записи математических выражений, указывающими на то, какие действия производятся над символьными или числовыми данными. Когда эти данные используются совместно с операторами, их называют операндами.
Выражения, составленные из операторов, операндов и функций, способны возвращать результат своего вычисления. К примеру, если вычисляется сумма 2+3, то знак «+» является оператором, числа 2 и 3 — операндами, а вся запись 2+3 — выражением. Сами по себе операторы не возвращают какого-либо значения.
Существуют общепринятые приоритеты выполнения операций, например, в первую очередь выполняются сложение и вычитание, затем умножение и деление и далее другие операции. С помощью круглых скобок можно изменять последовательность выполнения действий, например, в выражении (2+3) М вначале будет вычислено 2+3, а затем уже результат будет умножен на число 4. В сомнительных случаях применение скобок особенно желательно, например 2^2+3 даст 7, а 2^ (2 + 3) даст 32.
Функции времени и даты
Ряд функций служит для возврата текущего времени и даты. Они перечислены ниже.
calendar(d) — возвращает календарь на месяц, в который попадает день, заданный аргументом d (дни отсчитываются от начала летоисчисления);
calendar — возвращает матрицу размером 6x7, содержащую календарь на текущий месяц. Календарь начинается с воскресения (первый столбец) и завершается субботой;
calendar(y ,m) — возвращает календарь на месяц, заданный аргументом т, и год, заданный аргументом у;
Вызов функции без присваивания результата выдает календарь на экран. Примеры:
» calendar
Jul 2000
|
S |
М |
Tu |
W |
Th |
F |
S |
|
|
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
|
2 |
3 |
4 |
5 |
6 |
7 |
8 |
|
|
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|
|
16 |
17 |
18 |
19 |
20 |
21 |
22 |
|
|
23 |
24 |
25 |
26 |
27 |
28 |
29 |
|
|
30 |
31 |
0 |
0 |
0 |
0 |
0 |
|
|
|
calendar(700477)
Nov 1917
|
|
||||||||
|
|
S |
M |
Tu |
W |
Th |
F |
S |
|
|
|
0 |
0 |
0 |
0 |
1 |
2 |
3 |
|
|
|
4 |
5 |
6 |
7 |
8 |
9 |
10 |
|
|
|
11 |
12 |
13 |
14 |
15 |
16 |
17 |
|
|
|
18 |
19 |
20 |
21 |
22 |
23 |
24 |
|
|
|
25 |
26 |
27 |
28 |
29 |
30 |
0 |
|
|
|
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
|
|
clock — возвращает вектор из 6 элементов, содержащий текущую дату и время в десятичной форме [год месяц день час минуты секунды]. Первые пять элементов этого вектора — целые числа. Шестой элемент имеет несколько десятичных знаков после запятой. Функция fix(clock) округляет число секунд до целого значения. Пример:
» c=clock
с =
1.0e+003 *
2.0000 0.0070 0.0240 0.0200 0.0120 0.0148
» fix(clock)
ans =
2000 7 24 20 12 26
cputime — возвращает время работы процессора (в секундах) , использованное системой MATLAB с момента ее запуска. Это число может выйти за рамки внутреннего представления, и тогда отсчет времени начинается заново. Пример:
» +tl=cputime; w=surf(peaks(30));cputime-tl
ans =
0.2200
str = date — возвращает строку, содержащую дату в формате дд-ммм-гггг (день-месяц-год). Пример:
» d = date
d =
24-Jul-2000
datenum — преобразует строку даты в порядковый номер даты, который отсчитывается с некоторого начального дня (01.01.00);
datenum(str) — преобразует дату, заданную строкой str, в порядковый номер даты. Строка string должна иметь один из следующих форматов: 0, 1, 2, 6, 13, 14, 15 или 16, определенных для функции datestr;
datenum(Y.M.D) — возвращает порядковый номер даты для соответствующих массивов элементов Y, М и D (год, месяц, день). Массивы Y, М и D должны иметь одинаковую размерность (при этом любые из них могут быть скалярами);
datenum(Y.M.D,H.MI,S) — возвращает порядковый номер даты для соответствующих массивов элементов Y, М, D, H, Ml и S (год, месяц, день, часы, минуты, секунды). Массивы Y, М, D, H, Ml и S должны иметь одинаковую размерность (при этом любые из них могут быть скалярами).
Пример:
» n1 = datenum('26-Nov-1998')
n1 =
730085
» Y=[1998,2000];M-[1,12];D=23;N=datenum(Y,M,D)
N =
729778 730843
datestr(D, dateform) — преобразует каждый элемент массива порядковых номеров даты D в строку. Аргумент dateform определяет формат результата; dateform может быть номером или строкой в соответствии с табл. 8.5.
Таблица 8.5. Форматы представления даты
|
Dateform(номер) |
Dateform (строка) |
Пример |
|
0 |
'dd-rmiM-yyyy HH:MM:SS' |
1l-Mar-1995 03:45 |
|
1 |
'dd-mmM-yyyy' |
Ol-Mar-1995 |
|
2 |
'mm/dd/yy' |
03/01/95 |
|
3 |
' mmm ' |
Mar |
|
4 |
'm' |
M |
|
5 |
'mm' |
3 |
|
6 |
'mm/dd' |
03/01 |
|
7 |
'dd' |
1 |
|
8 |
'ddd' |
Wed |
|
9 |
'd' |
W |
|
10 |
'УУУУ' |
1995 |
|
11 |
'УУ |
95 |
|
12 |
' mmmyy ' |
Mar95 |
|
13 |
'HH:MM:SS' |
15:45:17 |
datevec(A) — преобразует входные величины в массив размерности пхб, каждая строка которого представляет собой вектор [Y,M.D,H,MI,S]. Первые пять элементов вектора — целые числа. Массив А может состоять или из строк, удовлетворяющих формату функции datestr, или из скалярных величин, созданных функциями datenum и now;
[Y, M., D, H. MI, S] = datevec (A) — возвращает компоненты вектора даты как индивидуальные переменные.
Любой компонент входного вектора, который не вписывается в нормальный диапазон дат, преобразуется в следующий диапазон (так, например, несуществующая дата June 31 преобразуется в July 1). Допускаются значения нулевого месяца и нулевого дня. Например:
» n = datevecC 11/31/98')
n=
1998 12 1 0 0 0
» n = datevec(710223)
n =
1944 7 10 0 0
О eomday (Y, М) — возвращает последний день года и месяца, заданных соответственно
элементами массивов Y и М. Пример (нахождение високосных лет двадцатого столетия):
» у = 1900:1999;
» Е = eomday(y.2);
» y(find(E==29))
ans=
Columns 1 through 6
1904 1908 1912 1916 1920 1924
Columns 7 through 12
1928 1932 1936 1940 1944 1948
Columns 13 through 18
1952 1956 1960 1964 1968 1972
Columns 19 through 24
1976 1980 1984 1988 1992 1996
etime(t2,tl) — возвращает длительность промежутка времени (в секундах),
задаваемого векторами t1 и t2. Векторы должны удовлетворять формату, выдаваемому
функцией clock:
Т = [год месяц день час минуты секунды].
Функция работает некорректно, если в текущий промежуток времени попадут границы
месяца или года, что, однако, случается крайне редко и исправляется при повторе
операции. Пример (вычисляется время, затрачиваемое на быстрое преобразование
Фурье с 2048 точками):
» х = rand(2048,l);t = clock; fft(x); etime(clock.t);etime (clock.t)
ans =
0.0500
now — возвращает текущие время и дату в форме числа. Использование rem(now.l) возвращает только время, a floor(now) — только дату. Пример:
» t1 = now, t2 = rem(now,1)
t1 =
7.3009e+005
t2 =
0.6455
tic — запускает таймер;
toc — выводит время, прошедшее с момента запуска таймера;
t = toe — возвращает прошедшее время в переменной t. Пример:
» tic.surf(peaks(50));toc
elapsed_time =
0.7600
[N,S] = weekday(D) — возвращает день недели в виде числа N и в виде строки S для каждой даты массива D. Пример:
» D=[728647,735730]:[N.S] = weekday(D)
N =
2 1
S=
Mon Sun
| Объектно-ориентированный подход CorelDRAW Установка параметров цвета в цифровом виде Искусство Западная Европа Трехмерное объектно-ориентированное программное обеспечение CAD Эффект Комптона Волновые свойства электронов Геометрическая оптика Фотоэлектрический эффект Строение атомных ядер Волновые свойства микрочастиц Математические пакеты Моделирование и расчет электронных схем Конструкционные материалы Релятивистская механика Справочник по физикеПрикладная математика Архитектурное проектирование ArchiCAD Строительное и ландшафтного проектирования Planix Home 3D Architect Функции преобразования ; |