of 42 /42
Fourier series of periodic discrete-time signals 1
• Author

vankhanh
• Category

## Documents

• view

216

0

Embed Size (px)

### Transcript of Fourier series of periodic discrete-time signals ALGORITHM FOR SOLUTION: Fast Fourier Transform...

• Fourier series of periodic discrete-time signals

1

• Discrete-time signal x(n):

Defined for integer time instants n:

{x(n)} = {. . . , x(2), x(1), x(0), x(1), x(2), . . .}

2

• In analogy with continuous-time signals, discrete-

time signals can be expanded in terms of sinusoidal

components of form Ak cos(kn+ k)

2 0 2 4 6 8 10 12

1

0

1

cos(2fn+ ), f = 0.1(Hz), = 2f 2(rad)

3

• Consider a periodic discrete-time signal with period

N :

x(n) = x(n+N), all n

4

• In analogy with continuous-time case the discrete

sinusoidal signals

cos(2k

Nn), sin(

2k

Nn), k = 0, 1, 2, . . .

have period N .

It follows that an N -periodic signal {x(n)} can beexpanded in terms of sinusoidal signals

cos(2k

Nn), sin(

2k

Nn), k = 0, 1, 2, . . .

5

• Important difference compared to continuous-time case:

We have

cos(n) = cos(n + 2nl)

= cos (n( + 2l)), all integers l

=Frequencies and + 2l give the same discrete-

time sequence

NOTE: works only because time n is an integer!

6

• Hence we need only include frequency components

cos(21

Nn), cos(2

2

Nn), . . . , cos(2

N 1N

n)

sin(21

Nn), sin(2

2

Nn), . . . , sin(2

N 1N

n)

and we obtain the Fourier series

x(n) = a0 +

N1k=1

ak cos(k2

Nn) +

N1k=1

bk sin(k2

Nn)

7

• As before, we can express each frequency component

in terms of complex exponentials:

x(n) =N1

k=N+1

ckej2kn/N

As time n is an integer we can eliminate the negative

exponentials:

ej2(m)n/N = ej2(m)n/N+j2n = ej2(Nm)n/N

=

Terms with k = m < 0 can be replaced by a termwith k = N m > 0

8

• NOTE:

As ck = ck, we have

ckej2(k)n/N = cke

j2(Nk)n/N

Fourier series of discrete-time periodic signal

An N -periodic discrete-time signal can be expanded

as

x(n) =

N1k=0

dkej2kn/N

where dNk = dk

9

• Here the complex-valued frequency components are

given by

dk =1

N

N1n=0

x(n)ej2kn/N

Proof:

Multiply expression for x(n) with ej2mn/N and sum

over time n over one period:

1

N

N1n=0

[ej2mn/N

(x(n) =

N1k=0

dkej2kn/N

)]10

• Here the right-hand side becomes

1

N

N1k=0

dk

N1n=0

ej2(km)n/N

which vanishes if m = k, because

N1n=0

ej2(km)n/N =

{N, if k m = 0,N,2N, . . .0, otherwise

Hence

1

N

N1k=0

dk

N1n=0

ej2(km)n/N = dm

11

• and1

N

N1n=0

x(n)ej2mn/N = dm

giving the result

12

• EXAMPLE: Periodic discrete-time square wave with periodN = 4:

x(0) = 1

x(1) = 1

x(2) = 0

x(3) = 1-5 -4 -3 -2 -1 0 1 2 3 4 5

x(n)

n

and x(n) = x(n 4), all nFrequency components: 0, 24 ,

224 ,

234

(Next frequency 244 = 2 is equivalent to frequency

component 0)

13

• Fourier series:

dk =1

4

3n=0

x(n)ej2kn/4

=1

4

[1 ej2k0/4 + 1 ej2k1/4 + 0 + 1 ej2k3/4

]=

1

4

[1 + ejk/2 + ejk3/2

]=

1

4[1 + 2 cos (k/2)]

=d0 =

3

4, d1 =

1

4, d2 =

1

4, d3 =

1

4

0 2/2

3/2

dk

14

• Hence

x(n) =3

k=0

dkej2kn/4

=3

4+

1

4ej21n/4 1

4ej22n/4 +

1

4ej23n/4

=3

4+

1

4[cos (n/2) + j sin (n/2)]

14[cos (n) + j sin (n)] +

1

4[cos (3n/2) + j sin (3n/2)]

Note that as x(n) is real the imaginary components should

vanish

15

• Here we have:

- sin(n) = 0

- cos(n) = (1)n

In addition, frequency components 3/2 and /2 are related,

because

- sin(3n/2)=sin(3n/22n)=sin(n/2)= sin(n/2),and

- cos(3n/2)=cos(3n/2 2n)=cos(n/2)=cos(n/2)

=

x(n) =3

4+

1

2cos

(2

4n

) 1

4(1)n

16

• NOTE:

In above example the Fourier series coefficients dk were real.

Reason: Recall that

ak cos(2kn/N)+bk sin(2kn/N) = ckej2kn/N+cke

j2kn/N

where

ck =1

2(ak jbk) , ck =

1

2(ak + jbk)

As x(n) is even, x(n) = x(n), the sine-terms vanish so thatbk = 0 and hence ck and dk are real.

17

• Next example illustrates a signal which is not even.

Consider the periodic signal

x(0) = 1

x(1) = 1

x(2) = 1

x(3) = 0

and x(n) = x(n 4), all n

We see that x(n) = x(n 1), all n.

18

• Hence

x(n) = x(n 1)

=3

k=0

dkej2k(n1)/4

=3

k=0

dkej2k/4ej2kn/4

=

3k=0

dkej2kn/4

where

dk = dkej2k/4

19

• or

d0 = d0ej0 =

3

4

d1 = d1ej/2 =

1

4 (j)

d2 = d2ej = 1

4 (1)

d3 = d3ej3/2 =

1

4 j

20

• Fourier series of non-periodic discrete-timesignals

In analogy with the continuous-time case a non-periodic

discrete-time signal consists of a continuum of frequencies

(rather than a discrete set of frequencies)

But recall that

cos(n) = cos(n + 2nl)

= cos (n( + 2l)), all integers l

=Only frequencies up to 2 make sense

21

• Hence a discrete-time signal {x(n)} can be expanded as

x(n) =1

2

20

X()ejnd

where it can be shown that the Fourier transform X() is given

by

X() =

n=

x(n)ejn

22

• THE DISCRETE FOURIER TRANSFORM (DFT)

Next lets introduce the standard definition of the discrete

Fourier transform of a sequence

{x(0), x(1), . . . , x(N 1)}

of finite length N .

We do not make any assumptions about the signal (periodicity

etc) outside the range 0 n N 1.

23

• Facts:

- from N signal values x(0), x(1), . . . , x(N 1) at most Nindependent frequency components can be computed

- frequency components 2 are redundant (identical withfrequencies < 2

- lower bound on frequency resolution is 2/N (= frequency

corresponding to period length equal to sequence length N)

Hence it makes sense to determine the frequency components

at the N equidistant frequencies

0,1

N2,

2

N2, . . . ,

N 1N

2

i.e., the same frequencies contained in an N -periodic signal

24

• DISCRETE FOURIER TRANSFORM (DFT):

The DFT {X(k)}N1k=0 of a sequence {x(k)}N1k=0 is

defined as

X(k) =

N1n=0

x(n)ej2kNn, k = 0, 1, . . . , N1 (DFT)

and the inverse DFT (IDFT) is given by

x(n) =1

N

N1k=0

X(k)ej2kNn, n = 0, 1, . . . , N 1

Observe similarity with Fourier transform of periodic

signal

25

• EXAMPLE

Show that the Discrete Fourier Transform of the

sequence

{x(n)} = {1, 0, 0, 1}

is given by

{X(k)} = {2, 1 + j, 0, 1 j}

26

• PROPERTIES OF DFT

Symmetry property.For a real sequence {x(n)}, the DFT satisfies

X(N k) = X(k) (complex conjugate)

i.e.,

Re[X(N k)] =Re[X(k)]Im[X(N k)] =Im[X(k)], k = 1, . . . , N 1

27

• Follows from the fact that in the definition of X(N k),

x(n)ej2NkN n = x(n)ej2

kNnj2

= x(n)ej2kNn

=(x(n)ej2

kNn)

DC component.For k = 0 we have

X(0)=

N1n=0

x(n)ej20Nn

=x(0) + x(1) + + x(N 1)

Hence X(0) is real if x(n) are real and the

28

• contribution of X(0) to x(n) is

1

NX(0)e0 =

1

NX(0)

i.e., a constant component (usually called the DC

component).

Oscillating component.For even values of N , we have for k = N/2

X(N/2) =

N1n=0

x(n)ej2N/2N n =

N1n=0

x(n)ejn

= x(0) x(1) + x(N 1)

Hence X(N/2) is real if x(n) are real and the

29

• contribution of X(N/2) to x(n) is

1

NX(N/2)ej2

N/2N n =

1

NX(N/2) (1)n

i.e., an oscillating component.

Parsevals relation.The energy of the signal {x(n)} defined as

Px =

N1n=0

x(n)2

can be computed in the frequency domain using

30

• Parsevals relation,

Px =N1n=0

x(n)2 =1

N

N1k=0

|X(k)|2

It follows that 1N |X(k)|2 can be interpreted as the

contribution to the total energy of the signal from

frequency component 2k/N .

Note: important in signal compression!

DFT of a function.The function,

(n) =

{1, n = 0

0, n = 031

• has DFT X(k) = 1, k = 0, 1, . . . , N 1.Hence it consists of equal amounts of all

frequencies!

32

• DIRECT COMPUTATION OF DFT SUM ISNOT ADVISABLE IN PRACTICE:

- HIGH COMPUTATIONAL BURDEN:

Computation of sequence X(k) requires N 2

complex additions and multiplications (a lot for

long sequences)

- Numerical round-off errors add up when evaluation

long sum

33

• EFFICIENT ALGORITHM FOR SOLUTION:Fast Fourier Transform (FFT)

- FFT: N log2N complex additions and

(N/2) log2N complex multiplications (compare

N 2 using direct evaluation)

- Each element X(k) is obtained by only log2N

complex additions (compare with N using direct

evaluation) significantly smaller round-off errors

MATLAB routines:

- X=fft(x) (Fourier transform)

- x=ifft(X) (inverse Fourier transform)

34

• FFT uses the fact that the discrete Fourier transformX(k) of a sequence {x(0), x(1), . . . , x(N 1)} withN even can be determined as

X(k) = X11(k) +WkNX12(k), k = 0, 1, . . . , N/2 1

X(k +N/2) = X11(k)W kNX12(k), k = 0, 1, . . . , N/2 1

where WN = ej2/N ,

{X11(k)} is the Fourier transform of the evensubsequence {x(0), x(2), . . . , x(N 2)}, andX12(k)} is the Fourier transform of the oddsubsequence {x(1), x(3), . . . , x(N 1)}.

35

• Example (N = 8):

X(k) =7

n=0

x(n)ej2kn/8

= x(0) + x(2)ej2k2/8

+ x(4)ej2k4/8

+ x(6)ej2k6/8

+x(1)ej2k/8

+ x(3)ej2k3/8

+ x(5)ej2k5/8

+ x(7)ej2k7/8

= x(0) + x(2)ej2k/4

+ x(4)ej2k2/4

+ x(6)ej2k3/4

+ej2k/8

(x(1) + x(3)e

j2k/4+ x(5)e

j2k2/4+ x(7)e

j2k3/4)

=

3n=0

x(2n)ej2kn/4

+ ej2k/8

3n=0

x(2n + 1)ej2kn/4

= X11(k) + Wk8 X12(k), k = 0, 1, 2, 3

where W8 = ej2/8, and

{X11(k)} = DFT ({x(0), x(2), x(4), x(6)})

{X12(k)} = DFT ({x(1), x(3), x(5), x(7)})

36

• X11(k), X12(k) are defined for k = 0, 1, 2, 3. The latter half of X(k) is obtained from

X(k + 4) =

7n=0

x(n)ej2(k+4)n/8

= x(0) + x(2)ej2(k+4)2/8

+ x(4)ej2(k+4)4/8

+ x(6)ej2(k+4)6/8

+x(1)ej2(k+4)/8

+ x(3)ej2(k+4)3/8

+ x(5)ej2(k+4)5/8

+ x(7)ej2(k+4)7/8

= x(0) + x(2)ej2(k/4+1)

+ x(4)ej2(2k/4+2)

+ x(6)ej2(3k/4+3)

+ej2(k/8+1/2)

(x(1) + x(3)e

j2(k/4+1)+ x(5)e

j2(2k/4+2)+ x(7)e

j2(3k/4+3))

= x(0) + x(2)ej2k/4

+ x(4)ej22k/4

+ x(6)ej23k/4

+ej2k/8

ej

(x(1) + x(3)e

j2k/4+ x(5)e

j22k/4+ x(7)e

j23k/4)

=

3n=0

x(2n)ej2kn/4 ej2k/8

3n=0

x(2n + 1)ej2kn/4

= X11(k) W k8 X12(k), k = 0, 1, 2, 3

where we have used ej = cos() + j sin() = 1.

37

• The operation

X(k) = X11(k) + WkNX12(k), k = 0, 1, . . . , N/2 1

X(k + N/2) = X11(k) W kNX12(k), k = 0, 1, . . . , N/2 1

is known as the Butterly operation:

&%'\$

3

QQQQ

QQQs

3

QQQQ

QQQs

X11(k)

X12(k)

X(k)

X(k + N/2)

+

WkN

The Discrete Fourier Transform is thus constructed by combining the transform two shorter

sequences of lengths N/2, N/4, . . . , 2, 1, starting with sequences of length 1.

38

• Total number of operations:

- sequence of length N = 2B can be decomposed B = log2 N times.

- each stage requires N/2 Butterfly operations.

- Butterfly operations takes 2 complex additions and 1 complex multiplication.

=Total number of complex additions = N log2 N

Total number of complex multiplications = (N/2) log2 N

39

• INTERPRETATION OF FOURIER TRANSFORMCOMPONENTS

0

X(0)

X(1)

1

X(k)

k

X(N/2)

N/2

X(N-k)=X(k)

N-k

X(N-1)=X(1)

N-1 N

Normalized frequency 0 1NkN

12

NkN

N1N 1

(Hz)

Actual frequency

Sampling frequency fs = 1/Ts0 1N

fskN

fs12fs

NkN

fsN1N

fs fs (Hz)

Matlab indexing X(1) X(2) X(k+1) X(N/2+1) X(N-k+1) X(N)

40

• To observe:

The frequency component X(k) corresponds to the frequency 2k/N (radians/s)or k/N (Hz) when the sampling frequency is normalized to 1 sample/s. If the

actual sampling frequency is fs (samples/s or Hz), X(k) corresponds to the frequency

(k/N)fs Hz.

Highest frequency of which information can be obtained = half of sampling frequency= fs/2

Frequency resolution = fs/N , i.e., increasing sequence length N gives increasedresolution

Magnitude and phase information from:N/2 + 1 frequency components 0, 1/N, . . . , 1/2 (for even N),

(N + 1)/2 frequency components 0, 1/N, . . . , 12(N 1)/N (for odd N)

X(0) is real-valued; describes DC component (zero frequency)

1

NX(0) cos(2 0 n) =

1

NX(0)

41

• X(N/2) is real-valued; describes oscillating component (normalized frequency 1/2)

1

NX(N/2) cos(2 (1/2) n) = (1)n

1

NX(N/2)

Frequency components X(1), . . . , X(N/2 1) usually complex-valued.- X(1) describes sinusoidal component with period N samples

- X(2) describes sinusoidal component with period N/2 samples, etc.

42