私は点集合 P を持っており、k 最近隣人によって隣接行列 A を構築します。A の各行は [...+1...-1...] で、隣接点のペアを示します。A のサイズは 48348 x 8058、sprank(A) は 8058 です。しかし、次のようにすると、警告が表示されます。
a=A*b; c=A\a;
また、norm(cb) は非常に大きいです。隣接する行列 A に問題があるようですが、わかりません。前もって感謝します!
私は点集合 P を持っており、k 最近隣人によって隣接行列 A を構築します。A の各行は [...+1...-1...] で、隣接点のペアを示します。A のサイズは 48348 x 8058、sprank(A) は 8058 です。しかし、次のようにすると、警告が表示されます。
a=A*b; c=A\a;
また、norm(cb) は非常に大きいです。隣接する行列 A に問題があるようですが、わかりません。前もって感謝します!
sprank
行列の行/列の数がゼロ以外の要素を持つA\b
だけであり、 は行列の実際のランクを報告します。これは、行列の行数が線形独立であることを示します。たとえば、次のマトリックスの場合:
A = [-1 1 0 0;
0 1 -1 0;
1 0 -1 0;
0 0 1 -1]
sprank(A)
は 4rank(A)
ですが、3 番目の行は他の行の線形結合、具体的には として記述できるため、3 しかありませんA(2,:) - A(1,:)
。
対処する必要がある問題は、計算方法(線形に独立した方程式系を生成することが予想される場合) か、階数欠損行列の因数分解を必要としないA
使用方法を見つける必要があるかのいずれかです。A