Issue with creating a plot from two for loops

1 Ansicht (letzte 30 Tage)
Umar Naseef
Umar Naseef am 2 Jan. 2021
Kommentiert: Umar Naseef am 2 Jan. 2021
Hi,
I have an issue with creating a plot in the same figure from two for loops.
This is my code which is quite simple but I am still unable to find the issue.
a=1.63279*10^-6;
b=264.9889;
for T=373:10:1273;
Mu = (a*T.^0.5)/(1+b./T)
plot(T, Mu)
end
n = 0.666;
T0 = 273;
Mu0 = 1.375*10^-5;
for T=373:10:1273;
MuT = Mu0.*(T./T0).^n
end
  1 Kommentar
Umar Naseef
Umar Naseef am 2 Jan. 2021
I should be creating 2 different graphs in the same plot from the same T values and the Mu and MuT values.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Star Strider
Star Strider am 2 Jan. 2021
Neither of the loops are necessary. Use element-wise operations (here, exponentiation (.^ instead of ^) and division (./ instead of /)) to create the plots:
a=1.63279*10^-6;
b=264.9889;
T=373:10:1273;
Mu = (a*T.^0.5)./(1+b./T);
figure
plot(T, Mu)
grid
n = 0.666;
T0 = 273;
Mu0 = 1.375*10^-5;
T=373:10:1273;
MuT = Mu0.*(T./T0).^n;
figure
plot(T, MuT)
grid
See the documentation on Array vs. Matrix Operations for a full explanation.
.
  2 Kommentare
Umar Naseef
Umar Naseef am 2 Jan. 2021
Got it. Thank you.
Star Strider
Star Strider am 2 Jan. 2021
As always, my pleasure!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

David Hill
David Hill am 2 Jan. 2021
a=1.63279*10^-6;
b=264.9889;
T=373:10:1273;
Mu = (a*T.^0.5)./(1+b./T);
n = 0.666;
T0 = 273;
Mu0 = 1.375*10^-5;
MuT = Mu0.*(T./T0).^n;
plot(T, Mu,T,MuT);

Community Treasure Hunt

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

Start Hunting!

Translated by