Multiplication of a matrix with 6x6 cell.

5 vues (au cours des 30 derniers jours)
M.Bilal
M.Bilal le 1 Fév 2020
Commenté : M.Bilal le 3 Fév 2020
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

Réponse acceptée

Stephen23
Stephen23 le 1 Fév 2020
Use an anonymous function instead:
fun = @(m) m.*I2;
S_dg = cellfun(fun,S_m,'uni',false);
  2 commentaires
M.Bilal
M.Bilal le 1 Fév 2020
Thankyou again sir, for your effective answer...
M.Bilal
M.Bilal le 3 Fév 2020
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

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by