
- •Matlab в режиме прямых вычислений
- •Понятие о математическом выражении
- •Действительные и комплексные числа
- •Константы и системные переменные
- •Переменные и присваивание им значений
- •Операторы
- •Функции
- •Форматы вывода результата вычислений
- •Основные операции над матрицами
- •Задание векторов и матриц
- •Обращение к элементам матрицы
- •Суммирование элементов, транспонирование и диагонализация матрицы
- •Объединение малых матриц в большую
- •Удаление столбцов и строк матриц
- •Матричные и поэлементные вычисления
- •Графическая визуализация вычислений
- •Построение диаграмм и гистограмм
- •Построение графиков функций
- •Управление осями
- •Окна изображений
- •Подграфики
- •Основы трехмерной графики
- •Генерация сетки
- •Трехмерный график с аксонометрией
- •Сетчатый 3d-график с функциональной окраской
- •Сетчатый 3d-график с функциональной окраской и проекцией
- •Поверхностный 3d-график с функциональной окраской
- •Поверхностный 3d-график с функциональной окраской и освещением
- •Программирование в среде matlab
- •Управление потоками
- •Работа c м-файлами
- •Типы м-файлов. Файл-программы и файл-функции
- •Задания к лабораторной работе № 1
Обращение к элементам матрицы
Если мы ввели какую-либо матрицу, то она автоматически запоминается средой MATLAB и мы можем к ней легко обратиться, указав имя переменной, которой она присвоена.
Для выбора отдельного элемента, расположенного в строке i и столбце j матрицы можно использовать индексы А(i,j)
>>А(2,2)
>>А(2,2)=10
Если вы пытаетесь использовать значение элемента вне матрицы, MATLAB выдаст ошибку: t=A(4,5)
??? Index exceeds matrix dimensions.
Найдем сумму элементов в четвертом столбце матрицы А, набрав:
А(1,4) + А(2,4) + А(3,4) + А(4,4) получим
ans = 34
То же самое можно сделать, набрав:
sum(A(:,4))
Суммирование элементов, транспонирование и диагонализация матрицы
Подсчитаем сумму элементов всех столбцов матрицы А:
sum (А) |
|
|
|
ans = |
|
|
|
34 |
34 |
34 |
34 |
MATLAB предпочитает работать со столбцами матрицы. Для того чтобы получить сумму в строках, необходимо транспонировать матрицу, подсчитать сумму в столбцах, а потом транспонировать результат. Операция транспонирования обозначается апострофом или одинарной кавычкой. Она зеркально отображает матрицу относительно главной диагонали и меняет строки на столбцы.
>>sum(А')'
Cумму элементов на главной диагонали можно получить с помощью функции diag, которая выбирает эту диагональ.
diag(A)
ans = 16 10 7 1
И суммированием этих элементов:
sum (diag (А))
ans = 34
Замечание: Для доступа к последней строке или столбцу матрицы удобно пользоваться оператором end. Так:
sum (А (:, end) ),
вычисляет сумму элементов в последнем столбце матрицы А.
Объединение малых матриц в большую
Объединение - это процесс соединения маленьких матриц для создания больших. Пара квадратных скобок - это оператор объединения. Например, начнем с матрицы А и сформируем
В = [А А+32; А+48 А+16]1
Результатом будет матрица 8x8, получаемая соединением четырех подматриц
В = |
|
|
|
|
|
|
|
|
|
16 |
2 |
3 |
13 |
48 |
34 |
35 |
45 |
|
5 |
11 |
10 |
8 |
37 |
43 |
42 |
40 |
|
9 |
7 |
6 |
12 |
41 |
39 |
38 |
44 |
|
4 |
14 |
15 |
1 |
36 |
46 |
47 |
33 |
|
64 |
50 |
51 |
61 |
32 |
18 |
19 |
29 |
|
53 |
59 |
58 |
56 |
21 |
27 |
26 |
24 |
|
57 |
55 |
54 |
60 |
25 |
23 |
22 |
28 |
|
52 |
62 |
63 |
49 |
20 |
30 |
31 |
17 |