Calculating cpu usage when running matlab program.
16 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi there,
Would this code be correct in giving me the cpu usage?
close all; clear;
tstart = tic;
initime = cputime;
prompt = ('Please enter time step');
result = input(prompt);
tstep = result;
%define known variables
g = 9.81; c = 12.5; m = 70;
%define analytic time vector
t = 0 : tstep : 10;
%get analytic velocity using equation from lectures
v_analytic = (g*m/c)*(1-exp(-c*t/m));
%set up plot and plot analytic velocity
figure(1); hold on; grid on; box on;
plot(t,v_analytic,'b*-')
title('parachutist');
xlabel('time (s)');
ylabel('velocity (m/s)');
%do numerical calculations here using a 'for' loop
v1 = 0;
N = length(t);
v(1)=0;
for i = 2 : N;
v(i) = v(i-1) + (g-c*v(i-1)/m)*(tstep);
end
%numerical results
plot(t,v,'ro-')
legend('analytical','numerical')
%do error calculations at 5s here
Eabs = abs(v_analytic(5) - v(5));
Erel = Eabs/v_analytic(5);
fintime = cputime;
telapsed = toc(tstart);
display(tstep, 'tsize');
display(Eabs,'Absolute error');
display(Erel,'Relative error');
display((fintime -initime)/telapsed,'CPU usage (%):');
I think this is correct. I want to establish the cpu usage under different input conditions (stepsizes) as if the stepsize is smaller then more calculations are made by the program.
1 comentario
Walter Roberson
el 25 de En. de 2016
You cannot bold formatted code. If you want to bring attention to particular code lines, add a comment to them.
Respuestas (1)
Walter Roberson
el 25 de En. de 2016
It is recommended that you use timeit() . If you have an older MATLAB that does not have that built in, you can find it in the File Exchange.
3 comentarios
Walter Roberson
el 25 de En. de 2016
There is an example at http://www.mathworks.com/help/matlab/ref/timeit.html . You put the code to be timed in a function or function handle and timeit() the handle.
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!