60 views (last 30 days)

Show older comments

I have these:

, where a=3

How to represent these discrete signals above. In order to find the discrete time fourier transform(DTFT) for these signals, I know that need use fft and stem functions, but I don't know how to do that.

Can anyone help me to perform these?

Walter Roberson
on 3 Dec 2020

δ is the Dirac delta function. dirac(x) is zero whenever x is not zero, and has a non-zero value when x is 0. Call that value D.

x[n] is defined as dirac(n-a) + 3*dirac(n) + dirac(n+a)

If we start from n = 0, and assume that a is positive, then dirac(0-a) + 3*dirac(0) + dirac(0+a) = 0 + 3*D + 0, so

x[0] = 3*D

If we assume that a is not an integer, and if we confine n to be integer, then n-a and n+a cannot be integers, and in particular cannot be 0, so if a is not an integer, x[n] would be 3*dirac(n) and for n not 0, that would be 3*0 so

x[n] = 0 if a is not an integer and n is not 0

if n is positive and a is a positive integer, then n+a would be positive, and dirac(n+a) would be 0. dirac(n) would also be 0. dirac(n-a) would be dirac(0) only for n = a. So

x[a] = D if a is a positive integer

if n is negative and a is a positive integer, then n-a would be more negative so dirac(n-a) would be 0, and dirac(n) would be 0, but dirac(n+a) would be dirac(0) at n = -a . So

x[-a] = D if a is a positive integer

By symmetry we can extend to a being negative, giving the findings that

x[a] = D if a is non-zero integer

x[-a] = D if a is a non-zero integer

So for integer a we arrive at:

0 0 0 0 0 D 0 0 0 3*D 0 0 0 D 0 0 0 0 0

-a 0 a

so zero at all but 3 locations.

Now we come to the question of what value D has. And the answer is not straight forward. is not a function as such. It does not "have" a particular value. -- that is, the value of the integral is fixed at 1, but you take narrow and narrower bounds, and with Δ approaching 0, approaches infinity . So although is not a true function, for a number of purposes it is convenient to treat it as a function that is 0 everywhere except at 0, at which point it is infinite.

With 3*infinity being 0, x[n] is "like" infinite at x = -a, x = a, and x = 0, and otherwise 0.

The fft() of anything involving infinity is either infinite or nan depending on the exact arrangement of signs and positions of the infinities. With all those 0 in there the result is pretty likely to come out as nan.

So... the fft() of the first function is all nan, and to the extent that you can say that dirac delta has a particular value, the sequence itself is all zero except that it is infinite at n = 0 and n = +/- a .

You would get a quite different result than nan if you were dealing with the Fourier Transform rather than the Discrete Time Fourier Transform: although the exactly value of is not defined, the integral is well defined (as being 1) and that is important towards finding the Fourier Transform.

Paul
on 4 Dec 2020

Based on the problem statement, I would assume that the domain is discrete time, i.e., n and a are integer indices by definition. In discrete time, the function δ[n] is not the Dirac delta function, which is defined on a continous time domain. In discrete time, δ[n] is defined as

δ[n] = 1, n = 0

δ[n] = 0, n ~= 0

If

x[n] = δ[n]

then the DTFT of x[n] is

X(ω) = 1

If

x[n] = δ[n-a]

then by the shift property

X(ω) = exp(-j*ω*a)

So the solution to part (a) should be (based on linearity):

X(ω) = exp(-j*ω*3) + 3 + exp(j*ω*3)

which is a continuous function of frequency with period 2*pi, as must be the case for a DTFT.

At least this is how I would interpret this problem.

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

Start Hunting!