Getting syntax error when using for loop.
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Jack Upton
el 23 de Abr. de 2019
Comentada: Jack Upton
el 23 de Abr. de 2019
As title says; I am getting a syntax error when using the following code. The error points towards the d on "end"
F0=3.18;
m=0.0112;
k=31.2;
r1=0.22;
w0=sqrt(k/m);
w=linspace(0,400,400);
r=linespace(0.11,1.1,10);
for i=1:10
x0(:,i)=(F0/m)./(sqrt(((w0^2)-(w.^2))+((j*w*r(i)/m))));
end
5 comentarios
Walter Roberson
el 23 de Abr. de 2019
h = plot(w, x0);
will automatically use a different color or line pattern for each of the 10 lines. There are 7 default colors, so the last 3 would end up re-using the colors of the first 3, but with a different line style.
You can assign specific colors to the lines by using,
set(h(1), 'Color', [.3 .9 .2]);
set(h(2), 'Color', 'g');
set(h(3), 'Color', [1, 1/3, 7/10]);
and so on. If you have an array of color values, you can create a loop. For example,
NL = length(h);
cmap = copper( NL );
for K = 1 : NL
set(h(K), 'Color', cmap(K, :))
end
Respuesta aceptada
madhan ravi
el 23 de Abr. de 2019
r = linspace... % also consider preallocating x0
2 comentarios
Walter Roberson
el 23 de Abr. de 2019
Before the loop,
x0 = zeros(length(w), length(r));
Más respuestas (0)
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!