gpt4 book ai didi

matlab - repmat 与 MATLAB 中的简单矩阵乘法

转载 作者:行者123 更新时间:2023-12-02 20:48:50 30 4
gpt4 key购买 nike

v为长度为n的行向量。目标是创建一个矩阵 A,其中 m 行全部等于 v。

MATLAB 有一个名为 repmat 的函数来实现此目的。 。可能的代码是

A = repmat(v,[m 1])

还有另一种同样简洁的方法,使用简单的矩阵运算

A = 个(m,1)*v

对于较大的 m 和 n,这两种方法中的哪一种更可取?

最佳答案

让我们比较一下!

测试算法时,有两个指标很重要:时间和内存。

让我们从时间开始:

enter image description here

显然,repmat 获胜!

内存:

profile -memory on
for m=1000:1000:50000
f1=@()(repmat(v,[m 1]));
f2=@()(ones(m,1)*v);
ii=ii+1;
t1(ii)=timeit(f1);
t2(ii)=timeit(f2);
end
profreport

enter image description here

看起来两者占用的内存量相同。然而,探查器因not showing all the memory而闻名。 ,所以我们不能完全信任它。

不过,很明显 repmat 更好

关于matlab - repmat 与 MATLAB 中的简单矩阵乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43117303/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com