Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ispolzovanie_Matlab_Dlya_Modelirovania_Dvizheni...docx
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
1.4 Mб
Скачать

Основы программирования в системе Matlab

В данном разделе будут рассмотрены основные возможности и инструменты языка программирования Matlab.

Для хранения данных Matlab использует именованные области памяти, которые называются переменными. В переменные можно записывать числа, символы, строки. В отличие от других математических программ любая переменная внутри Matlab представляется в виде массива. Если в переменную записать число, то внутреннее представление этой переменной будет массивом размерностью 1×1.

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

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

+

Сложение

-

Вычитание

*

Умножение

/

Деление

\

Деление слева

^

Возведение в степень

( )

Скобки определяют порядок вычислений

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

& (and)

Логическое И

| (or)

Логическое Или

~ (not)

Логическое Не

xor

Исключающее Или

Пример

Булевые значения обозначаются зарезервированными словами языка Matlab:

  • true Логическая 1, Истина

  • false Логический 0, Ложь

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

== (eq)

< (lt)

<= (le)

~= (ne)

> (gt)

>= (ge)

Пример

Символ ; в конце строки означает запрет вывода на экран результатов выполнения выражения. Этот символ удобно использовать при отладке программы: достаточно убрать его, чтобы получить результат в командном окне. При вводе длинных выражений, не умещающихся на одной строке, можно использовать многоточие и клавишу Enter или комбинацию клавиш Shift+Enter для указания того, что выражение продолжится на следующей строке.

Работа с матрицами

Главная особенность языка заключается в том, что все переменные представляются в виде матриц. При этом скалярные числа в представлении Matlab являются матрицами размерностью 1x1. Элементами матриц могут быть переменные любых типов.

В примере после знака >> вводится матрица A. При инициализации элементы матрицы заключаются в квадратные скобки. Конец строки матрицы определяется знаком ";", разделителем между элементами матрицы в строке служат пробел или запятая. После нажатия клавиши Enter, Matlab выводит на экран результат выполнения команды.

Простейшие функции работы с матрицами

Функции Matlab, предназначенные для работы с матрицами, позволяют для заданной матрицы получить какие-либо ее характеристики (определитель, след и т.д.) или построить новую матрицу (обратную, транспонированную и т.д.).

A'

возвращает транспонированную матрицу A

diag(A)

возвращает диагональные элементы матрицы A

det(A)

возвращает определитель матрицы A

inv(A)

возвращает матрицу обратную к A

eig(A)

возвращает собственные значения матрицы A

poly(A)

возвращает коэффициенты характеристического полинома матрицы A

length(A)

возвращает число элементов матрицы A. Если массив многомерный, то возвращается число элементов наибольшей размерности массива.

size(A)

возвращает вектор, содержащий величины размерностей матрицы A.

Для обращения к конкретному элементу матрицы необходимо указать порядковый номер его строки и столбца. Например, чтобы получить значение элемента, находящегося в первой строке втором столбце матрицы A, введем команду

Как видно из примера, если явно не присваивать результат вычисления какой-либо переменной, то он сохранится в служебной переменной ans.

Для генерации матриц удобно использовать специальные функции:

zeros

все элементы нули

ones

все элементы единицы

rand

равномерно распределенные случайные элементы

randn

нормально распределенные случайные элементы

Ниже представлено два примера генерации нулевых матриц

Для удаления строк или столбцов матрицы необходимо просто присвоить им пустую матрицу. В следующем примере удаления второй строки ранее созданной матрицы A для обозначения всех элементов второй строки используется символ :.

Операции над матрицами.

В Matlab имеется большой арсенал средств для выполнения операций над матрицами. Вот некоторые из них:

+

Сложение

-

Вычитание

*

Умножение

.*

Поэлементное произведение

./

Поэлементное деление

.\

Поэлементное деление слева

.^

Поэлементное возведение в степень

.'

Поэлементное транспонирование

Ниже представлен пример умножения двух матриц.

Пример поэлементного возведения в степень:

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