multiplication between vectors

Hi everybody,
I have a problem with my program in matlab. I get an error about a multipication between vectors. I print the size of each vetor:
===========S(1:win_size, i)========= 256 1
==========x(offset(i):offset(i)+win_size-1)======== 1 256
========window======== 256
========x(offset(i):offset(i)+win_size-1) .* window====== ??? Error using ==> times Matrix dimensions must agree.
Error in ==> myspecgram at 107 S(1:win_size, i) = x(offset(i):offset(i)+win_size-1) .* window;
How can I fix this error?
Thanks, Ashraf

Réponses (2)

per isakson
per isakson le 10 Juin 2012

0 votes

".* " is element wise multiplication. Is that what you want? If so the vectors must have identical sizes or one must be a scalar.
Walter Roberson
Walter Roberson le 11 Juin 2012

0 votes

If x is a row vector and window is a column vector then you cannot use .* to multiply the two together.
Consider making x a column vector to be the same as your other variables.

Catégories

En savoir plus sur Operators and Elementary Operations dans Centre d'aide et File Exchange

Question posée :

le 10 Juin 2012

Community Treasure Hunt

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

Start Hunting!

Translated by