Simple problem yet I cannot find the error

1 view (last 30 days)
Matt
Matt on 13 Oct 2015
Edited: David Young on 13 Oct 2015
Here is my script:
haut=0.5
larg=0.5
long=2
A=linspace(1, larg*100, larg*100)'; % y
B=linspace(1, long*100, long*100)'; % x
C=linspace(1, haut*100, haut*100); % z
D=zeros(length(B),length(A));
for i=1:length(B)
for j=1:length(A)
D(i, j)=[B(i), A(j)]
end
end
But this doesn't work. Any suggestion?
  1 Comment
David Young
David Young on 13 Oct 2015
Edited: David Young on 13 Oct 2015
You can't store a 2-element vector (in this case [B(i), A(j)]) in an element of a numeric array. The value assigned to D(i,j) must be a scalar.
You need to explain what you want to do - what should D contain at the end of the loop?
It's possible that you need to look at cell arrays, which can contain vectors, but it might be better in various ways to stick with numeric arrays if the problem structure is suitable.
It's also possible that meshgrid and ndgrid could help here - that's just a guess on my part though.

Sign in to comment.

Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!