- full()
- 疎行列形式のデータから普通の行列形式のデータを作る。
- find()
- 行列の非零要素を求める。
[i,j,s]=find(A); としたとき、
,
,
,
とおくと、
(
) であり、
これが
の非零要素全体となる。
- spy()
- スパース・パターンの表示 (可視化)
- sparse()
- 疎行列形式のデータを作る。
- A が普通の行列であるとき、S=sparse(A) とすると、
S は数学的には同じ (fulll(sparse(A)) は A と
同じということか) 内容の疎行列になる。
[i,j,s]=find(A);
[m,n]=size(A);
S=sparse(i,j,s,m,n);
|
- sparse(i,j,s,m,n,nzmax)
(i, j, s は次元が同じ (
とする) ベクトルで、
i と j は成分が自然数 (
,
,
)
は
型の行列で、
非零成分全体が
(
) で
あるような疎行列データを作る。
nzmax を省略した
sparse(i,j,s,m,n)
は、sparse(i,j,s,m,n,
) と同じである。
さらに m と n を省略した
sparse(i,j,s) では、
sparse(i,j,s,
,
) となる。
疎行列形式の単位行列を作るには、
speye(n,n) あるいは sparse(1:n,1:n,1) とする。
- spalloc()
- S=spalloc(m,n,nzmax); は、
S=sparse([],[],[],m,n,nzmax) と等価。
- spdiag()
n=5;
e=ones(n,1);
S=spdiag([-e,2*e,-e],-1:1,n,n);
|
桂田 祐史
2017-06-19