Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> MATLAB

Операторы MATLAB: Арифметические, логические, битовые и операции над множествами

Оператор — символ, указывающий компилятору выполнить математическую или логическую операцию. MATLAB работает с матрицами и массивами, поэтому операторы работают как со скалярами, так и с нескалярными данными.

Арифметические операторы

Два типа:

№ Оператор и описание
1

+

Сложение или унарный плюс. A+B складывает A и B. Размеры должны совпадать или один — скаляр.

2

-

Вычитание или унарный минус. A-B вычитает B из A. Размеры должны совпадать или один — скаляр.

3

*

Матричное умножение. C = A*B — линейно-алгебраическое произведение. Число столбцов A = число строк B. Скаляр умножает матрицу любого размера.

4

.*

Поэлементное умножение. A.*B — произведение соответствующих элементов. Размеры должны совпадать или один — скаляр.

5

/

Матричное правое деление. B/A ≈ B*inv(A). Точнее: B/A = (A'\B')'.

6

./

Поэлементное правое деление. A./B — элементы A(i,j)/B(i,j). Размеры совпадают или один — скаляр.

7

\

Матричное левое деление. A\B ≈ inv(A)*B (но вычисляется иначе). Если A квадратная и B вектор-столбец, X = A\B решает AX = B. Предупреждение, если A плохо обусловлена.

8

.\

Поэлементное левое деление. A.\B — элементы B(i,j)/A(i,j). Размеры совпадают или один — скаляр.

9

^

Матричная степень. X^p — X в степени p (скаляр). Для целых — повторное возведение в квадрат. Для отрицательных — инверсия. Для остальных — через собственные значения/векторы.

10

.^

Поэлементная степень. A.^B — элементы A(i,j)^B(i,j). Размеры совпадают или один — скаляр.

11

'

Матричное транспонирование (с комплексно-сопряжением для комплексных).

12

.'

Поэлементное транспонирование (без комплексно-сопряжения).

Операторы отношения

Работают со скалярами и массивами. Для массивов — поэлементное сравнение, возвращают логический массив того же размера.

№ Оператор и описание
1

<

Меньше

2

<=

Меньше или равно

3

>

Больше

4

>=

Больше или равно

5

==

Равно

6

~=

Не равно

Логические операторы

Два типа:

Битовые операции

Работают с битами целых чисел.

p q p & q p | q p ^ q
00000
01011
11110
10011

Пример: A = 60 (0011 1100), B = 13 (0000 1101)

A & B = 0000 1100  (12)
A | B = 0011 1101  (61)
A ^ B = 0011 0001  (49)
~A    = 1100 0011  (-61 в доп. коде)

Функции битовых операций

Функция Назначение
bitand(a, b)Побитовое AND целых a и b
bitcmp(a)Побитовое дополнение a
bitget(a, pos)Получить бит в позиции pos числа a
bitor(a, b)Побитовое OR целых a и b
bitset(a, pos)Установить бит в позиции pos числа a
bitshift(a, k)Сдвиг a на k бит влево (×2^k). Отрицательное k — сдвиг вправо (÷2^|k|) с округлением к -∞. Переполнение обрезается.
bitxor(a, b)Побитовое XOR целых a и b
swapbytesПерестановка байтов

Операции над множествами

№ Функция и описание
1

intersect(A,B)

Пересечение массивов; общие значения в отсортированном порядке.

2

intersect(A,B,'rows')

Строки, общие для A и B (как единицы). Результат отсортирован.

3

ismember(A,B)

Массив того же размера, что A: 1 где элементы A есть в B, иначе 0.

4

ismember(A,B,'rows')

Вектор: 1 где строки A есть в B, иначе 0.

5

issorted(A)

True если элементы A отсортированы (A == sort(A)).

6

issorted(A, 'rows')

True если строки матрицы A отсортированы (A == sortrows(A)).

7

setdiff(A,B)

Разность: значения в A, которых нет в B. Отсортировано.

8

setdiff(A,B,'rows')

Строки из A, которых нет в B. Не поддерживает cell-массивы.

9

setxor

Симметрическая разность (XOR) двух массивов.

10

union

Объединение двух массивов.

11

unique

Уникальные значения массива.

MATLAB

  1. Операторы C# — исчерпывающее руководство по операторам в C#
  2. Освоение операторов C++: полное руководство с практическими примерами
  3. Операторы в C: исчерпывающее руководство
  4. Мастерство операторов Python: Полное руководство
  5. Освоение операторов Java: типы, синтаксис и практические примеры
  6. Операторы в C: полное руководство по арифметическим, битовым, логическим и другим операторам
  7. MATLAB: Комплексный обзор ведущей среды численных вычислений
  8. Переменные в MATLAB: Основы, примеры и работа с векторами/матрицами
  9. Основные команды MATLAB для эффективных вычислений
  10. Типы данных в MATLAB: Полное руководство с примерами