Multiplication of a matrix with 6x6 cell.

조회 수: 5 (최근 30일)
M.Bilal
M.Bilal 2020년 2월 1일
댓글: M.Bilal 2020년 2월 3일
Here, i want to multply matrix with 6x6 cell array, but the error occurs. How can i solve this?
Here
S_m is 6x6 cell array
I2 is 1x6 matrix, I2=[1 1 1 0 0 0]
In order to multiply both, following code is used:
(error included)
S_dg = cellfun(@times,S_m,num2cell(I2),'uni',false); %to multiply matrix I2(1x6) with cell array 6x6
Error using cellfun
All of the input arguments must be of the same
size and shape.
Previous inputs had size 6 in dimension 1.
Input #3 has size 1

채택된 답변

Stephen23
Stephen23 2020년 2월 1일
Use an anonymous function instead:
fun = @(m) m.*I2;
S_dg = cellfun(fun,S_m,'uni',false);
  댓글 수: 2
M.Bilal
M.Bilal 2020년 2월 1일
Thankyou again sir, for your effective answer...
M.Bilal
M.Bilal 2020년 2월 3일
1 question more,
How to solve equation which consist of cell array 6x6, matrices and variables?
e.g
S_eff = S_d + (((S_d - S_m) * I6 * (S_d - S_m))/(phi*(I2*S_m*I2' - 1/k_f) - I2*(S_d - S_m)*I2'));
% Here, S_d,S_m, are 6x6 cell array while phi and 1/k_f are single values say phi=0.2, k_f=2
% I2 =[1 1 1 0 0 0]; 1x6 matrix
% I6 = I2'*I2; 6x6 matrix

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by