Skip to main content

Signals and Time Transformations

A signal is a function that carries information through variation. In this course the independent variable is usually time, but the same ideas apply to space, sample index, or any ordered coordinate. A continuous-time signal x(t)x(t) is defined for real tt, while a discrete-time signal x[n]x[n] is defined only for integer nn. The distinction is not cosmetic: continuous-time formulas use integrals and real-valued delays, while discrete-time formulas use sums and integer shifts.

Time transformations are the first language for describing how signals move, stretch, flip, or line up with other signals. They also prepare the ground for convolution, sampling, Fourier analysis, and modulation. When a problem asks for x(2t)x(2-t) or x[3n+1]x[3n+1], it is asking how the input graph or sequence is re-indexed before values are read.

Definitions

A continuous-time signal is a mapping

x:RC,tx(t).x:\mathbb{R}\to\mathbb{C}, \qquad t\mapsto x(t).

A discrete-time signal is a mapping

x:ZC,nx[n].x:\mathbb{Z}\to\mathbb{C}, \qquad n\mapsto x[n].

Signals may be real-valued or complex-valued. A complex signal can be written as

x(t)=xR(t)+jxI(t),x(t)=x_R(t)+j x_I(t),

where j2=1j^2=-1. Its magnitude and phase are

x(t)=xR2(t)+xI2(t),x(t)=tan1xI(t)xR(t),|x(t)|=\sqrt{x_R^2(t)+x_I^2(t)}, \qquad \angle x(t)=\tan^{-1}\frac{x_I(t)}{x_R(t)},

with quadrant handled by an atan2 convention in computation.

The most common elementary continuous-time signals are:

u(t)={1,t0,0,t<0,δ(t)u(t)= \begin{cases} 1, & t\ge 0,\\ 0, & t<0, \end{cases} \qquad \delta(t)

where u(t)u(t) is the unit step and δ(t)\delta(t) is the unit impulse. The impulse is not an ordinary function; it is defined by its sifting property,

x(t)δ(tt0)dt=x(t0).\int_{-\infty}^{\infty} x(t)\delta(t-t_0)\,dt=x(t_0).

The analogous discrete-time signals are

u[n]={1,n0,0,n<0,δ[n]={1,n=0,0,n0.u[n]= \begin{cases} 1, & n\ge 0,\\ 0, & n<0, \end{cases} \qquad \delta[n]= \begin{cases} 1, & n=0,\\ 0, & n\ne 0. \end{cases}

The discrete-time impulse has the exact expansion property

x[n]=k=x[k]δ[nk].x[n]=\sum_{k=-\infty}^{\infty}x[k]\delta[n-k].

In continuous time, an analogous representation is

x(t)=x(τ)δ(tτ)dτ.x(t)=\int_{-\infty}^{\infty}x(\tau)\delta(t-\tau)\,d\tau.

These two identities are more than notation. They say that a signal can be rebuilt from shifted impulses weighted by its own values, which is the conceptual root of convolution.

A time transformation of a continuous-time signal often has the form

y(t)=x(at+b).y(t)=x(a t+b).

If a>0a\gt 0, the signal is time-scaled by 1/a1/a and shifted. If a<0a\lt 0, it is also time-reversed. To locate features, solve the equation

τ=at+b\tau=a t+b

for tt. A feature originally located at τ=τ0\tau=\tau_0 appears in y(t)y(t) at

t=τ0ba.t=\frac{\tau_0-b}{a}.

For discrete time,

y[n]=x[an+b]y[n]=x[a n+b]

is only directly meaningful at integer values of an+ba n+b. If aa and bb are integers, the expression samples the original sequence at integer indices. When a>1\vert a\vert \gt 1, values of x[k]x[k] are skipped; when a=1a=-1, the sequence is reversed; when bb changes, the sequence is shifted.

Even and odd parts are useful decompositions:

xe(t)=x(t)+x(t)2,xo(t)=x(t)x(t)2.x_e(t)=\frac{x(t)+x(-t)}{2}, \qquad x_o(t)=\frac{x(t)-x(-t)}{2}.

They satisfy

x(t)=xe(t)+xo(t),xe(t)=xe(t),xo(t)=xo(t).x(t)=x_e(t)+x_o(t), \qquad x_e(-t)=x_e(t), \qquad x_o(-t)=-x_o(t).

The same formulas hold for x[n]x[n].

Key results

The order of visual operations matters when transforming x(at+b)x(a t+b). A reliable method is to transform the independent variable, not the picture by memory. Set τ=at+b\tau=a t+b, map old feature locations τ0\tau_0 to new locations t=(τ0b)/at=(\tau_0-b)/a, and then copy the old value. This prevents the common left-right confusion caused by expressions such as x(2t)x(2-t).

The impulse scaling rule in continuous time is

δ(at)=1aδ(t),a0.\delta(a t)=\frac{1}{|a|}\delta(t), \qquad a\ne 0.

More generally, if g(t)g(t) has simple roots tit_i,

δ(g(t))=iδ(tti)g(ti).\delta(g(t))=\sum_i \frac{\delta(t-t_i)}{|g'(t_i)|}.

This rule has no direct counterpart for the discrete-time impulse, because a discrete impulse is an ordinary sequence value rather than a distribution spread over a real axis.

Step and impulse are connected by differentiation and integration:

ddtu(t)=δ(t),tδ(τ)dτ=u(t).\frac{d}{dt}u(t)=\delta(t), \qquad \int_{-\infty}^{t}\delta(\tau)\,d\tau=u(t).

In discrete time the corresponding relation is a first difference:

u[n]u[n1]=δ[n].u[n]-u[n-1]=\delta[n].

For complex exponentials, continuous-time and discrete-time signals again differ in an important way:

x(t)=est,x[n]=zn.x(t)=e^{s t}, \qquad x[n]=z^n.

Continuous-time complex exponentials have distinct frequencies for all distinct real ω\omega in ejωte^{j\omega t}. Discrete-time complex exponentials satisfy

ej(ω+2πk)n=ejωne^{j(\omega+2\pi k)n}=e^{j\omega n}

for every integer kk, so discrete-time frequency is periodic with period 2π2\pi.

Visual

OperationContinuous-time formEffect on feature at t=t0t=t_0 or n=n0n=n_0Discrete-time caution
Delayx(ttd)x(t-t_d)feature moves to t0+tdt_0+t_dx[nnd]x[n-n_d] needs integer ndn_d
Advancex(t+td)x(t+t_d)feature moves to t0tdt_0-t_dfinite stored sequences may lose samples
Reversalx(t)x(-t)feature moves to t0-t_0x[n]x[-n] reverses around n=0n=0
Scalingx(at)x(a t)feature moves to t0/at_0/ax[an]x[a n] skips samples if a>1\vert a\vert \gt 1
Affine transformx(at+b)x(a t+b)feature moves to (t0b)/a(t_0-b)/ainteger indexing is required

Worked example 1: transforming a rectangular pulse

Problem: Let

x(t)={2,1t3,0,otherwise.x(t)= \begin{cases} 2, & -1\le t\le 3,\\ 0, & \text{otherwise}. \end{cases}

Find and describe y(t)=x(2t)y(t)=x(2-t).

Method:

  1. Introduce the old variable τ=2t\tau=2-t.
  2. The nonzero part of x(τ)x(\tau) occurs when
1τ3.-1\le \tau\le 3.
  1. Substitute τ=2t\tau=2-t:
12t3.-1\le 2-t\le 3.
  1. Solve both sides carefully. From 12t-1\le 2-t,
3tt3.-3\le -t \quad \Rightarrow \quad t\le 3.

From 2t32-t\le 3,

t1t1.-t\le 1 \quad \Rightarrow \quad t\ge -1.
  1. Combine the inequalities:
1t3.-1\le t\le 3.

Therefore

y(t)={2,1t3,0,otherwise.y(t)= \begin{cases} 2, & -1\le t\le 3,\\ 0, & \text{otherwise}. \end{cases}

Check: The endpoints of the original pulse are τ=1\tau=-1 and τ=3\tau=3. They map to

t=τ21=2τ.t=\frac{\tau-2}{-1}=2-\tau.

So τ=1\tau=-1 maps to t=3t=3, and τ=3\tau=3 maps to t=1t=-1. The interval is reversed but has the same endpoints. Since the pulse is constant over that interval, the reversal is not visually obvious. A nonconstant ramp would show the flip.

Worked example 2: decomposing a sequence into shifted impulses

Problem: Write the finite sequence

x[1]=4,x[0]=2,x[2]=3,x[-1]=4,\qquad x[0]=-2,\qquad x[2]=3,

with all other samples equal to zero, as a sum of shifted impulses.

Method:

  1. Start from the discrete-time expansion
x[n]=k=x[k]δ[nk].x[n]=\sum_{k=-\infty}^{\infty}x[k]\delta[n-k].
  1. Keep only the nonzero samples:
x[n]=x[1]δ[n(1)]+x[0]δ[n0]+x[2]δ[n2].x[n]=x[-1]\delta[n-(-1)]+x[0]\delta[n-0]+x[2]\delta[n-2].
  1. Substitute the sample values:
x[n]=4δ[n+1]2δ[n]+3δ[n2].x[n]=4\delta[n+1]-2\delta[n]+3\delta[n-2].

Check each index:

  • At n=1n=-1, δ[0]=1\delta[0]=1 in the first term and the others are zero, so x[1]=4x[-1]=4.
  • At n=0n=0, the middle term gives 2-2.
  • At n=2n=2, the last term gives 33.
  • At all other integer nn, every impulse term is zero.

The answer is

x[n]=4δ[n+1]2δ[n]+3δ[n2].x[n]=4\delta[n+1]-2\delta[n]+3\delta[n-2].

Code

import numpy as np
import matplotlib.pyplot as plt

def x_ct(t):
return np.where((-1 <= t) & (t <= 3), 2.0, 0.0)

t = np.linspace(-4, 6, 1001)
y = x_ct(2 - t)

n = np.arange(-4, 5)
x_dt = np.zeros_like(n, dtype=float)
x_dt[n == -1] = 4
x_dt[n == 0] = -2
x_dt[n == 2] = 3

fig, ax = plt.subplots(1, 2, figsize=(10, 3))
ax[0].plot(t, y)
ax[0].set_title("y(t)=x(2-t)")
ax[0].grid(True)

ax[1].stem(n, x_dt)
ax[1].set_title("Discrete impulse expansion samples")
ax[1].grid(True)
plt.tight_layout()
plt.show()

Common pitfalls

  • Shifting in the wrong direction. x(tt0)x(t-t_0) is delayed by t0t_0, while x(t+t0)x(t+t_0) is advanced by t0t_0.
  • Reversing before locating the new origin. For x(at+b)x(a t+b), solve τ=at+b\tau=a t+b rather than relying on a memorized picture operation.
  • Treating δ(t)\delta(t) as a tall narrow ordinary function in algebra. The continuous-time impulse is defined by integration behavior.
  • Forgetting that x[2n]x[2n] is not a compressed version containing every sample. It reads only even-indexed samples of x[n]x[n].
  • Assuming discrete-time frequencies are unique. Frequencies separated by 2π2\pi produce the same sequence.

Connections