exponenta event banner

пропускная способность

Нижняя и верхняя полосы пропускания матрицы

Описание

пример

B = bandwidth(A,type) возвращает пропускную способность матрицы A указано type. Определить type как 'lower' для более низкой полосы пропускания, или 'upper' для верхней полосы пропускания.

пример

[lower,upper] = bandwidth(A) возвращает меньшую полосу пропускания, lowerи верхняя полоса пропускания, upper, матрицы A.

Примеры

свернуть все

Создайте нижнюю треугольную матрицу 6 на 6.

A = tril(magic(6))
A = 6×6

    35     0     0     0     0     0
     3    32     0     0     0     0
    31     9     2     0     0     0
     8    28    33    17     0     0
    30     5    34    12    14     0
     4    36    29    13    18    11

Найдите более низкую полосу пропускания A путем указания type как 'lower'. Результат равен 5, так как каждая диагональ ниже главной диагонали имеет ненулевые элементы.

B = bandwidth(A,'lower')
B = 5

Найти верхнюю полосу пропускания A путем указания type как 'upper'. Результат равен 0, так как над главной диагональю нет ненулевых элементов.

B = bandwidth(A,'upper')
B = 0

Создайте матрицу разреженных блоков «100 на 100».

B = kron(speye(25),ones(4));

Просмотр сечения элементов 10 на 10 в левом верхнем углу B.

full(B(1:10,1:10))
ans = 10×10

     1     1     1     1     0     0     0     0     0     0
     1     1     1     1     0     0     0     0     0     0
     1     1     1     1     0     0     0     0     0     0
     1     1     1     1     0     0     0     0     0     0
     0     0     0     0     1     1     1     1     0     0
     0     0     0     0     1     1     1     1     0     0
     0     0     0     0     1     1     1     1     0     0
     0     0     0     0     1     1     1     1     0     0
     0     0     0     0     0     0     0     0     1     1
     0     0     0     0     0     0     0     0     1     1

B имеет 4 на 4 блока из них, центрированных по главной диагонали.

Найдите как нижнюю, так и верхнюю полосы пропускания B заданием двух выходных аргументов.

[lower,upper] = bandwidth(B)
lower = 3
upper = 3

Входные аргументы

свернуть все

Входная матрица, заданная как 2-D числовая матрица. A может быть полным или разреженным.

Типы данных: single | double
Поддержка комплексного номера: Да

Тип полосы пропускания, указанный как 'lower' или 'upper'.

  • Определить 'lower' для меньшей полосы пропускания (ниже основной диагонали).

  • Определить 'upper' для верхней полосы пропускания (над главной диагональю).

Выходные аргументы

свернуть все

Нижняя или верхняя полоса пропускания, возвращаемая как неотрицательный целочисленный скаляр.

  • Если type является 'lower', то 0 ≤ B ≤ size(A,1)-1.

  • Если type является 'upper', то 0 ≤ B ≤ size(A,2)-1.

Меньшая пропускная способность, возвращаемая как неотрицательный целочисленный скаляр. lower находится в диапазоне 0 ≤ lower ≤ size(A,1)-1.

Верхняя полоса пропускания, возвращаемая как неотрицательный целочисленный скаляр. upper находится в диапазоне 0 ≤ upper ≤ size(A,2)-1.

Подробнее

свернуть все

Верхняя и нижняя полоса пропускания

Верхняя и нижняя полосы пропускания матрицы измеряются путем нахождения последней диагонали (выше или ниже основной диагонали соответственно), которая содержит ненулевые значения.

То есть для матрицы A с элементами Aij:

  • Верхний B1 полосы пропускания является наименьшим числом, таким, что Aij = 0 всякий раз, когда j i > B1.

  • Меньший B2 полосы пропускания является наименьшим числом, таким, что Aij = 0 всякий раз, когда i j > B2.

Обратите внимание, что это измерение не запрещает всем нулевым промежуточным диагоналям в полосе, а вместо этого фокусируется на расположении последней диагонали, содержащей ненулевые значения. По условию верхняя и нижняя полосы пропускания пустой матрицы равны нулю.

Совет

  • Используйте isbanded функция для проверки, находится ли матрица в пределах определенной нижней и верхней полосы пропускания.

Расширенные возможности

.

См. также

| | | |

Представлен в R2014a