Scilab 5.3.3
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
spcompack
converte uma representação de adjacência comprimida em representação de adjacência padrão
Parâmetros
- xadj
vetor de inteiros de comprimento (n+1).
- xlindx
vetor de inteiros de comprimento n+1 (ponteiros).
- lindx
vetor de inteiros
- adjncy
vetor de inteiros
Descrição
A função utilitária spcompak é usada para converter uma representação de adjacência comprimida em uma representação de adjacência padrão.
Exemplos
// A é a matriz esparsa: A=[1,0,0,0,0,0,0; 0,1,0,0,0,0,0; 0,0,1,0,0,0,0; 0,0,1,1,0,0,0; 0,0,1,1,1,0,0; 0,0,1,1,0,1,0; 0,0,1,1,0,1,1]; A=sparse(A); //Para esta matriz a representação padrão de adjacência é dada por: xadj=[1,2,3,8,12,13,15,16]; adjncy=[1, 2, 3,4,5,6,7, 4,5,6,7, 5, 6,7, 7]; //(ver sp2adj). // Incrementos no vetor xadj dão o número de entradas não nulas em cada coluna // i.e., há 2-1=1 entrada na coluna 1 // há 3-2=1 entrada na coluna 2 // há 8-3=5 entradas na coluna 3 // 12-8=4 4 //etc. //O índice de linha dessas entradas é dado pelo vetor adjncy // por exemplo, // adjncy (3:7)=adjncy(xadj(3):xadj(4)-1)=[3,4,5,6,7] // diz que as 5=xadj(4)-xadj(3) entradas na coluna 3 têm índices de linha // 3,4,5,6,7. //Na representação compacta, as seqüências repetidas em adjncy //são eliminadas. //Aqui em adjncy, as seqüências 4,5,6,7 e 7 são eliminadas. //A estrutura padrão (xadj,adjncy) toma a forma comprimida (lindx,xlindx) lindx=[1, 2, 3,4,5,6,7, 5, 6,7]; xlindx=[1,2,3,8,9,11]; //(colunas 4 e 7 de A são eliminadas). //A pode ser reconstruída de (xadj,xlindx,lindx). [xadj,adjncy,anz]= sp2adj(A); adjncy-spcompack(xadj,xlindx,lindx)
<< spchol | Matrizes Esparsas | speye >> |