Более низкая и верхняя матричная пропускная способность
B = bandwidth(A,type)
[lower,upper] = bandwidth(A)
возвращает пропускную способность матричного 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
A
Введите матрицуВведите матрицу, заданную как 2D числовая матрица. A
может быть или полным или разреженным.
Типы данных: single | double
Поддержка комплексного числа: Да
ввод
Тип пропускной способности'lower'
| 'upper'
Тип пропускной способности, заданный как 'lower'
или 'upper'
.
Задайте 'lower'
для более низкой пропускной способности (ниже основной диагонали).
Задайте 'upper'
для верхней пропускной способности (выше основной диагонали).
B
Понизьтесь или верхняя пропускная способностьБолее низкая или верхняя пропускная способность, возвращенная как неотрицательный целочисленный скаляр.
Если 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
.
Верхняя и более низкая пропускная способность матрицы измеряется путем нахождения последней диагонали (выше или ниже основной диагонали, соответственно), который содержит ненулевые значения.
Таким образом, для матрицы А с элементами Aij:
Верхняя пропускная способность B1 является самым маленьким номером, таким образом что каждый раз, когда .
Более низкая пропускная способность B2 является самым маленьким номером, таким образом что каждый раз, когда .
Обратите внимание на то, что это измерение не запрещает промежуточные диагонали в полосе от того, чтобы быть всем нулем, но вместо этого фокусируется на местоположении последнего диагонального, содержащего ненули. Условно, верхняя и более низкая пропускная способность пустой матрицы является оба нулем.
Используйте функцию isbanded
, чтобы протестировать, если матрица в определенной более низкой и верхней пропускной способности.
Указания и ограничения по применению:
Генерация кода не поддерживает входные параметры разреженной матрицы для этой функции.
Эта функция полностью поддерживает массивы GPU. Для получения дополнительной информации смотрите функции MATLAB Выполнения на GPU (Parallel Computing Toolbox).
Эта функция полностью поддерживает распределенные массивы. Для получения дополнительной информации смотрите функции MATLAB Выполнения с Распределенными Массивами (Parallel Computing Toolbox).
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.