Problem with for loop

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 Commenti

Jacob
Jacob il 25 Feb 2014
for i = 1:15*****
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.

Accedi per commentare.

 Risposta accettata

Rick Rosson
Rick Rosson il 26 Feb 2014
Modificato: Rick Rosson il 26 Feb 2014
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 Commento

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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Tag

Richiesto:

il 25 Feb 2014

Commentato:

il 26 Feb 2014

Community Treasure Hunt

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

Start Hunting!

Translated by