for i = 1:19
P(i) = [2.8*10^-4:0.1*10^-4:4.2*10^-4]
I cannot figure out how to fix my loop

댓글 수: 3

Jacob
Jacob 2014년 2월 25일
for i = 1:15*****
dpb
dpb 2014년 2월 26일
From what you're showing, you don't need (or want) a loop at all.
doc colon
and read the "Getting Started" section in help on manipulating arrays in Matlab to begin to get the picture.
P = [2.8e-4:1e-5:4.2e-4];
and
P = [2.8*10^-4:0.1*10^-4:4.2*10^-4];
return identical results.

댓글을 달려면 로그인하십시오.

 채택된 답변

Rick Rosson
Rick Rosson 2014년 2월 26일
편집: Rick Rosson 2014년 2월 26일

0 개 추천

No need for a for loop, no need for square brackets. Also, might as well pull common scale factor out using distributive property:
P = (2.8:0.1:4.2)*1e-4;

댓글 수: 1

Jacob
Jacob 2014년 2월 26일
Thanks for your help, but I apologize I did not put the entire code on the question yesterday.
for i = 1:15
P = 2.8e-4:.1e-4:4.2e-4; ???
Kw(i) = 10^-14;
Kh(i) = 10^-1.46;
Ka1(i) = 10^-6.3;
Ka2(i) = 10^-10.3;
func(i) = @(ph,P)Kw/(10^-ph)+(Ka1*Kh*P)/(10^-ph)+(2*Ka1*Ka2*Kh*P)/(10^-ph)^2-(10^-ph);
ph(i) =7;
xl(i) = -20;
xu(i) = 20;
es(i) = 0.1;
[ phout(i), iter(i) ] = bisect( func,xl,xu,es,P )
end

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

질문:

2014년 2월 25일

댓글:

2014년 2월 26일

Community Treasure Hunt

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

Start Hunting!

Translated by