Nested for loop not iterating

1 回表示 (過去 30 日間)
Brenton Hirao
Brenton Hirao 2019 年 10 月 10 日
コメント済み: per isakson 2019 年 10 月 10 日
I have a nested for loop needed to do a gridsearch to do a linear fit of a model with two unknown constants. As far as I can tell, these for loops are not iterating because i and j both show a value of 1 in the workspace. What am I doing wrong?
Thanks for any help.
agrid=[1:0.1:100];
bgrid=[.5:.0001:1.5];
lenagrid=length(agrid);
lenbgrid=length(bgrid);
for i = 1:lenagrid
for j = 1:lenbgrid
a_p = agrid(i)
b_p=bgrid(j);
fhat(i,j)=(a_p(i))-(b_p(j)).*magrange;
TSE(i,j)=sum((fhat-magrange).^2);
end
end
  2 件のコメント
Daniel M
Daniel M 2019 年 10 月 10 日
You're trying to access the jth element of b_p, but it is only length 1.
per isakson
per isakson 2019 年 10 月 10 日
Was there an error message? What did it say?

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

回答 (1 件)

per isakson
per isakson 2019 年 10 月 10 日
I'm just guessing. Replace
a_p = agrid(i)
b_p=bgrid(j);
fhat(i,j)=(a_p(i))-(b_p(j)).*magrange;
by
fhat(i,j) = ( agrid(i) - bgrid(i) ).*magrange;

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by