Azzera filtri
Azzera filtri

i have problem in matlab

1 visualizzazione (ultimi 30 giorni)
BANI tita
BANI tita il 21 Gen 2013
i programmed one program for processing signal but i don't arrive to result please you can correct for me this problem:
Fs=4000;
n= 1481;
T=1/Fs;
L=4096;
t=(0:L-1)*T;
d = pow2(nextpow2(L));
f = (0:d-1)*(Fs/d);
p=40;
M=4;
A=[0.12;0.059;0.053;0.036];
for Ap=0.5
for i=1:3
s1=A(1,1)*sin(2*pi*1*(n/60)*t);
si=A(i+1,1)*sin(2*pi*(i+1)*(n/60)*t);
s=s1+si;
s;
x1=Ap*sin(2*pi*(n/60)*p*t+s);
y1=fft(x1,d)/L;
end
end
thank you

Risposte (3)

Walter Roberson
Walter Roberson il 21 Gen 2013
No, we cannot correct it for you, as you have not indicated what you do expect and you have not indicated what problems you observe. The code you show is perfect for achieving whatever it achieves right now, and we have no reason to know that what it does now is not exactly what it should be doing.

Image Analyst
Image Analyst il 21 Gen 2013
Ap is in a for loop but it never takes on any values except 0.5, you're indexing A as if it's a 2D array when it's really just a 1D array, and you overwrite x1 and y1 every iteration. Those are some unusual looking things, but other than that, we don't know what you're expecting because you didn't tell us.

BANI tita
BANI tita il 21 Gen 2013
for Ap take 2 values 0.5 and 1, but in every value Ap, A take 4 values i want to find spectrum graphics, but in this program i find principal spectrum and spectrum of A=0.12 and for A=0.036. thank you
  5 Commenti
BANI tita
BANI tita il 21 Gen 2013
Modificato: Walter Roberson il 21 Gen 2013
i have program of frequency modulation, but the modulated signal is sum of 4 signals of amplitude variant and frequency too. my function is:
x(t)=Ap*sin[2*pi*p*(n/60)*t+sum(Am*sin(2*pi*m*(n/60)*t)]
with AP=0.5 & 1
m takes 1,2,3 and 4
Am takes 0.12, 0.059, 0.053 and 0.036 depending of m.
program that i was doing is in 1st conversion for Ap=0.5, problem that i'm finding is when execute program i find 3 spectrums : principal and for m=1 and m=4. normally i must find all spectrum
Walter Roberson
Walter Roberson il 21 Gen 2013
Your "for i" loop only goes to 3, so I am not surprised you got 3 of something. How many spectrum are you expecting?
I note that your code overwrites x1 and y1 in ever iteration of the "for i" loop; is there a reason you are computing the values and throwing them away in the next iteration of the loop?

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by