Help me with this error!
1 view (last 30 days)
Show older comments
Mobasher Hossain
on 14 Mar 2015
Commented: Mobasher Hossain
on 14 Mar 2015
I'm trying to plot x vs y,saving the values in arrays:
clear all;
l = 0.1;
for index = 1:30;
x(index) = (index-1)*0.1;
y(index) = pi*(x.^2 + 1).^2 *l;
end
%PLOT x VERSUS y
plot(x,y);
xlabel('x');
ylabel('pi*((x^2+1)^2)*l');
But I'm getting this error: In an assignment A(I) = B, the number of elements in B and I must be the same.
Error in problem_02 (line 8) y(index) = pi*(x.^2 + 1).^2 *l;
0 Comments
Accepted Answer
Roger Stafford
on 14 Mar 2015
Instead of:
y(index) = pi*(x.^2 + 1).^2 *l;
you should write:
y(index) = pi*(x(index)^2 + 1)^2 *l;
Either that or else you should do:
y = pi*(x.^2 + 1).^2 *l;
after you exit the for-loop.
As it stands you have a scalar on one side of the equation and a vector on the other side in the original
y(index) = pi*(x.^2 + 1).^2 *l;
That is what matlab is unhappy about.
More Answers (0)
See Also
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!