- •6.4.36.06. «Методические указания по отдельным видам занятий»
- •Краткое введение в matlab
- •Работа в режиме прямых вычислений
- •Действия с векторами и матрицами в matlab
- •Выполните:
- •Программирование в matlab
- •Управляющие структуры языка matlab
- •Функции ввода-вывода
- •Условный оператор
- •Циклы типа for...End
- •Циклы типа while...End
- •Конструкция переключателя
Действия с векторами и матрицами в matlab
Перейдем теперь в командное окно MATLAB. Выполните в командном окне предлагаемые далее действия с матрицами. При этом данный текст лучше не закрывать, а свернуть его, нажав на кнопку “-“ в правом верхнем углу окна Microsoft Word. (В этом случае вы сможете восстановить этот текст в процессе работы, активизируя его нажатием левой клавиши мыши на нижней панели)
Задание 1: (действия с векторами)
1) Введите вектор 'a' из 9 элементов. С экрана элементы вектора вводятся в квадратных скобках, разделяемые пробелом.
a = [1 2 3 4 6 4 3 4 5] % Вводите свой вектор с другими значениями.
Нажмите ENTER, посмотрите на сообщение на экране.
2) Теперь выполните то же но с точкой с запятой:
a = [1 2 3 4 6 4 3 4 5]; % Используйте клавиши перелистывания ↑ и ↓, чтобы не
% повторять набор заново!!
Нажмите ENTER, посмотрите на сообщение на экране.
3) Прибавьте число 2 к элементам вектора а :
Выполните оператор:
b = a + 2 % Сейчас мы умышленно не ставим точку с запятой, чтобы
% посмотреть на результат
Транспонируем вектор b:
C=b’ % Знак транслонирования матрицы – апостроф ‘ (соответствует
% клавише буквы Э на нижнем регистре латиницы)
Попробуйте выполнить операцию
D= a+C % убедитесь, что она невозможна, поймите почему (?).
Выполните
D=a’+C
Выполните слияние:
E=[a;b]
E=[E;b]
6) Постройте график значений элементов вектора b относительно номера компоненты:
plot(b)
grid on
MATLAB может строить графики, используя указываемые ему символы.
Постройте тот же график звездочками:
plot(b,'*')
axis([0 10 0 10])
Постройте гистограмму:
bar(b)
ГЕНЕРАЦИЯ ВЕКТОРОВ (ранжированных переменных, т.е. массивов с постоянным шагом)
Выполните операторы:
X=1:10 % шаг 1 % не ставьте точки с запятой, наблюдайте результаты
Y=0:0.25:1 % шаг 0.25
Z=0:pi/4:2*pi % шаг pi/4
X1=0:0.1*pi:4*pi
Y1=sin(X1)
Постройте графики:
plot(X1,Y1,X1,cos(X1))
Задание 2: (действия с матрицами)
% Создание матриц производится так же как и создание векторов, при этом
% используется знак (;) , чтобы отделить вводимые строки матрицы.
Введите матрицу размерности (3,3):
A = [1 2 0; 2 5 -1; 4 10 -1] % Введите свои значения. Не ставьте блокировку (;),
% чтобы следить за результатами.
Транспонируйте матрицу 'A' :
B = A'
Выполните умножение
C = A * B
Возведите квадратную матрицу в 5 степень:
F=A^5
Найдите обратную матрицу:
X = inv(A)
Вычислите матрицу
I =A*inv(A) % ясно, что должна получиться единичная матрица
Вычислите определитель матрицы:
D=det(A)
Найдите собственные значения матрицы:
eig(A)
% Функция "poly" генерирует вектор, элементами которого являются
% коэффициенты характеристического многочлена матрицы:
% det(lambda*I - A)
p = round(poly(A))
% Функция “round” округляет до ближайшего целого
% Корни многочлена p – характеристические значения исходной матрицы
% Таким образом, мы можем найти собственные значения матрицы оператором
roots(p) % Выполните вычисления этим способом
% В любой момент мы можем получить список значений переменных, хранящихся в памяти
% используя команды "who" или "whos".
