Main Content

本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

spalloc

为稀疏矩阵分配空间

语法

S = spalloc(m,n,nz)

说明

S = spalloc(m,n,nz) 创建一个大小为 m×n 的全零稀疏矩阵 S,该矩阵具有可存储 nz 个非零值的空间,其中 nz >= 1。然后,可逐列生成该矩阵,而不需要在非零数增加时重复分配存储。

spalloc(m,n,nz) 是以下函数的速记形式

sparse([],[],[],m,n,nz)

如果为 nz 指定值 0,则 spalloc 会将 nz 更改为 1

示例

使用 spalloc 初始化 n×n 空稀疏矩阵,使之具有 3*n 个非零值的空间。然后使用 for 循环逐个填充 S 的列。结果将得到一个具有约 50% 带密度的三对角矩阵。

S = spalloc(n,n,3*n);
for j = 1:n
    ind = [max(j-1,1) j min(j+1,n)];
    S(:,j) = sparse(ind,1,round(rand(3,1)),n,1,3);
end

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

另请参阅

| |

在 R2006a 之前推出