Matrix indexing collecting accurate results
1 view (last 30 days)
Show older comments
I have a for loop and some challenging mathematical equations my goal is to get a 3x3 matrix where A is preferable I would like to make A1 A2 cell matrices and collect the values leading to an easy final equation. Thanks in advance for anyone that helps me out!
for i = 1:100;
v2(1:3,i) = [cross(v1(1:3,i),(Sb(1:3,i)))/norm(cross(v1(1:3,i),(Sb(1:3,i))))]; % Works 3x1
w2(1:3,i) = [cross(w1(1:3,i),(Bb(1:3,i)))/norm(cross(w1(1:3,i),(Bb(1:3,i))))]; % Works 3x1
v3(1:3,i) = cross(v1(1:3,i),v2(1:3,i)); % Works 3x1
w3(1:3,i) = cross(w1(1:3,i),w2(1:3,i)); % Works 3x1
A1 = transpose([v1(1:3,i),v2(1:3,i),v3(1:3,i)]); % Works but donsn't store values 3x3
A2 = [w1(1:3,i),w2(1:3,i),w3(1:3,i)]; % Works but donsn't store values 3x3
A = mtimes(A1,A2); % Not working 3x3
end
0 Comments
Accepted Answer
KSSV
on 30 Apr 2019
Edited: KSSV
on 30 Apr 2019
A1 = zeros(3,3,100) ;
A2 = zeros(3,3,100) ;
A = zeros(3,3,100) ;
for i = 1:100;
v2(1:3,i) = [cross(v1(1:3,i),(Sb(1:3,i)))/norm(cross(v1(1:3,i),(Sb(1:3,i))))]; % Works 3x1
w2(1:3,i) = [cross(w1(1:3,i),(Bb(1:3,i)))/norm(cross(w1(1:3,i),(Bb(1:3,i))))]; % Works 3x1
v3(1:3,i) = cross(v1(1:3,i),v2(1:3,i)); % Works 3x1
w3(1:3,i) = cross(w1(1:3,i),w2(1:3,i)); % Works 3x1
A1(:,:,i) = transpose([v1(1:3,i),v2(1:3,i),v3(1:3,i)]); % Works but donsn't store values 3x3
A2(:,:,i) = [w1(1:3,i),w2(1:3,i),w3(1:3,i)]; % Works but donsn't store values 3x3
A(:,:,i) = mtimes(A1,A2); % Not working 3x3
end
More Answers (0)
See Also
Categories
Find more on Matrix Indexing 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!