[Matlab] moltiplicare due segnali

daniela871
Salve, scrivo di sotto il codice che ho utilizzato e il relativo errore segnalato da matlab...nella speranza che qualcuno mi possa aiutare!!

f=-32:1/10:32;
filtro=rect(f-1.5); %RECT E' IL PRIMO SEGNALE
figure(2);
plot(f,filtro);
grid on;
xlabel('HZ');


t = 0:1e-4:1;
x1 = A*sin(2*pi*2.*t)+A;
X1f = abs(fft(x1))/10000; %1000 è il numero di campioni.X1f E' IL SECONDO SEGNALE
figure(3);
plot(X1f(1:100));
grid on;
title('spettro di x1');
xlabel('Hz');
ylabel('ampiezza');

Y1f=X1f .* filtro; %IL PROBLEMA RISIEDE IN QUESTA MOLTIPLICAZIONE
plot(f,Y1f);

L'errore che mi viene restituito è il seguente :

??? Error using ==> times
Matrix dimensions must agree.

Qualcuno potrebbe darmi una mano???helppppp

Risposte
ZioPaolo1
filtro è un vettore di 641 elementi mentre x1f è un vettore di 10001 elemnti, chiaramente Matlab non s come moltiplicarli.

daniela871
grazie ;)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.