How to store multiple array. or multidirection array.
1 view (last 30 days)
Show older comments
p = [15 30 45 60 75 90 75 60 45 30 15 30 45 60 75 90 75 60 45 30];
N1 = 10;
randidx = randi(numel(p), [1 20 N1]);
p = p(randidx);
for k= 1:20
for i = 1:10
a(k)= cosd (p(:,k,i));
b(k)= sind (p(:,k,i));
end
L(:,:,k) = [a(k)*b(k) 0 (a(k))^2;
0 0 b(k);
0 0 0;];
end
I want every i = 1:10 value but i unable to get. How can i store values for p(:,:,1) for 20 L(:,:,k) and p(:,:,2) for 20 L(:,:,k).....and so on...please help me.
2 Comments
Guillaume
on 17 Dec 2015
Please learn to format your posts, I'm not going to fix it for you every time. Use the {} Code button to format code and do not put blank lines between each line of code.
It looks like you are happy with the answer I've given in your other question since you're using it here. Common courtesy means you should at the very least accept the answer.
Accepted Answer
Guillaume
on 17 Dec 2015
Why is p a 3d array if the first dimension is only 1?
You can't store a matrix as an element of another matrix. matrix elements are always scalar. You can store a matrix as an element of a cell array:
L{:, :, k} = [a(k)*b(k) 0 a(k)^2;
0 0 b(k);
0 0 0;]
Whether or not that is what you should do I have no idea since you didn't provide any context. Possibly you intended for p to be 2d and L to be a 3d matrix with the elements of that a*b matrix stored as scalars in the 3rd dimension of L.
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!