百回繰り返した後の最​小の数値とそれが繰り​返し文の何回目だった​かを知りたいです。

3 ビュー (過去 30 日間)
masaki yamate
masaki yamate 2017 年 1 月 21 日
コメント済み: masaki yamate 2017 年 1 月 22 日
百回繰り返した後の最小の数値とそれが繰り返し文の何回目だったかを知りたいです。 下記のコードの場合ですと、error_sqrdを百回求めて、その百回のうちの最小値とそれがkの何回目だったのかを知りたいです。
また、matfileなどに自動で書き込ませるなどの方法があれば教えてください。
if true
% code
end
disp('error_sqrd')
for k=1:100
figure('Name','橋面舗装のひび割れ');
t = time(121500:129500);
x2 = 100*square(2*pi*(0.014+0.00001*k)*time(121500:129500));
plot(time(121500:129500),x2,'r-',time(121500:129500),Yaw(121500:129500))
xlabel('Time (sec)');
ylabel('Yaw');
title('橋面舗装のひび割れ');
legend('矩形波','Yaw')
error_sqrd = sum((x2-Yaw(121500:129500)).^2);
fprintf('%d\n',error_sqrd)
end
  1 件のコメント
michio
michio 2017 年 1 月 22 日
MATLAB コード部分の
if true
% code
end
は {}Code ボタンだけを押すと挿入されてしまいますが、記入したコード部分を選択した上で {} を押すと挿入されず、選択部分がコードとして表示されるようになります。下記ページも参考にしてください。

サインインしてコメントする。

採用された回答

michio
michio 2017 年 1 月 22 日
100回程度であれば、すべての結果を1つの配列にまとめて(下記では error )、最小値とその場所を min 関数 を使って求めるのもよいかと思います。
下記にサンプルを書きましたので応用してみてください。
error = zeros(100,1);
for ii=1:100
error(ii) = rand(1);
end
[minimum,idx] = min(error)
  1 件のコメント
masaki yamate
masaki yamate 2017 年 1 月 22 日
出来ました。助かります。ありがとうございました。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeGeometry and Mesh についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by