Multiply a 3D matrix with 2d matrix to get a vector

조회 수: 5 (최근 30일)
Shashank
Shashank 2014년 7월 2일
댓글: Shashank 2014년 7월 2일
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 ...

답변 (1개)

David Sanchez
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
  댓글 수: 1
Shashank
Shashank 2014년 7월 2일
Thanks for your reply...It appears that, I wrote the wrong dimensions for matrix X...X(3x3x6) matrix....Apologies for that..

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Arithmetic Operations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by