요약

단위 계단은 스위치를 켜는 순간이다. 0이던 값이 \(t = 0\)에 1로 올라가 그대로 머문다. 단위 임펄스는 그 스위치를 켜는 “순간의 충격” 하나다. 폭은 0이고 넓이는 1인 아주 뾰족한 바늘이라, 계단을 미분하면 임펄스가 나오고 임펄스를 쌓아 올리면(누적하면) 계단이 된다. 신호에 임펄스를 곱하면 그 한 순간의 값만 뽑혀 나온다. 연속 시간 임펄스는 보통의 함수가 아니라 넓이만 의미가 있는 극한이므로, 높이를 묻거나 곱하기 둘을 하면 안 된다.

예시로 보기

이산 시간에서 둘의 관계는 간단하다.

\(n\) \(\cdots\) \(-2\) \(-1\) \(0\) \(1\) \(2\) \(\cdots\)
\(\delta[n]\) 0 0 0 1 0 0 0
\(u[n]\) 0 0 0 1 1 1 1
\(u[n] - u[n-1]\) 0 0 0 1 0 0 0

계단에서 한 칸 늦은 계단을 빼면, 값이 바뀌는 \(n = 0\)에서만 1이 남는다. 그것이 임펄스다. 거꾸로 임펄스를 왼쪽 끝부터 \(n\)까지 더해 가면 \(n < 0\)에서는 아직 1을 만나지 못해 0이고, \(n \ge 0\)에서는 1을 한 번 만나 1이다. 그것이 계단이다.

정의

이산 시간

\[\delta[n] = \begin{cases}0 & n \neq 0\\ 1 & n = 0\end{cases}, \qquad u[n] = \begin{cases}0 & n < 0\\ 1 & n \ge 0\end{cases}\]

단위 임펄스는 단위 샘플이라고도 부른다. 두 신호는 서로 바꿔 쓸 수 있다.

  • 첫 번째 차: \(\delta[n] = u[n] - u[n-1]\)
  • 누적 합: \(u[n] = \sum_{m=-\infty}^{n}\delta[m]\)
  • 합 변수를 \(k = n - m\)으로 바꾸면 \(u[n] = \sum_{k=0}^{\infty}\delta[n - k]\). 계단은 \(0, 1, 2, \dots\)칸 늦춘 임펄스들을 겹쳐 쌓은 것이다. 예: \(u[2] = \delta[2-0] + \delta[2-1] + \delta[2-2] + \cdots\)에서 \(\delta[0]\)인 셋째 항만 1이다.

표본화 성질. 신호에 \(\delta[n - n_0]\)을 곱하면 \(n = n_0\)의 값만 남는다.

\[x[n]\,\delta[n - n_0] = x[n_0]\,\delta[n - n_0]\]

연속 시간

\[u(t) = \begin{cases}0 & t < 0\\ 1 & t > 0\end{cases}\]

\(u(t)\)는 \(t = 0\)에서 끊겨 원래는 미분할 수 없다. 그래서 \(\Delta\)라는 짧은 시간 동안 0에서 1로 곧게 오르는 \(u_\Delta(t)\)로 바꿔 생각한다.

  1. \(u_\Delta(t)\)를 미분한 \(\delta_\Delta(t) = \dfrac{du_\Delta(t)}{dt}\)는 폭 \(\Delta\), 높이 \(\dfrac1\Delta\)인 짧은 펄스다. 넓이는 늘 \(1\)이다.
  2. \(\Delta \to 0\)이면 폭은 0으로, 높이는 무한대로 가지만 넓이는 1 그대로다. 이 극한을 단위 임펄스 \(\delta(t) = \lim_{\Delta\to0}\delta_\Delta(t)\)라 한다.
  3. 그래서 \(\delta(t) = \dfrac{du(t)}{dt}\), \(u(t) = \displaystyle\int_{-\infty}^{t}\delta(\tau)\,d\tau\)다.

그림

\(\Delta\)를 1, 0.5, 0.25로 줄이면 \(u_\Delta\)는 점점 가파른 계단이 되고, \(\delta_\Delta\)는 좁고 높아지지만 색칠한 넓이는 늘 1이다1.

그림에서는 화살표로 그리고, 화살표 옆의 숫자는 높이가 아니라 넓이다. \(k\delta(t)\)는 넓이 \(k\)인 임펄스이고 \(\int_{-\infty}^{t}k\delta(\tau)d\tau = ku(t)\)다. 적분 변수를 \(\sigma = t - \tau\)로 바꾸면 \(u(t) = \int_0^\infty\delta(t - \sigma)\,d\sigma\)로, 이산 시간의 “늦춘 임펄스들의 합”과 같은 모양이 된다.

표본화 성질. \(\Delta\)가 아주 작으면 그 짧은 구간에서 \(x(t)\)는 거의 상수 \(x(0)\)이다. 그래서 \(x(t)\delta_\Delta(t) \approx x(0)\delta_\Delta(t)\)이고, 극한에서 등호가 된다.

\[x(t)\,\delta(t - t_0) = x(t_0)\,\delta(t - t_0), \qquad \int_{-\infty}^{\infty}x(t)\,\delta(t - \sigma)\,dt = x(\sigma)\]

두 번째 식은 첫 식을 적분하고 임펄스의 넓이가 1임을 쓴 것이다. 이 성질은 \(x\)가 \(t_0\)에서 연속일 때 맞다2.

스스로 설명해 보기

1. \(u[n] = \sum_{k=0}^{\infty}\delta[n - k]\)다.

\(\delta[n - k]\)는 \(k = n\)일 때만 1이다. \(n \ge 0\)이면 그런 \(k\)가 합의 범위 \(0, 1, 2, \dots\) 안에 꼭 하나 있어 합이 1, \(n < 0\)이면 없어서 0이다. 이것이 \(u[n]\)의 정의다.

2. \(\int_{-\infty}^{\infty}x(t)\delta(t - \sigma)dt = x(\sigma)\)다.

표본화 성질로 \(x(t)\delta(t - \sigma) = x(\sigma)\delta(t - \sigma)\)다. \(x(\sigma)\)는 상수라 적분 밖으로 나오고, 남은 \(\int\delta(t - \sigma)dt\)는 넓이 1이다.

연속 시간 임펄스를 정의하는 핵심 아이디어는?

모양(폭, 높이)은 버리고 넓이 1만 남긴 극한으로 본다. 그러면 끊긴 계단의 “미분”에 뜻을 줄 수 있다.

예제

예제 1.7 끊긴 신호 \(x(t) = 2u(t-1) - 3u(t-2) + 2u(t-4)\)의 도함수

  • 값: \(1 < t < 2\)에서 2, \(2 < t < 4\)에서 \(2 - 3 = -1\), \(t > 4\)에서 \(-1 + 2 = 1\).
  • 미분: 크기 \(k\)인 계단을 미분하면 그 자리에 넓이 \(k\)인 임펄스가 생긴다. 그래서 \(\dot x(t) = 2\delta(t-1) - 3\delta(t-2) + 2\delta(t-4)\).
  • 되돌리기: \(x(t) = \int_0^t\dot x(\tau)d\tau\)이므로, \(t\)까지 지나온 임펄스 넓이를 더하면 원래 값(2, \(-1\), 1)이 나온다.

그림

위의 계단이 뛰는 자리마다 아래에 화살표가 선다. 화살표 옆 숫자는 뛴 크기이자 임펄스의 넓이다1.

경계 사례: \(u(t)\)의 \(t = 0\)에서의 값은 정하지 않는다. 이산 시간 \(u[0] = 1\)과 다르다. 적분이나 에너지 계산에서 한 점의 값은 결과를 바꾸지 않기 때문이다2.

검증: \(\delta[n] = u[n] - u[n-1]\), 두 누적 합 공식, 이산 표본화 성질, 폭 \(\Delta\) 펄스의 넓이 1과 \(\Delta \to 0\)에서 \(\int x\delta_\Delta = x(\sigma)\)로 다가감, 예제 1.7의 값과 복원을 계산해 확인 — 10_unit-impulse-step_verify.py

활용

  • 2장의 핵심: 어떤 신호든 늦춘 임펄스들의 합 \(x[n] = \sum_k x[k]\delta[n - k]\)로 쓸 수 있다. 그래서 시스템이 임펄스 하나에 어떻게 반응하는지(임펄스 응답)만 알면 모든 입력의 출력을 구한다.
  • 계단 입력은 “스위치를 켰을 때”의 반응을 보는 표준 시험 신호다. RC 회로의 충전 곡선이 계단 응답이다.
  • 영상에서 2차원 임펄스 격자를 곱해 화소를 뽑는다 → 표본화와 양자화
  • 단위 계단 \(u(t)\)는 에너지가 무한대이고 평균 전력이 \(\frac12\)인 전력 신호다.

연결

자주 하는 오해

”\(\delta(0) = 1\)이다.”

틀렸다. 이산 시간 \(\delta[0] = 1\)과 이름이 같아 그럴듯하다. 연속 시간 \(\delta(t)\)는 높이가 아니라 넓이가 1이다. 폭 \(\Delta\) 펄스의 높이 \(1/\Delta\)는 \(\Delta \to 0\)에서 무한대로 간다. 확인: 높이가 1이고 폭이 0이면 넓이가 0이 되어 \(\int\delta = 1\)과 모순이다.

”\(x(t)\delta(t - t_0)\)는 그냥 숫자 \(x(t_0)\)다.”

틀렸다. 곱한 결과는 여전히 넓이 \(x(t_0)\)인 임펄스 신호 \(x(t_0)\delta(t - t_0)\)다. 숫자 \(x(t_0)\)이 되려면 적분까지 해야 한다.

확인 문제

C1 \(\delta[n]\)과 \(u[n]\)을 서로의 식으로 나타내라 (두 방향 모두).

답: \(\delta[n] = u[n] - u[n-1]\), \(u[n] = \sum_{m=-\infty}^{n}\delta[m] = \sum_{k=0}^{\infty}\delta[n-k]\).

C2 \(\int_{-\infty}^{\infty}(t^2 + 1)\,\delta(t - 3)\,dt\)를 구하라.

답: 표본화 성질로 \(t = 3\)의 값만 남아 \(3^2 + 1 = 10\).

C3 \(x(t) = u(t) - u(t-2)\)를 그리고, 도함수를 임펄스로 쓰라.

답: \(0 < t < 2\)에서 1인 직사각형 펄스. 도함수는 \(\delta(t) - \delta(t - 2)\) (올라갈 때 넓이 \(+1\), 내려갈 때 \(-1\)).

C4 연속 시간 단위 계단은 원래 미분할 수 없는데, 왜 \(\delta(t) = du/dt\)라고 쓸 수 있는가?

답: \(u\)를 \(\Delta\) 동안 곧게 오르는 \(u_\Delta\)로 근사하면 미분할 수 있고, 그 도함수는 넓이 1인 펄스 \(\delta_\Delta\)다. \(\Delta \to 0\)의 극한을 \(\delta\)로 정의했으므로, 극한의 뜻으로 \(du/dt = \delta\)라고 쓴다.

  1. 10_unit-impulse-step_plot.py로 그렸고, 같은 코드로 다음을 확인했다: 세 펄스의 넓이 1, 예제 1.7의 값 2, \(-1\), 1이 임펄스 넓이의 누적 합과 같음. ↩ ↩2

  2. Oppenheim·Willsky 2판 1.4절의 내용이며 검증 코드로 확인했다. ↩ ↩2