我正在尝试循环重做 Matlab 函数 1000 次。这是程序
d = unifrnd (0,10,[10,1]);
c = d.^(-2);
a = round(unifrnd(0,1,[1,10]);
e = a*c
btotal = e+1
SIR = 1/btotal
我想要的是将此函数迭代 1000 次,每次 SIR 的值都会因生成的随机数而变化。对于每次迭代,我希望将 SIR 的值加在一起(求和),并在第 1000 次迭代结束时,找到平均 SIR(均值)。
谢谢您的帮助
下面的代码实现了您所描述的内容:
function SIR = genSIR()
d = unifrnd (0,10,[10,1]);
c = d.^(-2);
a = round(unifrnd(0,1,[1,10]));
e = a*c;
btotal = e+1;
SIR = 1/btotal;
end
N = 1000;
SIR = zeros(N,1);
for i=1:N
SIR(i) = genSIR();
end
s = sum(SIR)
m = mean(SIR)
尽管您的功能可以简化...