Is the Zeroes Function here necessary?
Mostra commenti meno recenti
Here is the code:
nuclei=zeros(1,100);
t=nuclei;
nuclei(1)=input('Enter initial number of nuclei: ');
t(1)=0;
t_c=input('Enter time constant: ');
dt=input('Time step: ');
for i=1:99
nuclei(i+1)=nuclei(i)-(nuclei(i)/t_c)*dt;
t(i+1)=t(i)+dt;
end
plot(t,nuclei,'-ok','MarkerFaceColor','k')
xlabel('Number of Nuclei','FontWeight','bold')
ylabel('time(s)','FontWeight','bold')
title('Radioactive Decay Number of nuclei versus time')
str1=['Time Constant= ' num2str(t_c) ' s '];
str2=['Time Step= ' num2str(dt) ' s'];
text(t(50),nuclei(10),str1,'FontWeight','bold','FontSize',14)
text(t(50),nuclei(20),str2,'FontWeight','bold','FontSize',14)
I have plots that result from this code, and this code with that first line removed, and they appear to be the same. Is that first line necessary? If so, why?
1 Commento
Stephen23
il 21 Feb 2018
No code is "necessary".
In this situation zeros makes that code much more efficient: array preallocation means that MATLAB does not waste time moving data around in memory:
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su MATLAB in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!