Error'incorrect dimensions for matrix multiplication'

3 vues (au cours des 30 derniers jours)
Ancy S G
Ancy S G le 1 Mar 2022
Commenté : VBBV le 30 Mar 2022
phis=3;phib=8;
zeta=-.95:0.5:10;
Eg=[-2.9583 5.2519 -6.5456 5.2455 -0.4883 -7.0614 -6.5562];
xi=[1 1 1 1 1 1];
for n=1:1:6
if Eg(:,n)>=zeta
zeta=xi/phis-1;
F=xi*log(1+zeta)+phis*(Eg(n,:)-zeta);
elseif Eg(:,n)<zeta
zeta=xi/phib-1;
F=xi*log(1+zeta)+phib*(Eg(n,:)-zeta);
else
end
end
Error using *
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches the number of rows in the second matrix. To perform elementwise multiplication, use '.*'.
plot(zeta,F,'*')
How to correct the dimension of this matrix

Réponses (1)

VBBV
VBBV le 1 Mar 2022
Modifié(e) : VBBV le 1 Mar 2022
phis=3;
phib=8;
zeta=-.95:0.5:10;
Eg=[-2.9583 5.2519 -6.5456 5.2455 -0.4883 -7.0614 -6.5562]
Eg = 1×7
-2.9583 5.2519 -6.5456 5.2455 -0.4883 -7.0614 -6.5562
xi=[1 1 1 1 1 1];
for n=1:1:6
if Eg(:,n)>=zeta
zeta=xi/phis-1;
F(:,n)=xi.*log(1+zeta)+phis*(Eg(:,n)-zeta); % accessing incorrect index
elseif Eg(:,n)<zeta
zeta=xi/phib-1;
F(:,n)=xi.*log(1+zeta)+phib*(Eg(:,n)-zeta);
else
end
end
plot(zeta,F,'*')
check the sizeof Eg matrix
  2 commentaires
Ancy S G
Ancy S G le 17 Mar 2022
Thank you
VBBV
VBBV le 30 Mar 2022
If this solved your problem, please accept the answer :)

Connectez-vous pour commenter.

Catégories

En savoir plus sur Linear Algebra dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by