Filter löschen
Filter löschen

Reformat of code, Rewriting code and adding some changes

2 Ansichten (letzte 30 Tage)
Owen Fernandez
Owen Fernandez am 23 Nov. 2020
Kommentiert: Owen Fernandez am 24 Nov. 2020
Does anyone have any ideas of how I code write this code differently? Like is there any substitues for the matlab based functions that I am calling, Even if it makes the code longer Ill accept the answer.
function [t,cp]=CpRange(tmin,tmax,inc)
inc=round(inc,3);%rounding to 3 decimal points
t=tmin:inc:tmax;
cp=zeros(size(t));
for i=1:length(cp)
cp(i)=CO2(t(i));
end
end
  4 Kommentare
Voss
Voss am 23 Nov. 2020
Vectorizing the CO2 calculation should speed it up. You can use logical indexing to do that:
function [t,cp]=CpRange(tmin,tmax,inc)
inc=round(inc,3);%rounding to 3 decimal points
t=tmin:inc:tmax;
cp=zeros(size(t));
R=.1889;
idx = t>=300 & t<=1000;
cp(idx) = 0.24007797e+01 ...
+0.87850957e-02*t(idx) ...
-0.6607878e-05*t(idx).^2 ...
+0.20021861e-08*t(idx).^3 ...
+0.63274039e-15*t(idx).^4;
idx = t>1000 & t<=3000;
cp(idx) = 0.44080e+1 ...
+0.309817e-02*t(idx) ...
-0.123925e-05.^t(idx).^2 ...
+0.227413e-09*t(idx).^3 ...
-0.155259e-13+t(idx).^3;
cp=cp*R;
Also, check your second formula (for t > 1000 and <= 3000); I think maybe there are two typos (^t^2 should perhaps be *t^2 and +t^3 should perhaps be *t^4).
Owen Fernandez
Owen Fernandez am 24 Nov. 2020
Thank you Mr. BenJamin that really helped me (:

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by