Методические указания к выполнению лабораторных работ по дисциплине «Интеллектуальные информационные системы» Санкт-Петербург
Вид материала | Методические указания |
- А. М. Иванов Научно-информационный материал «Методические материалы к практическим, 91.96kb.
- Методические указания по проведению лабораторных работ с использованием, 439.55kb.
- Методические указания к выполнению практических работ по дисциплине "Организация предпринимательской, 669.56kb.
- Методические указания к выполнению лабораторных работ для студентов, обучающихся, 99.32kb.
- Методические указания к выполнению контрольных заданий и лабораторных работ по дисциплине, 1683.02kb.
- Методические указания к выполнению лабораторных работ по курсу «вычислительная техника, 640.55kb.
- Методические указания к выполнению лабораторных работ по дисциплине информатика для, 1065.17kb.
- Методические указания к выполнению лабораторных и курсовых работ иркутск 2007, 728.75kb.
- Методические указания к проведению лабораторных работ. Специальность 23. 01. 02 «Автоматизированные, 1178.37kb.
- Методические указания по выполнению курсовой работы по дисциплине "Финансовый менеджмент", 603.59kb.
МАТРИЧНЫЕ ВЫЧИСЛЕНИЯ НА ОСНОВЕ УНИВЕРСАЛЬНОЙ СИСТЕМЫ MATLAB
Задание матриц
По умолчанию все числовые переменные в MATLAB считаются матрицами с комплексными числами. Скалярная величина есть матрица первого порядка, а векторы являются матрицами, состоящими из одного столбца. Матрицу можно ввести, задавая элементы матрицы или считывая данные из файла, а также в результате обращения к стандартной или написанной пользователем функции. Элементы матрицы в пределах строки отделяются пробелами или запятыми.
[ ] – квадратные скобки используются при задании матриц и векторов;
пробел служит для разделения элементов матриц;
, запятая применяется для разделения элементов матриц и операторов в строке ввода;
; точка с запятой отделяет строки матриц, а точка с запятой в конце оператора (команды) отменяет вывод результата на экран;
: двоеточие используется для указания диапазона (интервала изменения величины) и в качестве знака групповой операции над элементами матриц;
() круглые скобки применяются для задания порядка выполнения математических операций, а также для указания аргументов функций и индексов матриц;
. точка отделяет дробную часть числа от целой его части, а также применяется в составе комбинированных знаков;
… три точки и более в конце строки отмечают продолжение выражения на следующей строке;
% знак процента обозначает начало комментария.
Большую матрицу можно определить поэлементно при помощи оператора цикла или набрать ее в обычном редакторе в виде ASCII-файла (например, data.ext), а затем считать при помощи команды
>>load data.ext
В результате матрица будет присвоена переменной data.
Матричные вычисления
Функции описания матриц
eye единичная матрица;
zeros нулевая матрица;
ones матрица из единиц;
rand случайная матрица со значениями из интервала [0,1];
hilb гильбертова матрица;
diag создание диагональной матрицы или выделение диагонали;
triu выделение верхней треугольной части матрицы;
tril выделение нижней треугольной части матрицы.
Знаки операций
+,- символы плюс и минус обозначают знак числа или операцию сложения или вычитания матриц, причем матрицы должны быть одной размерности;
знак умножения обозначает матричное умножение;
‘ апостроф обозначает операцию транспонирования (вместе с комплексным сопряжением);
/ левое деление;
\ правое деление;
оператор возведения в степень.
Матричные характеристики
det вычисление определителя;
trace вычисление следа матрицы;
rank определение ранга матрицы;
norm вычисление нормы матрицы;
normest оценка нормы матрицы.
Команды линейной алгебры
inv вычисление обратной матрицы;
pinv вычисление псевдообратной матрицы;
null определение ядра (нуль-пространства) матрицы;
orth вычисление ортонормированного базиса.
Команды факторизации
chol разложение Холецкого для симметричных, положительно-определенных матриц;
cholnc неполное разложение Холецкого (представление симметричной матрицы в виде произведения верхней треугольной и транспонированной матриц);
lu LU-разложение (для квадратных матриц);
hess приведение к форме Хессенберга;
rref приведение к треугольной форме;
qr QR-разложение (представление матрицы в виде произведения ортогональной и верхней треугольной матриц).
Команды вычисления спектра
poly вычисление характеристического полинома для квадратной матрицы. В результате выполнения команды будут получены коэффициенты нормированного характеристического полинома a1, a2, ….,an:
det(pE – A)=pn +a1pn-1 +a2pn-2 + ….+ an;
polyeig вычисление собственных значений матричного полинома;
eig вычисление собственных чисел и векторов;
schur декомпозиция (разложение) Шура;
svd сингулярное разложение матрицы (SVD-разложение).
Для определения собственных значений и собственных векторов матрицы А служит команда
[U, D] = eig(A)
Здесь диагональная матрица D состоит из собственных чисел, а матрица U составлена из собственных векторов-столбцов матрицы А. Если в левой части указан единственный выходной параметр, то результатом будет выступать вектор-столбец собственных чисел eig(A).
Функция svd определяет сингулярное разложение матрицы. Сингулярное число s и соответствующие ему векторы u и v матрицы А удовлетворяют равенствам
Av = su, AТ u = sv.
Здесь AТ – транспонированная матрица, s – вещественное число. Образуем матрицу S, в которой расположены на диагонали сингулярные числа. Тогда AV = US, AТU = VS, и A = USVТ. Диагональ матрицы S состоит из положительных значений квадратных корней матрицы АТА. Если матрица А симметричная и положительно определенная, то сингулярные числа совпадают с собственными значениями матрицы А.
Вектор сингулярных чисел получается при обращении с одним выходным параметром S = svd(А)
Для выполнения сингулярного разложения заданной матрицы А служит команда
>>[U,S,V] = svd(A),
где U, V – соответственно, матрицы левых и правых сингулярных векторов, S – матрица сингулярных чисел.