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

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) вычисление обратной матрицы.