Energy & Spectra (same on every page in this path)
1. Power & energy (you are here) → 2. Parseval → 3. RMS value
Tools: Parseval demo · Window demo
In one sentence: Energy signals have finite $latex \int|x|^2$; power signals have finite average power — pick the right definition before you normalize a BER or PSD sim.
Matlab/Python simulation: Compute energy/power on sampled vectors, then connect to RMS and Parseval checks in the Energy & Spectra path.
Search traffic for “power of a signal” and “energy of a signal” wants the formulas, the energy-vs-power classification, and a quick way to compute them. That is what follows.
Why not “area under the curve”?
In DSP we treat a signal as a function of time and ask for its size (strength). Signed area under $latex x(t)$ can cancel. Absolute area works but is awkward analytically. Squared magnitude $latex |x|^2$ matches an $latex L_2$ (Euclidean) notion of size used throughout detection and estimation — so that is the standard choice.
Energy of a signal
For a continuous-time complex signal,
\[E_x = \int_{-\infty}^{\infty} |x(t)|^2\,dt\]If $latex x$ is real, $latex |x(t)|^2=x(t)^2$. This “energy” is a signal-processing measure of strength. When $latex x$ is a voltage across a $latex 1\,\Omega$ resistor it coincides with physical energy in joules; otherwise scale by the load (below).
Physical energy into a load $latex Z$
Voltage signal into impedance $latex Z$:
\[E = \frac{E_x}{Z} = \frac{1}{Z}\int_{-\infty}^{\infty} |x(t)|^2\,dt\]Current signal into the same load:
\[E = Z\,E_x = Z\int_{-\infty}^{\infty} |x(t)|^2\,dt\]Discrete-time energy
\[E_x = \sum_{n=-\infty}^{\infty} |x[n]|^2\]The sum must converge: the sequence is square-summable. That is a finite-energy (energy) signal. An everlasting sinusoid is not square-summable — its energy is infinite — so we switch to power.
Power of a signal
Power is energy per unit time. For signals whose total energy diverges, take a long window, compute energy inside it, divide by the window length, then let the window grow:
\[P_x = \lim_{N\to\infty}\frac{1}{2N+1}\sum_{n=-N}^{N}|x[n]|^2\]Equivalent textbook forms (different indexing of the same average):
\[\begin{aligned} P_x &= \lim_{N\to\infty}\frac{1}{2N}\sum_{n=-N}^{N-1}|x[n]|^2 \\ P_x &= \lim_{N\to\infty}\frac{1}{N}\sum_{n=0}^{N-1}|x[n]|^2 \\ P_x &= \lim_{N\to\infty}\frac{1}{N_1-N_0+1}\sum_{n=N_0}^{N_1}|x[n]|^2 \end{aligned}\]In continuous time the same idea is $latex P_x=\lim_{T\to\infty}\frac{1}{2T}\int_{-T}^{T}|x(t)|^2\,dt$. For a real cosine $latex A\cos(\omega t+\phi)$, $latex P_x=A^2/2$.
Energy signal vs power signal

- Energy signal: $latex 0 < E_x < \infty$. Then $latex P_x=0$ (finite energy diluted over infinite time).
- Power signal: $latex 0 < P_x < \infty$. Then $latex E_x=\infty$ (e.g. periodic sinusoids, everlasting DC).
- Neither: both diverge — e.g. $latex x[n]=n$.
- Never both: finite nonzero energy and finite nonzero power cannot hold together under these definitions.
Python: energy of a pulse, power of a sine
import numpy as np
# --- Energy of a finite exponential pulse ---
n = np.arange(0, 200)
x_pulse = np.exp(-0.05 * n)
E = np.sum(np.abs(x_pulse) ** 2)
print(f"Pulse energy E_x ≈ {E:.4f} (finite)")
# --- Power of a cosine (use a long window) ---
A, N = 1.0, 100_000
n = np.arange(N)
x_cos = A * np.cos(2 * np.pi * 0.01 * n)
P = np.mean(np.abs(x_cos) ** 2)
print(f"Cosine power P_x ≈ {P:.6f} (theory A²/2 = {A**2/2})")
Step-by-step Matlab verification of the power formulas: Computation of power of a signal in Matlab. For random noise, see simulation and analysis of white noise.
FAQ
What is the difference between signal energy and average power? Energy is the integral (or sum) of $latex |x|^2$ over the whole support of a finite-energy signal. Average power is that energy divided by the observation length (or the limit of the same ratio for perpetual power signals). A finite pulse has finite energy and zero average power over infinite time; a never-ending sinusoid has finite average power and infinite energy.
How does Parseval relate to these definitions? Parseval’s theorem says you can compute the same energy (or average power, with consistent scaling) from the time waveform or from the spectrum. That is why window energy $latex \sum w^2$ appears in ENBW formulas — it is the frequency-domain noise bandwidth written in time-domain samples.
Which definition should I use in a Matlab/Python simulation? Match the definition to the question: use a sum of $|x[n]|^2$ for energy of a recorded block, divide by $latex N$ (or by $latex N/f_s$ if you want physical watts for a given impedance) for average power, and document whether your FFT is unitary so Parseval checks line up.
Reference
[1] Sanjay Lall, “Norm and Vector spaces,” Information Systems Laboratory, Stanford University.
So the finite energy signal’s power is Zero. I also refered http://cnx.org/content/m10055/latest/
Could you please explain why we calculate power relations in Amplitude Modulation ? AM wave is finite wave right? then its power should be zero. I know I am missing something, please correct me.
Energy signal is limited in time – bounding signal in time – example: rectangular pulse of finite duration.
On the otherhand, power signals are NOT limited in time – example sinusoid.
On the similar lines, an Amplitude modulated wave is a type of sinusoidal wave. When we write AM wave equation we simply write m(t)cos(2*pi*fc*t)
There is no time limit implied in this equation. Thus it is a qualifier for power signal and NOT an energy signal.
Suppose, if I define the same equation with a bound on time, m(t)cos(2*pi*fc*t) ; where t is between 0 and t0 – this makes the signal finite and therefore, this is NOT a power signal.
Energy signal has finite energy and zero power.Then the voltage generated by lightning is of short duration having finite energy but it has also large power.Is it right??please correct me if i m wrong
After the first formula is introduced, it states, that:
“If the signal x(t) is real, the modulus operator in the above equation does not matter.”
However, there is no modulus operator in the equation at all!
And second, how do I find the “load of a signal” so that I can convert to the real physical correspondent Energy?
For example, I’m currently working with accelerometer signals, so I measure in [g], or in [ms^-2]. Can someone tell me what the factor Z is in these cases?
Overall, thanks for the tutorial, it was very comprehensive!
Here, the modulus operator represents -‘absolute value’. It is indicated by |.| sign
If ‘x’ is complex, defined as xReal+j xImag, then |x| = sqrt(xReal^2 + xImag^2).
I am not sure about the accelerometer signal. But, in electrical engineering terms, usually the load is defined as the impedance that is driven by a source.
Thanks for the explanation, gives a general clue! I’ve got a question: is the even part of Ex (the energy function of a given x(t) signal) equal to Ex itself? The Ex even is 1/2 (int from -inf to inf |x(t)|^2 dt+ int from -inf to inf |x(-t)^2| dt) I believe that the integral from -inf to inf of |x(t)|^2 dt is equal to the integral from -inf to inf of |x(-t)|^2 dt for any given x(t). Thus making the Ex even = Ex, and Ex odd=0. Thanks!
Why do we take 1/2N+1 in discrete time power signal?
Summation takes samples from -N to +N indices, which is 2N+1 samples in total.
WHY IS THE ENERGY OF POWER SIGNAL INFINITE?
By definition, energy is the area under the squared signal. For power signal, example: periodic signals, the signal does not decay fast enough, hence the total area under the squared power signal will be infinite.