F.4  Energy spectral density (ESD)

To understand the ESD definition, it is useful to recall the Parseval’s Theorem 3 for block transforms in Section D.4.5. This theorem can be extended to continuous and discrete-time signals.

For continuous-time signals, the energy can be obtained in time-domain according to Eq. (C.22) or, equivalently, in frequency-domain as

E =−∞|x(t)|2dt =−∞|X(f)|2df,
(F.15)

which is a version of Parseval’s Theorem.

Eq. (F.15) suggests defining

G(f) = |X(f)|2
(F.16)

as the ESD in continuous-time. Therefore, G(f) describes how the signal energy E is spread over frequency and its integral is the energy E. The adopted unit for the ESD is joules/Hz.

Note that, while |x(t)|2 represents the instantaneous power in time-domain, in frequency-domain, |X(f)|2 represents the ESD.

Example F.5. ESD of a real-valued exponential. Consider the energy signal x(t) = e−atu(t) in volts, where a = 0.9. Its Fourier transform is X(f) = 1∕(j2πf + a) and the ESD in joules/Hz is

G(f) = |X(f)|2 = 1 (2πf)2 + a2.

The signal energy is E =−∞|x(t)|2dt =−∞G(f)df ≈ 0.55556. Listing F.6 illustrates how E can be estimated in time-domain and also using G(f). In this case, the range ] −∞,∞[ is simulated as [0,30] s and [−1000,1000] Hz in time and frequency-domain, respectively.

Listing F.6: MatlabOctaveCodeSnippets/snip_frequency_exp_esd.m
1%% Generate time-domain signal 
2Ts=0.0001; %defines resolution in time 
3t=0:Ts:30; %time axis 
4a=0.9; %constant 
5x=exp(-a*t); %signal 
6subplot(211), plot(t,x) 
7xlabel('t (s)'); ylabel('x(t) amplitude') 
8%% Generate ESD 
9f=linspace(-2,2,1000); %frequency axis 
10Gf= 1 ./ ((2*pi*f).^2 + a^2); %ESD 
11subplot(212) 
12plot(t,x), plot(f,Gf) 
13xlabel('f (Hz)'); ylabel('ESD (J/Hz)') 
14%% Confirm Parseval theorem 
15energy_equation = 1/(2*a); %theoretical 
16energy_time = sum(abs(x).^2)*Ts; %integration 
17df=0.0001; %defines resolution in frequency 
18min_f = -1000; %range of interest 
19max_f = 1000; 
20f=min_f:df:max_f; %frequency axis 
21Gf= 1 ./ ((2*pi*f).^2 + a^2); %recalculate ESD 
22energy_frequency = sum(Gf)*df; %integration 
23disp(['Theoretical energy =' num2str(energy_equation) ' Joules']) 
24disp(['Integration in time =' num2str(energy_time) ' Joules']) 
25disp(['Integration in frequency =' num2str(energy_frequency) ' J']) 
26%% Energy in given frequency band 
27min_f = 0.2; max_f = 1; %range of interest 
28f=min_f:df:max_f; %new frequency axis 
29Gf= 1 ./ ((2*pi*f).^2 + a^2); %recalculate ESD 
30energy_band = 2*sum(Gf)*df; %integration using 2 times 
31disp(['Energy in band =' num2str(energy_band) ' Joules'])

Listing F.6 also illustrates how G(f) can be conveniently used to estimate the energy within a given frequency band. In this example, the energy within the range from 0.2 to 1 Hz, considering both negative and positive frequencies, is Er = 20.21G(f)df ≈ 0.16954 J.    

Example F.6. ESD of a sinc in time-domain. Now consider the energy signal is x(t) = 400sinc(100t) in volts. According to Eq. (A.52), one needs to consider that 2F = 100, such that F = 50 Hz. With this assumption, Eq. (A.52) can be used together with the linearity property of the Fourier transform. The linearity takes care of a factor of 4 that multiplies Eq. (A.52), such that one has X(f) = 4 for |f|≤ 50 Hz and 0 otherwise. Hence, the ESD of x(t) is G(f) = 16 for |f|≤ 50 Hz and 0 otherwise. In this case, using the ESD instead of x(t), it is easy to conclude that the total signal energy is E = 16 × 100 = 1600 joules.    

F.4.1  ESD of discrete-time signals

The ESD in discrete-time is defined as

G(ejΩ) = |X(ejΩ)|2.
(F.17)

Similar to Eq. (F.19), G(ejΩ) needs to be normalized by the factor to be interpreted as G(ejΩ)∕(2π) in units of joules per radians. Using this definition, one can properly interpret a version of the Parseval’s theorem in discrete-time:

E =n=−∞|x[n]|2 = 1 <2π>|X(ejΩ)|2dΩ.
(F.18)

Example F.7. ESD of a discrete-time sinc. Consider the discrete-time, non-periodic and finite-energy signal

x[n] = 20sinc ( n 10 )

in volts. From Eq. (A.54), its DTFT is known to be:

X(ejΩ) = 200⋅rect (5Ω π ) = { 200,|Ω|≤ 0.1π

The corresponding ESD is given by

G(ejΩ) = |X(ejΩ)|2 = { 40000,|Ω|≤ 0.1π

Using Parseval’s Theorem for discrete-time signals, the total signal energy can be computed as

E = 1 −ππG(ejΩ)dΩ = 1 −0.1π0.1π40000dΩ = 1 ⋅ 40000 ⋅ 0.2π = 4000

Thus, the total energy of the signal is E = 4000 joules.   

F.4.2  Advanced: Different definitions of ESD and their units

In continuous-time spectral analysis, the linear frequency in Hertz is more convenient and angular frequencies are seldom adopted. But this is not an option in discrete-time processing, given that Ω is an angle (assumed in radians) and does not have a counterpart in Hertz. Hence, in spite of being more convenient in continuous-time signal processing to adopt G(f) (using Hz), it is useful to discuss G(ω) (using rad/s) in continuous-time to facilitate interpreting G(ejΩ) (using rad) in discrete-time processing.

F.4.3  Units of ESD when angular frequencies are adopted

Similar to the discussion in Section D.5.4 regarding the Fourier transform X(ω) with ω in rad/s, there is a subtle issue when using radians per second instead of Hertz for the ESD. In this case, the factor needs to be taken in account such that G(ω)∕(2π) = |X(ω)|2∕(2π) has the unit of joules/(rad/s). In other words, while G(f) has the unit of joules/Hz, it is not strictly correct to state that G(ω) has the unit of joules/(rad/s). Only after the normalization by , one has G(ω)∕(2π) with the unit of joules/(rad/s).

The energy over a band of frequencies specified in rad/s can then be calculated by integrating |X(ω)|2∕(2π) over this band. For instance, considering a band ω ∈ [−∞,∞] the energy E is:

E =−∞|x(t)|2dt = 1 −∞|X(ω)|2dω = 1 −∞G(ω)dω,
(F.19)

where G(ω) = G(2πf) and the unit of G(ω)∕(2π) is joules/(rad/s).

Example F.8. The unit of G(ω)∕(2π) is joules/(rad/s). For instance, take the sinc signal of Example F.6, which has a flat ESD given by G(f) = 16 J/Hz within the range [−50,50] Hz and zero otherwise. The representation G(ω) of this ESD in rad/s has the same constant value G(ω) = 16 but now over the range [−100π,100π] rad/s. The value G(ω)∕(2π) = 16∕(2π) can be interpreted as a density in J/(rad/s). Within the range [−100π,100π], one has (16∕(2π)) × 200π = 1600 J.   

Table F.2 summarizes the discussed ESD functions.

Table F.2: ESD functions. E is the total energy and the column “Ind. var” (independent variable) indicates the units and symbols used for the independent variable of each function. The units of G(f), G(ω)∕(2π) and G(ejΩ)∕(2π) are J/Hz, J/(rad/s) and J/rad, respectively.
Time Ind. var. ESD definition ESD main property
Continuous-time f (Hz) G(f) = |X(f)|2 E =−∞G(f)df
Continuous-time ω (rad/s) G(ω) = |X(ω)|2 E = 1 −∞G(ω)dω
Discrete-time Ω (rad) G(ejΩ) = |X(ejΩ)|2 E = 1 <2π>G(ejΩ)dΩ