Введение Уроки  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  

Урок 12. Функции разреженных матриц


    Урок 12. Функции разреженных матриц
    Урок 12. Функции разреженных матриц Элементарные разреженные матрицы Преобразование разреженных матрицв Работа с ненулевыми элементами разреженных матриц Визуализация разреженных матриц Алгоритмы...
    Вычисление собственных значений
    Вычисление собственных значений и сингулярных чисел разреженных матриц Применение функции eigs решает проблему собственных значений, состоящую в нахождении нетривиальных решений системы уравнений,...
    Что нового мы узнали?
    Что нового мы узнали? В этом уроке мы научились: Создавать элементарные разреженные матрицы. Осуществлять преобразование разреженных матриц. Работать с ненулевыми элементами разреженных матриц. Ос...
    Элементарные разреженные матрицы
    Элементарные разреженные матрицы Вначале рассмотрим элементарные разреженные матрицы и относящиеся к ним функции системы MATLAB. Функция spdiags расширяет возможности встроенной функции diag. Возм...
    Пример 1
    Пример 1 А=[1 3 4 6 8 0 0; 7 8 0 7 0 0 5; 0 0 0 0 0 9 8; 7 6 54 32 0 9 6]; d=[l 322] В = spdlags(A.d) В = 3644. 0077 0900 0699 S = speye(m.n) — возвращает разреженную матрицу размера mxn с единица...
    Пример 2
    Пример 2 S = speye(4) S = (1,1) 1 (2.2) 1 (3.3) 1 (4.4) 1 Матрица R = sprand(S) имеет ту же структуру, что и разреженная матрица S, но ее элементы распределены по равномерному закону: R = sprand(m...
    Пример 3
    Пример 3 d=sprand(4,3.0.6) d = (1.1) 0.6614 (2.1) 0.2844 (4,1) 0.0648 (3,3) 0.4692 (4,3) 0.9883 R = sprandn(S) — возвращает матрицу со структурой разреженной матрицы S, но с элементами, распределе...
    Пример 4
    Пример 4 f=sprandn(3,4.0.3) f = (2.1) -0.4326 (2.2) -1.6656 (2.3) 0.1253 (2.4) 0.2877 sprandsym(S) — возвращает случайную симметрическую матрицу, нижние под-диагонали и главная диагональ которой и...
    Пример 5
    Пример 5 a=sprandsym(4,0.3.0.8) а = (1.1) 0.9818 (3.1) 0.0468 (2,2) -0.9283 (1,3) 0.0468 (3.3) 0.8800 (4.4) -0.8000...
    Преобразование разреженных матриц
    реобразование разреженных матриц Теперь рассмотрим функции преобразования разреженных матриц. Они представлены ниже: k = f ind(X) — возвращает индексы вектора х для его ненулевых элементов. Если т...
    Пример 1
    Пример 1 q=sprand(3.4.0.6) q = (1.1) 0.7266 (1.2) 0.4120 (3.2) 0.2679 (3.3) 0.4399 (2.4) 0.7446 (3.4) 0.9334 i= 1 1 3 3 2 3 j = 1 2 2 3 4 4 full(S) — преобразует разреженную матрицу S в полную; ес...
    Пример 2
    Пример 2 i=[2,4,3];j=[1,3,8];s=[4,5+5i,9]; t = sparse(i,j,s,5,8) t = (2.1) 4.0000 (4.3) 5.0000+5.0000i (3.8) 9.0000 Функция spconvert используется для создания разреженных матриц из простых разреж...
    Работа с ненулевыми элементами разреженных матриц
    Работа с ненулевыми элементами разреженных матриц Поскольку разреженные матрицы содержат ненулевые элементы, то предусмотрен ряд функций для работы с ними: nnz(X) — возвращает число ненулевых элем...
    Пример 1
    Пример 1 h = sparse(hilb(10)); nnz(h) ans = 100 nonzeros(A) — возвращает полный вектор-столбец ненулевых элементов матрицы А, выбирая их последовательно по столбцам. Эта функция дает только выход...
    Пример 2
    Пример 2 g=nonzeros(sparse(hankel([1,2.8]))) g = 1 2 nzmax(S) — возвращает количество ячеек памяти для ненулевых элементов. Обычно функции nnz(S) и nzmax(S) дают один и тот же результат. Но если S...
    Пример 3
    Пример 3 q=nzmax(sparse(hankel([1.7.23]))) q = 6 S=spalloc(m,n,nzmax) — создает массив для разреженной матрицы S размера mxn с пространством для размещения nzmax ненулевых элементов. Затем матрица...
    Пример 4
    Пример 4 S = spalloc(5,4,5); spfun — вычисление функции для ненулевых элементов. Функция spfun применяется выборочно только к ненулевым элементам разреженной матрицы, сохраняя при этом разреженнос...
    Пример 5
    Пример 5 S=spfun(@exp.sprand(4,5,0,4)) S= (2.2) 1.6864 (2.3) 2.4112 (3.3) 2.6638 (2.4) 1.1888 (3.4) 1.3119 (4.4) 2.4007 (3.5) 1.2870 R = spones(S) — генерирует матрицу R той же разреженности, что...
    Пример 6
    Пример 6 S=sprand(3.2,0.3) S= (3.1) 0.2987 (1.2) 0.1991 spones(S) ans = (3.1) 1 (1.2) 1...
    Визуализация разреженных матриц
    Визуализация разреженных матриц Визуализация разреженных матриц нередко позволяет выявить не только любопытные, но и полезные и поучительные свойства тех математических закономерноетей, которые по...
    Пример 1
    Пример 1 S=sparse(sprandn(20,30,0.9));spy(S,'-r',6) Построенный по этому примеру график показан на рис. 12.1....
    Рис. 12.1. Визуализация разреженной матрицы
    Рис. 12.1. Визуализация разреженной матрицы...
    Алгоритмы упорядочения
    Алгоритмы упорядочения Упорядочение — это еще одна характерная для разреженных матриц операция. Ее алгоритм реализуется несколькими функциями: р = colmmd(S) — возвращает вектор упорядоченности сто...
    Пример 1
    Пример 1 S=sparse([2.3.1.4.2].[l,3.2.3.2],[4.3,5.6.7].4.5);full(S) ans = 0 5 0 0 0 4 7 0 0 0 0 0 3 0 0 0 0 6 0 0 t=colperm(S) t= ...
    Пример 2
    Пример 2 B=bucky;p=symmmd(B); R=B(p,p); subplot(1,2,1),spy(B); subplot(1,2,2).spy(R) ; r = symrcm(S) — возвращает вектор упорядоченности для симметричной матрицы S и называется упорядочением Катхи...
    Рис. 12.2. Пример применения функции symmmd
    Рис. 12.2. Пример применения функции symmmd...
    Пример 3
    Пример 3 B=bucky;p=symrcm(B); R=B(p,p); subplot(1,2,1),spy(B);subplot(1,2,2),spy(R) ; На рис. 12.3 приведен пример концентрации ненулевых элементов разреженной матрицы вблизи главной диагонали....
    Рис. 12.3. Пример применения функции symrcm
    Рис. 12.3. Пример применения функции symrcm...
    Норма, число обусловленности и ранг разреженной матрицы
    Норма, число обусловленности и ранг разреженной матрицы Ниже представлены функции, позволяющие вычислять числа обусловленности и ранги для разреженных матриц. с = condest(A) — использует метод Хей...
    Пример 1
    Пример 1 S=[3 0004: 54080; 00013]; r=sprank(S)...
    Разложение Холецкого разреженных матриц
    Разложение Холецкого разреженных матриц choli пс(X,'0') — возвращает неполное разложение Холецкого для действительной симметрической положительно определенной разреженной матрицы [nrm = norm(S) за...
    Пример 1
    Пример 1 S = delsqCnumgndCC' .4)) S = (1.1) 4 (2.1) -1 (1.2) -1 (2.2) 4 (3.2) -1 (2.3) -1 (3.3) 4 RD=cholinc(S,'0') R0= (1.1) 2.0000 (1.2) -0.5000 (2.2) 1.9365 (2.3) -0.5164 (3.3) 1.9322...
    LU-разложение разреженных матриц
    LU-разложение разреженных матриц Функция luinc осуществляет неполное LU-разложение и возвращает нижнюю треугольную матрицу, верхнюю треугольную матрицу и матрицу перестановок для разреженных матри...


- Начало -