Multiply a 3D matrix with 2d matrix to get a vector
5 次查看(过去 30 天)
显示 更早的评论
Suppose:
- X is a 3x3x6 matrix.
- Y is a 3x3 matrix
- Z is a 6x1 matrix
- Y(ij) = X(ijk) * Z(k) ....(i,j=1,3 and k=1,6) as per Einstein's notation
Y and Z are known. How to obtain X ...
0 个评论
回答(1 个)
David Sanchez
2014-7-2
The only solution that suits the dimensions of the matrices is this:
Y = rand(3);% Y is a 3x3 matrix
Z = rand(6,1);% Z is a 6x1 matrix
X = zeros(6,3,3); % % X is a 6x3x3 matrix.
for k=1:6
X(k,:,:) = Y/Z(k);
end
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Arithmetic Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!