bandwidth

Largura de banda inferior e superior de uma matriz.

Categoria: Mathematics > Linear Algebra

Sintaxe

[lower, upper] = bandwidth(A)

Retorna as duas larguras de banda.

B = bandwidth(A, type)

Retorna uma largura de banda, em que type é 'lower' ou 'upper'.

Descrição

A largura de banda inferior é o maior valor de i - j entre as entradas não nulas A(i,j) com i > j, e a superior é o maior j - i. Uma matriz diagonal tem as duas iguais a 0, uma tridiagonal tem as duas iguais a 1, e uma matriz quadrada cheia n por n tem as duas iguais a n - 1 (quando seus triângulos são não nulos).

A largura de banda indica qual solver ou esquema de armazenamento compensa: sistemas em banda podem ser resolvidos em tempo proporcional a n vezes o quadrado da largura.

Argumentos de entrada

A
Matriz numérica.
type
'lower' ou 'upper'.

Argumentos de saída

lower
Número de diagonais abaixo da principal que contêm algum não zero.
upper
Número de diagonais acima da principal que contêm algum não zero.

Exemplo

Uma matriz tridiagonal

A = [1 2 0 0; 3 4 5 0; 0 6 7 8; 0 0 9 10];
[lo, up] = bandwidth(A)
bandwidth(A, 'lower')
Saída
lo = 1
up = 1
ans = 1

Veja também

isbanded istril istriu isdiag diag