Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение_в_MatLAB.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
82.43 Кб
Скачать

Выполните:

who

whos

% Вы можете получить на экране значение любой переменной, набрав в командной строке имя переменной и нажав вслед за тем ENTER.

Выполните:

A % ENTER

X % ENTER

p % ENTER

F % ENTER

ПОЭЛЕМЕНТНОЕ ВЫПОЛНЕНИЕ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ

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

x=[1 2 3 4] и y=[5 6 7 8].

Предположим, что вам хотелось бы перемножить (поделить, возвести в степень) элементы векторов x и y.

Если мы напишем x*y или x/y или x^3, то получим сообщение об ошибке, так как строки нельзя перемножить, разделить друг на друга по правилам матричной алгебры (несоответствие размерностей). Однако для получения желаемого результата в MATLAB есть дубли арифметических операций. Они имеют те же значки, что и основные операции, но с точкой перед знаком операции.

Выполните в командном окне:

x.*y % Результат – вектор, элементы которого равны произведениям соответствующих элементов векторов x и y

x./y % Элементы x будут поделены на соответствующие элементы y

x.^3 % Элементы вектора x будут возведены в 3-ю степень.

MATLAB работает с комплексными числами и бесконечными величинами.

ВЫПОЛНИТЕ:

sqrt(-1)

log(0)

ГЕНЕРАЦИЯ СПЕЦИАЛЬНЫХ МАТРИЦ:

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

zeros – создание матрицы с нулевыми элементами,

ones - создание матрицы с единичными элементами,

rand – создание матрицы со случайными элементами (равномерно на [0,1] распределенными случайными числами),

eye – создание единичной матрицы

Выполните операции:

A = zeros(3,2)

AA = zeros(5)

B = ones(1,10)

BB = ones(3)

C=rand(2,5)

CC=rand(7)

E=eye(5)

ОПЕРАТОРЫ СЛИЯНИЯ МАТРИЦ

Выполните операторы

A=ones(2,3)

V=ones(1,3)

A=[A;V] % матрица A получит дополнительную строку из элементов вектора V

B=rand(2,2)

C=rand(3,3)

G=cat(1,A,C) % Объединение матриц A и C вдоль размерности 1 (по вертикали)

GG=cat(2,A,C) % Объединение матриц вдоль размерности 2 (по горизонтали)

ОПЕРАТОРЫ ВЫРЕЗКИ ДЛЯ МАТРИЦ

Выполните операторы, наблюдайте за результатами

A=[1 2 3 4 5

6 7 8 9 10

11 12 13 14 15

  1. 17 18 19 20]

B=A(1,:) % Взятие первой строки исходной матрицы

C=A(:,4) % Взятие четвертого столбца исходной матрицы

D=A(3:4,1:2) % Выделение (вырезка) строк 3 – 4 , столбцов 1 – 2

G=A(2:3,3:4) % Выделение (вырезка) строк 2 – 3 , столбцов 3 – 4

E=A(:) % Создание единого массива (столбца) из элементов матрицы A.

МЕТОД ГАУССА

В заключение, решите систему 5-и линейных алгебраических уравнений с 5 неизвестными методом Гаусса.

Введите матрицу системы

A=rand(5,5) % здесь коэффициенты системы – случайные числа. Введите свои

% конкретные значения

B=rand(5,1) % вектор-столбец – правая часть системы уравнений, которая в

% матричной форме может быть записана как A*X=B, где X –

% столбец неизвестых. Решение системы, как известно,

% X=A^(-1)*B, где A^(-1) – обратная матрица для матрицы A

РЕШЕНИЕ СИСТЕМЫ:

X=A\B % Оператор выполняется как inv(A)*B, что и требуется для решения

% системы. Отметим, что в действительности этот оператор

% выполняется путем реализации метода Гаусса для решения исходной

% системы линейных алгебраических уравнений.

Таким образом, для того, чтобы решить систему линейных алгебраических уравнений методом Гаусса в MATLAB, достаточно выполнить всего один оператор – оператор деления (справа – налево) правой части системы на матрицу системы уравнений.