Matlab的环路的功能
题
我试图做一个循环重做一个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(平均值)。
感谢您的帮助
解决方案
下面的代码实现你所描述的:
genSIR.m
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)
虽然你的函数可以简化...
不隶属于 StackOverflow