Implement following matrix using for loop
1 次查看(过去 30 天)
显示 更早的评论
I want implement the following matrix and expression:
%Big_lambda
where theta,r,t are 1*3 matrix and a,b,p,q are 1*1 matrix.
My approach:
theta = [ 45 46 48] ;
t= [ 1 2 3 ];
r= [200 210 220];
for i=1:3
dif_x = [(-cos(theta(i))) (r(i).*sin(theta(i))) (2*a.*t(i)+b);...
(-sin(theta(i))) (-r(i).*cos(theta(i))) (2*p.*t(i)+q)]
W = dif_x(i)*Big_lambda(i)*dif_x(i)'
end
Is the approach correct or if it is wrong what should be done!
Thanks in advance.
7 个评论
Bob Thompson
2019-5-15
编辑:Bob Thompson
2019-5-15
As far as I can tell you are going in the correct direction. I am not a SME on your specific problem, but for the code aspect it seems to be functional.
I noticed you adjusted your indexing on dif_x. Don't forget to index W as well if you want to retain the results from each loop, instead of just the final loop.
W(i) = dif_x(:,:,i)*Big_lambda(i)*dif_x(:,:,i)'
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!