Локальные и глобальные переменные
Так же как и все структурные языки программирования MATLAB различает глобальные и локальные переменные. Локальные переменные действуют только в модуле где они описаны, глобальные переменные доступны всем модулям загруженным в этот момент в MATLAB. Ниже приведена иллюстрация области действия переменных.
Глобальные переменные, действуют во всех модулях | ||||||
Модуль 1 | Модуль 2 | Модуль 3 | ||||
Локальные переменные действуют только в этом модуле | Локальные переменные действуют только в этом модуле | Локальные переменные действуют только в этом модуле | ||||
Для указания что переменная является глобальной необходимо указать перед ее именем описание global. Например global A. Команда who global, выводит список всех глобальных переменных.
Матрицы
Типы данных MATLAB. Скаляры, векторы и матрицы.
В системе MATLAB определено шесть базовых типов данных, каждый из которых является многомерным массивом. Шесть классов - это double, char, sparse, uint8, cell, и struct.
Фактически MATLAB содержит один тип данных - массив или матрица (таблица). Массив это группа ячеек памяти имеющие одно имя. Массивы бывают одномерные - строка или столбец, прямоугольные, квадратные (число строк рано числу столбцов). Когда Вы указываете переменную и присваиваете ей одно число, фактически MATLAB создает матрицу из одной строки и одного столбца. Ниже приведены примеры вектора - а, строки - б, прямоугольной матрицы - в, квадратной матрицы - г, матрицы единичной размерности - е (простой переменой или скаляр).
|
|
а | б | в | г | е | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
Для ввода скаляра достаточно приписать его значение какой-то переменной, например
Заметим, что MatLab различает заглавные и прописные буквы, так что p и P — это разные переменные. Для ввода массивов (векторов или матриц) их элементы заключают в квадратные скобки. Так для ввода вектора-строки размером 1×3, используется следующая команда, в которой элементы строки отделяются пробелами или запятыми.
Если вектор-строка представляет собой последовательность от а до в, то ее можно ввести через двоеточие – а:в, например:
ввести t=1:5
будет выведено t= 1 2 3 4 5
или с шагом (0,1) t=-10:0.1:10 ;
При вводе вектора-столбца элементы разделяют точкой с запятой. Например,
|
|
Вводить небольшие по размеру матрицы удобно прямо из командной строки. При вводе матрицу можно рассматривать как вектор-столбец, каждый элемент которого является вектор-строкой.
или матрицу можно трактовать как вектор строку, каждый элемент которой является вектор-столбцом.
Доступ к элементам
Доступ к элементам матриц осуществляется при помощи двух индексов — номеров строки и столбца, заключенных в круглые скобки, например команда B(2,3) выдаст элемент второй строки и третьего столбца матрицы B. Для выделения из матрицы столбца или строки следует в качестве одного из индексов использовать номер столбца или строки матрицы, а другой индекс заменить двоеточием. Например, запишем вторую строку матрицы A в вектор z
Также можно осуществлять выделение блоков матриц при помощи двоеточия. Например, выделим из матрицы P блок отмеченный цветом
Если необходимо посмотреть переменные рабочей среды, в командной строке необходимо набрать команду whos. Команда who выводит только имена переменных
Видно, что в рабочей среде содержатся один скаляр (p), четыре матрицы (A, B, P, P1) и вектор-строка (z).
Основные матричные операции
|
|
При использовании матричных операций следует помнить, что для сложения или вычитания матрицы должны быть одного размера, а при перемножении число столбцов первой матрицы обязано равняться числу строк второй матрицы. Сложение и вычитание матриц, так же как чисел и векторов, осуществляется при помощи знаков плюс и минус
а умножение — знаком звездочка *. Введем матрицу размером 3×2
Умножение матрицы на число тоже осуществляется при помощи звездочки, причем умножать на число можно как справа, так и слева. Возведение квадратной матрицы в целую степень производится с использованием оператора ^
Дата добавления: 2018-04-05; просмотров: 604; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!