- •Некоторые сведения о пакете Matlab.
- •Данные в ml
- •Матрицы
- •Операции в ml
- •Логические операции:
- •Приоритет операций в ml:
- •Тригонометрические функции.
- •Особые матрицы
- •Операции с векторами и матрицами.
- •Выполнение операций над матрицами.
- •Специальные функции для матриц.
- •Действия с элементами матрицы
- •Анализ данных (для постолбцовой обработке матриц)
- •Действия с полиномами (многочленами)
- •Графика в ml
- •Диаграммы и гистограммы.
- •Круговые диаграммы.
- •Программирование в ml
- •Операторы языка
- •Операторы ввода/вывода
- •Операторы цикла и условные операторы.
- •Операторы цикла.
- •Оператор цикла с параметром:
- •Оператор цикла с предусловием:
- •Условный оператор.
- •Оператор переключения (выбора).
- •Функция eval
- •Функция menu.
- •Файлы функции
- •Вычисление интеграла.
- •Нахождение нулей функции.
- •Решение систем дифференциальных уравнений.
Матрицы
Элементами матриц могут быть целые числа, вещественные, комплексные числа и символы.
Большие и маленькие буквы различаются.
Данные задаются через пробел или через запятую. Элементы строк отделяются знаком точка с запятой - <;> или записываются с новой строки.
Зададим матрицу:
>> A=[1 2 3; 4 5 6; 7 8 9]
A =
1 2 3
4 5 6
7 8 9
Обращение к элементу матрицы: <имя> (индексы), например, А(2,3).
Результат каждой команды сразу отображается на экране. Если точка с запятой стоит в конце строки(после задания вектора), то результат не будет выведен на экран.
В окне Command History располагаются все использованные команды.
Можно перемещаться по командам с помощью стрелок ↑ ↓ и вызывать повторно команды для выполнения.
Вектора (одномерные массивы).
Вектор это матрица из одного столбца или одной строки.
Для задания вектора можно воспользоваться одним из приведенных ниже способов.
-
Можно задать поля вектора поэлементно:
<имя пер.>=[<значение1> <значение2>….<значениеN>]
Например,
>>P=[3 5 7 12];
Если при задании вектора значения его элементов разделить точкой с запятой, то получим вектор-столбец.
<<A=[1; 2; 3]
A=
1
2
3
-
Если элементы вектора являются арифметической прогрессией, то можно задать вектор так:
<имя пер.>=<нач. значение>:<шаг>:<конечное значение>
Например,
>>X=0:0.1:pi
Шаг может быть > 0. Если он = 1, то его можно не указывать.
Х = 1 : 10
Чтобы изменить форму вектора, надо записать Х’ – тогда вектор отобразится в виде столбца. Такая операция называется транспонированием.
Например,
>> X=1:1:5
X = 1 2 3 4 5
>> X'
ans =
1
2
3
4
5
-
Можно использовать функцию linspace
linspace (<нач. значение>:<кон. значение>:<кол. значений>)
Например,
>>B=linspace(0,pi,5)
B =
0 0.7854 1.5708 2.3562 3.1416
-
Вектор можно задать также путём объединения нескольких векторов.
Например,
>>A=[1 2 3]; B=[4 5 6]; C=[7 8 9]; D=[A B C]
D =
1 2 3 4 5 6 7 8 9
Операции в ml
В ML можно не только выполнять обычные арифметические операции над числами и вычислять элементарные функции, но и производить операции над векторами и матрицами. Все операции “матричные” и осуществляются по правилам линейной алгебры.
Арифметические операции:
+ - * / \(обратное деление) ^ ‘(транспонирование)
Приоритеты АО:
-
возведение в степень, транспонирование;
-
умножение , деление;
-
сложение, вычитание.
При необходимости выполнения над матрицами и векторами поэлементных действий, перед знаками операций ^, *, /, \ следует ставить точку.
>> X=[1 2 3 4];
>> X.^2
ans =
1 4 9 16
Каждой арифметической операции в ML соответствует определенная функция.(plus(x,y) –сложение массивов, times(x,y) – поэлементное умножение массивов, mtimes(x,y) – матричное умножение и т.д.).
>> 2+3
ans =
5
>> plus(2,3)
ans =
5
>> X=[1 2 3 4];
>> Y=[5 6 7 8];
>> times(X,Y)
ans =
5 12 21 32
Операции отношения:
равно(= =), не равно(~ =), <, <=, >, >=.
Используются для поэлементного сравнения 2 операндов(чисел, матриц, векторов одинакового размера).
>>A=[1 0 3; -2 5 -6];
>> B=[8 -9 1; 7 2 2];
>> A>B
ans =
0 1 1
0 1 0
Результатом операции отношения может быть «истина» и «ложь». В ML это 1 и 0 соответственно.
>> x=1;y=2;z=3;
>> ((x+y)==z)+(y<z)+(x<=y)
ans =
3