Issue with creating a plot from two for loops

1 visualizzazione (ultimi 30 giorni)
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 Commento
Umar Naseef
Umar Naseef il 2 Gen 2021
I should be creating 2 different graphs in the same plot from the same T values and the Mu and MuT values.

Accedi per commentare.

Risposta accettata

Star Strider
Star Strider il 2 Gen 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.
.

Più risposte (1)

David Hill
David Hill il 2 Gen 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