1
blkdiag
使用varargin
从输入参数(每个矩阵需要插入对角线)构造块对角线矩阵。将变量传递给具有可变长度输入参数的函数
out = blkdiag(a,b,c,d,...)
,其中a, b, c, d, ...
是矩阵, 输出
假设我有矩阵的单元阵列的形式的块对角矩阵(或一些其他数据结构);我将如何将此功能提供给像blkdiag
这样的功能?
blkdiag
使用varargin
从输入参数(每个矩阵需要插入对角线)构造块对角线矩阵。将变量传递给具有可变长度输入参数的函数
out = blkdiag(a,b,c,d,...)
,其中a, b, c, d, ...
是矩阵, 输出
假设我有矩阵的单元阵列的形式的块对角矩阵(或一些其他数据结构);我将如何将此功能提供给像blkdiag
这样的功能?
使用{:}拓展它的功能:
blocks = cell(2);
blocks{1} = rand(2);
blocks{2} = rand(2);
out = blkdiag(blocks{:})
答:
out =
0.6787 0.7431 0 0
0.7577 0.3922 0 0
0 0 0.6555 0.7060
0 0 0.1712 0.0318
该死。刚想出答案。嗯... – Jacob
@Phonon:这通常不是好的形式:) – Jacob
但它确实给那些在SO上寻求帮助的人提供了很好的信息。 – Phonon