Hello everyone;
I try to use this loop;
R = 8.914;
PCO = 0;
for i = [1:250]
T(i) = i+0.1;
deltaG = -287500 + 22.75*T;
while PCO<100;
PCO = PCO + 0.01;
deltaGnew = R * T .* log(PCO);
end
end
But in my workspace I saw that T has only 2 values ([1.1,2.1])
The problem is that : I have T and PCO values. T varies between 1 - 250 and PCO starts 0 to 100. I want to calculate deltaG values of each temperature and deltaGnew values of each temp and PCO. And after that if deltaG = deltaGnew, I want to stop my loops.
Thank you!
Kindest regards,
S.A

2 Kommentare

madhan ravi
madhan ravi am 28 Jun. 2020
a?
Semih Ates
Semih Ates am 28 Jun. 2020
Sorry for that, I edit my code.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

madhan ravi
madhan ravi am 28 Jun. 2020

0 Stimmen

R = 8.914; % I don't understand why you need a loop though?
PCO = linspace(0, 1e2);
T = linspace(1, 250);
deltaG = -287500 + 22.75*T;
deltaGnew = R * T .* log(PCO);

3 Kommentare

Semih Ates
Semih Ates am 28 Jun. 2020
OK thank you, but is there any chance to use for - while loop at same for this ? or any example for that?
madhan ravi
madhan ravi am 28 Jun. 2020
R = 8.914;
PCO = linspace(0, 1e2);
T = linspace(1, 250);
[deltaG, deltaGnew] = deal(zeros(numel(T), 1));
for k = 1:numel(T)
deltaG(k) = -287500 + 22.75*T(k);
deltaGnew(k) = R * T(k) .* log(PCO(k));
end
Semih Ates
Semih Ates am 28 Jun. 2020
it works thank you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

KALYAN ACHARJYA
KALYAN ACHARJYA am 28 Jun. 2020

0 Stimmen

R = 8.914;
T=linspace(1.1,0.1,250);
deltaG = -287500 + 22.75.*T;
a= %?? % Define it
PCO=linspace(a,0.01,100);
deltaGnew=R*T(1:length(PCO)).*log(PCO);

3 Kommentare

Semih Ates
Semih Ates am 28 Jun. 2020
Thank you, it solve my problem. But I want to use for & while loop :/
KALYAN ACHARJYA
KALYAN ACHARJYA am 28 Jun. 2020
Bearbeitet: KALYAN ACHARJYA am 28 Jun. 2020
R = 8.914;
T=linspace(1.1,0.1,250);
deltaG = -287500 + 22.75.*T;
PCO=linspace(0:0.01,100);
PCO=linspace(0,0.01,100);
for i=1:length(PCO)
deltaGnew(i)=R*T(i)*log(PCO(i));
end
Semih Ates
Semih Ates am 28 Jun. 2020
thank you

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Programming finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by