Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
matlab_manual.rtf
Скачиваний:
21
Добавлен:
30.08.2019
Размер:
17.64 Mб
Скачать

Дуальность (двойственность) команд и функций

Команды системы MATLAB это выражения вида load или help. Многие команды допускают модификацию за счет определения операндов, например:

load August17.dat

help magic

type rank.

Альтернативный способ ввода подобных операндов в команды состоит в представлении их в виде символьных строк как аргументы функций.

load('August17.dat')

help('magic')

type('rank')

В этом состоит дуальность команд/функций системы MATLAB. Любая команда в форме

command argument

может также быть записана в функциональной форме

command('argument')

Преимущество функциональной формы записи проявляется когда символьный аргумент формируется машиной программно, из ряда разных кусков. Например, следующий пример загружает в рабочее пространство переменные из 31-го МАТ-файла под названиями August1.dat, August2.dat, и т.д.

for d = 1:31

s = ['August' int2str(d) '.dat']

load(s)

end

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

Действия над матрицами в системе matlab

Матрица является двумерным массивом действительных или комплексных чисел. Линейная алгебра и теория матриц определяют множество операций над матрицами, которые непо-средственно поддерживаются (т.е. выполняются как стандартные операции) в MATLAB-е. В частности, сюда входят все элементарные действия над матрицами, решение систем линей-ных уравнений, нахождение собственных значений и векторов, а также сингулярных чисел и т.д. Ниже кратко рассмотрены действия над матрицами в системе MATLAB.

Формирование матриц в системе matlab

В дальнейшем для удобства будем считать термины матрица и массив эквивалентными. Бо-лее точно, матрица есть двумерный прямоугольный массив из действительных или комплек-сных чисел, который характеризует некоторое линейное преобразование. В MATLAB-е име-ется множество встроенных функций, которые формируют (генерируют) различные типы ма-триц. Воспользуемся двумя из них для формирования пары матриц размера 3-by-3, которые будут использоваться в дальнейшем в качестве примеров. Первый пример представляет симметричную матрицу Паскаля. Если ввести команду

A = pascal (3)

то система ответит

A =

1 1 1

1 2 3

1 3 6

Второй пример представляет несимметричную матрицу, известную под названием «волшеб-ный квадрат» (magic square):

B = magic(3)

B =

8 1 6

3 5 7

4 9 2

Еще один пример использования стандартной матрицы представляет собой прямоугольную 3х2 матрицу случайных целых чисел:

C = fix(10*rand(3,2))

C =

9 4

2 8

6 7.

Здесь функция rand(3,2) генерирует 3х2 матрицу равномерно распределенных случайных чисел в диапазоне от 0 до 1, а функция fix осуществляет округление путем отбрасывания дробной части.

Вектор-столбец есть матрица размера mх1 matrix, вектор-строка – матрица размера 1х n , а скаляр есть матрица размера 1х1. Объединение отдельных чисел в массивы осуществляется при помощи квадратных скобок, причем отдельные строки разделяются точкой с запятой, а переменные в каждой строке – запятой или пробелом (число пробелов может быть любым). Выражения

u = [3; 1; 4]

v = [2 0 -1]

s = 7

дают вектор-столбец u , вектор-строку v и скаляр s (эти векторы также будут использоваться в дальнейшем при решении примеров):

u =

3

1

4

v =

2 0 –1

s =

7

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