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
私が欲しいのはSIRの値が生成された乱数による異なりますたびに、この関数に1000回を反復することです。すべての反復のために、私は、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