Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методическое руководство(шаблон для отчёта).doc
Скачиваний:
0
Добавлен:
12.01.2020
Размер:
368.64 Кб
Скачать

9. Манипуляции с матрицами в MatLab и Octave

Под манипуляциями с матрицами подразумеваются следующие операции: обращение к отдельным элементам матрицы, выделение подматриц, объединение скалярных величин, векторов, матриц в матрицы больших размерностей, транспонирование матриц и т.д. (табл.7 и 8).

Таблица 7 - Манипуляции с матрицами в MatLab и Octave

Операция

Исходная матрица(ы)

Команда

Результат

Доступ к отдельным элементам матрицы (вектора)

A=[1 2; 3 4]

B=A(2,1)

B = 3

Выделение из исходной матрицы требуемых вектор-строк и вектор-столбцов

A=[1 2; 3 4]

B=A(1,:)

В=A(:,2)

B =

1 2

B =

2

4

Выделение из исходной матрицы подматрицы заданной размерности

A=[1 2 3; 4 5 6; 7 8 9]

B=A(1:2,1:2)

B =

1 2

4 5

Объединение скалярных величин в вектор

A=1

B=2

C=[A B]

C=[A; B]

C =

1 2

C =

1

2

Объединение векторов в матрицы

A=[1 2]

B=[3 4]

C=[A B]

C=[A; B]

C =

1 2 3 4

C =

1 2

3 4

Объединение матриц в матрицы большей размерности

A=[1 2; 3 4]

B=[5 6; 7 8]

C=[A B]

C=[A; B]

C =

1 2 5 6

3 4 7 8

C =

1 2

3 4

5 6

7 8

Поворот векторов и матриц на 90 градусов против часовой стрелки

A=[1 2 3 4]

A=rot90(A)

A =

4

3

2

1

Таблица 8 - Операции над матрицами в MatLab и Octave

Операция

Исходная матрица

Команда

Результат

Транспонирование матрицы

A=[1 2; 3 4]

B=A'

B =

1 3

2 4

Вычисление детерминанта матрицы

A=[1 2; 3 4]

B=det(A)

B = -2

Вычисление ранга матрицы

A=[1 2; 3 4]

B=rank(A)

B = 2

Вычисление обратной матрицы

A=[1 2; 3 4]

B=inv(A)

B =

-2 1

1.5 -0.5

Вычисление размерности матрицы

A=[1 2; 3 4]

B=size(A)

B =

2 2

Вычисление длины вектора

A=[4 3 2 1]

B=length(A)

B = 4

10. Работа с символьными переменными

Обе системы MatLab и Octave могут работать с символьными переменными – создавать их, редактировать, преобразовывать. При определении символьной переменной её помещают между двумя апострофами, например:

a='Ivanov'

b='Ivan'

c='Ivanovich'

s='School #1'

t='tel: 123-45-67'

Отдельные символьные переменные можно объединять в структуры с помощью команды char:

str=char(a, b, c, s, t)

Результатом работы команды будет структура, присвоенная переменной str:

str =

Ivanov

Ivan

Ivanovich

School #1

tel: 123-45-67

к отдельным элементам которой можно обращаться также как и к элементам матрицы:

name=str(2,:)

результат:

name = Ivan

Если в качестве символьной переменной использовать формулу, то её (после предварительного преобразования) можно рассчитать:

a='2*pi*50'

результат: a = 2*pi*50

b=str2num(a)

результат: b = 314.16

Для преобразования символьной переменной в числовую используется команда str2num, для обратного преобразования – команда num2str.