Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Matlab_лекции Джалилова.DOC
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
273.41 Кб
Скачать

Основные матричные операции и функции.

Вектор в MATLAB рассматривается как вырожденная в одну строку или в один столбец матрица.

Обычная переменная - это матрица размером 1х1.

Нумерация элементов векторов и матриц идёт начиная с единицы. Для матриц возможно возведение в степень, а также вычисление ряда матричных функций:

expm(M) – матричный экспотенциал.

logm (M) – матричный логарифм.

sgrtm (M) – матричный квадратный корень.

Все эти функции возвращают в матрицу преобразующиеся элементы.

Арифметические операторы. При работе с массивом чисел установлены следующие уровни приоритета среди арифметических операций:

Уровень 1: поэлементное транспонирование (.”), поэлементное возведение в степень (.^), сопряженное транспонирование матрицы (‘), возведение матрицы в степень (^);

Уровень 2: унарное сложение (+), унарное вычитание(-);

Уровень 3: умножение массивов (.*),правое деление (./), левое деление массивов (.\),умножение матриц (*),решение систем линейных уравнений – операция (/),операция(\);

Уровень 4: сложение (+), вычитание (-);

Уровень 5:оператор формирование массивов (:).

Внутри каждого уровня операторы имеют равный приоритет и вычисляются в порядке следование слева направо. Заданный по умолчанию порядок следование может быть изменен с помощью круглых скобок.

Пример:

Пусть заданы два вектора

А=[3 9 5];

B=[2 1 5];

Результаты выполнения операторов

С=А./В.^2

С= 0.7500 9.0000 0.2000

С=(А./В).^2

C= 2.2500 81.0000 1.0000

Совершенно различны.

Арифметические операторы допускают использование индексных выражений:

B= sqrt(A(2))+2*B(1)

B= 7

Арифметические операторы системы MATLAB работают, как правило, с массивами одинаковых размеров. Для векторов и прямоугольных массивов оба операнда должны быть одинакового размера, за исключением единственного случая, когда из них – скаляр. Если один из операндов скалярный, а другой нет, в системе MATLAB принято, что скаляр расширяется до размеров второго операнда и заданная операция применяется к каждому элементу. Такая операция называется расширением скаляра.

Операторы отношения. В системе MATLAB определено 6 следующих операторов отношения:

< меньше

<= меньше или равно;

>больше;

>= больше или равно

= = равно тождественно

~ = не равно

Оператор отношения выполняет поэлементное сравнение двух массивов равных размерностей. Для векторов и прямоугольных массивов оба операнда должны быть одинакового размера, за исключением случая, когда один из них скаляр. В этом случае MATLAB сравнивает скаляр с каждым элементом другого операнда. Позиции, где это соотношение истинно, получают значение 1, где ложно –0.

Оператор отношения, как правило, применяются для изменения последовательности выполнение операторов программы. Поэтому они чаще всего используются в теле операторов if, for, while, switch.

Оператор отношение всегда выполняются поэлементно.

Пример:

Выполним матрица указывает позиции, где элемент А меньше соответствующего элемента В.

При вычислении арифметических выражений операторы отношения имеют более низкий приоритет, чем арифметические, но более высокий , чем логические операторы.

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

[ ] применимы только к массивам размера 0х0 или 1х1, а в других случаях вызывают ошибку.

Поэтому наиболее универсальный способ проверить, является ли массив пустым, - это применить функцию isemhty (А).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]