Filter löschen
Filter löschen

little problem in plotting a signal. Both x, y has the same lenght but is not plotting correctly

1 Ansicht (letzte 30 Tage)
Hello!! I have this code and I am not getting what I should, that actually is a kind of sin that decrease whith the time. I have check that both arrays have the same lenght, but the problem is that the variable a that I used for the loop is fixed to 100. All this values I checked at the workspace. Here it goes the code
Tc=1*10e-3;
f=linspace(0.1,2e6);
R=zeros(1,100);%preallocate
for a=1:1:100
R(a)=i*Tc*sinc(f(a).*Tc/2).*sin(pi*f(a).*Tc/2);
end
plot(f,R)
Thanks in advance Nicolas

Antworten (3)

Honglei Chen
Honglei Chen am 14 Mär. 2012
I don't think a is the issue here. In your R(a), do you mean pi instead of i for the first term?
BTW you should be able to write this in vectorized form, just do
R = pi*Tc*sinc(f.*Tc/2).*sin(pi*f.*Tc/2)
  1 Kommentar
Nicolas
Nicolas am 14 Mär. 2012
Hello!Thanks for the response.
By i I mean the imaginary unit. What I am trying to do with the loop is to calculate the vector R, the 100 positions of R vector.
What I dont understand is the vectorized form?I dont need to write the loop then?
thanks

Melden Sie sich an, um zu kommentieren.


Nicolas
Nicolas am 14 Mär. 2012
Hello!Thanks for the response. By i I mean the imaginary unit. What I am trying to do with the loop is to calculate the vector R, the 100 positions of R vector. What I dont understand is the vectorized form?I dont need to write the loop then? thanks

Honglei Chen
Honglei Chen am 14 Mär. 2012
Yes you don't need to write the loop, if you mean for imaginary part, then it is
R = 1i*Tc*sinc(f.*Tc/2).*sin(pi*f.*Tc/2)
plot(f,imag(R))

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by