Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИТ_2012.doc
Скачиваний:
19
Добавлен:
18.04.2019
Размер:
490 Кб
Скачать
☆

25.Операторы и функции в matlab.

Основные операторы: арифметические, логические и операторы отношений.

Число арифметических операторов в MATLAB достаточно большое и включает в себя следующие арифметические операции:

– сложение (М1+М2); – вычитание (М1М2); – умножение (М1М2); – возведение в степень (М1^); – возведение матрицы в степень (М1 х); – поэлементное возведение массива в степень (М1 х);

– деление матриц слева направо (М1 / М2); – деление матриц справа налево (М1 \ М2).

Операторы отношения служат для сравнения двух величин, векторов или матриц, все операторы отношения имеют две сравниваемые величины и записываются в следующем виде:

– равно (х = = у); – не равно (х = у); – меньше (х у); – больше (х у); – меньше или равно (х = у); – больше или равно (х = у).

Данные операторы выполняют поэлементное сравнение векторов или матриц одинакового размера и логическое выражение принимает значение 1 (True), если элементы идентичны, и значение 0 (False) в противном случае.

Логические операторы служат для реализации поэлементных логических операций над элементами одинаковых по размеру массивов:

– логическое И (and (a, b)); – логическое ИЛИ (or (a, b)); – логическое НЕ (not (a, b));

– исключающее ИЛИ (xor (a, b)); – верно, если все элементы вектора равны нулю (any (a));

– верно, если все элементы вектора не равны нулю (all (a)).

В Matlab приоритет логических операций выше, чем арифметических, приоритет возведения в степень выше приоритетов умножения и деления, приоритет умножения и деления выше приоритета сложения и вычитания. Для изменения приоритета операций в математических выражениях используются круглые скобки. Степень вложения скобок не ограничивается.

Функция – это имеющий уникальное имя объект, выполняющий определенные преобразования своих аргументов и при этом возвращающий результаты этих преобразований. Функции в общем случае имеют список аргументов (параметров), заключенный в круглые скобки. Имена встроенных (стандартных) функций записываются строчными буквами.

  • Тригонометрические и гиперболические функции

  • Экспоненциальные функции

  • Функции для работы с комплексными числами

  • Функции округления и вычисления остатка от деления

  • Функции для работы со значениями даты и времени

  • Функции для выполнения побитовых операции (Например, для представления целых положительных чисел в двоичном виде служит функция dec2bin).

  • Специальные математические функции (Например, функции Эйри (airy) формируют пару линейно независимых решений линейного дифференциального уравнения).

26. Матричные вычисления в matlab

В системе MatLab основной единицей данных является матрица, поэтому система имеет обширный набор стандартных функций и операций по обработке матриц, который позволяет:

- формировать новые матрицы стандартного вида;

- выполнять матричные арифметические операции;

- вычислять матричные характеристики и математические функции.

Для формирования новых матриц стандартного вида применяются следующие системные функции:

rand(M,N) – формирует прямоугольную матрицу размерностью M×N, элементами которой являются случайные числа в интервале (0.0; 1.0), функция rand без параметров формирует одно случайное число в том же интервале.

ones(M,N) формирует единичную матрицу размерностью M×N.

zeros(M,N) формирует матрицу размерностью M×N, состоящую из нулей.

diag(V) создает диагональную матрицу, в которой элементы вектора V являются элементами главной диагонали.

Матричные арифметические операции представлены следующими:

A+B , A-B матричное сложение и вычитание. Оба операнда этой операции должны иметь одинаковую размерность, если они являются матрицами. Один из операндов может выть скалярной величиной.

A*B матричное умножение. Операция выполняется по правилам матричного умножения, число столбцов матрицы A должно быть равно числу строк матрицы B.

A \ B левое деление матриц. Осуществляет решение системы линейных алгебраических уравнений A*X=B. Число столбцов А должно быть равно числу строк В.

A / B правое деление матриц. Осуществляет решение системы линейных алгебраических уравнений X*A=B.

Х ^ Р возведение матрицы в степень. Эта операция при скалярном значении Р возводит квадратную матрицу Х в степень Р. Если Х – скалярная величина, а Р – квадратная матрица, то Х^Р возводит Х в матричную степень Р. Эта операция является ошибочной, если оба операнда – матрицы.

В MatLab существуют матричные операции, которые выполняются над каждым элементом матрицы, это такие операции, как:

.* поэлементное матричное умножение.

.\ поэлементное левое деление матриц.

. / поэлементное правое деление матриц.

.^ поэлементное возведение матрицы в степень.

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

Операция «апостраф» ′ вычисляет комплексно сопряженную транспонированную матрицу.

Операция «точка апостраф» .′ вычисляет транспонированную матрицу.

Система содержит стандартные функции, позволяющие вычислять различные характеристики матриц:

det(A) вычисляет определитель матрицы;

trace(A) вычисление следа матрицы;

rank(A) вычисление ранга матрицы;

inv(A) вычисление обратной матрицы.