MATLAB: Error while saving multiple graphs.

MATLABsaving graphs automatically

for omega = 0:0.01:0.99999
xt=xo*cos(omegan*t)+((xodot)/(omegan))*sin(omegan*t)+ds*((cos(omega*t)-cos(omegan*t))/(1-(omega/omegan)^2));
t=plot(t,xt);
title(['\omega/\omega_n = ' num2str(omega) '/1'])
saveas(gcf,num2str(omega),'jpg')
end
Undefined operator '*' for input arguments of type 'matlab.graphics.chart.primitive.Line'.
Error in forced (line 13)
xt=xo*cos(omegan*t)+((xodot)/(omegan))*sin(omegan*t)+ds*((cos(omega*t)-cos(omegan*t))/(1-(omega/omegan)^2));
The above error is being displayed while executing the above code. What is that error? how to rectify it?
The code is working fine when not in a loop.

Best Answer

You are using variable t as both numeric and graphics objects. Correct the second line of for loop
for omega = 0:0.01:0.99999
xt=xo*cos(omegan*t)+((xodot)/(omegan))*sin(omegan*t)+ds*((cos(omega*t)-cos(omegan*t))/(1-(omega/omegan)^2));
T=plot(t,xt);
title(['\omega/\omega_n = ' num2str(omega) '/1'])
saveas(gcf,num2str(omega),'jpg')
end
Related Question