My code continuously giving this error( Error using ./ Matrix dimensions must agree. Error in Untitled14 (line 16) k = zeta*(w./wd); )

3 vues (au cours des 30 derniers jours)
zeta = g * q;
j= 1-power(zeta,2);
wd = w*power(j,1/2);
r=w./wd;
k = zeta*r;
l=k*sin(wd*t);
m=cos(wdt) + l;
n= - zeta*w*t;
p = 1 - exp(n)*(m);
plot (p)
  4 commentaires
arif hussain
arif hussain le 12 Juin 2017
Error using ./ Matrix dimensions must agree.
Error in Untitled14 (line 16) r=w./wd;
arif hussain
arif hussain le 12 Juin 2017
size of w is 60x1 double size of wd is 60x60 double

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 14 Juin 2017
You are using the / operator in several places. In MATLAB, A/B is more or less the same as A * pinv(B) . 1/w where w is 60 x 1, gives you a 1 x 60 result. Likewise, h = xt/ i where i is 60 x 1, gives you a 1 x 60 result. You then end up working with this mix of 60 x 1 and 1 x 60 and you end up with trying to combine arrays in the wrong way.
>> 1/[2;4;3]
ans =
0 0.25 0
Notice the output is a row vector for a column vector divisor.
If you would need the answer [0.5; 0.25; 0.3333] (column vector, individual divisions) instead for this calculation, then you need to use the ./ operator

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices 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