06. 여섯 번째 수업: 파이썬 코드로 두 파동을 합치다 (Harmonics & Signals)
삼각함수가 세상의 근원인 위대한 이유가 있습니다. 아무리 무질서하고 시끄러운 소음 노이즈, 와이파이(Wi-Fi) 통신, 주식 차트, 복잡한 인공지능 이미지의 화소 물결이라도, 이 모든 세상의 불규칙한 데이터 요동(Fluctuation)은 사실 수많은 단순한 사인(Sine) 곡선과 코사인(Cosine) 곡선 여러 개 무더기가 겹쳐져서 생겨난 덧셈 합작품 이기 때문입니다.
이 위대한 통째 증명 법칙의 파괴적 발견을 프랑스 천재 수학자 스파이였던 장 바티스트 푸리에의 이름을 따 “푸리에 변환 (Fourier Transform)” 이라고 부릅니다. 삼각함수가 디지털 세계를 여는 첫 스위치입니다.
1. 노이즈 캔슬링(Noise Cancelling)의 원리 파괴
여러분 귀에 꽂혀 있는 노이즈 캔슬링 이어폰의 안쪽 마이크는 세상 밖에서 들어오는 시끄러운 버스 엔진 소리 $Wave$ 사인파를 캐치해서 스캔합니다. 만약 이 소음 잡음 파동이 $\sin(x)$ 같이 흔들리는 높이 파형이라고 칩시다.
당신의 이어폰 코어 칩셋칩에서 어떻게 소음을 차단할까요? 소음보다 더 시끄러운 물리적 벽을 칠까요? 아닙니다. 이 삼각함수 코어가 마법 같은 짓을 합니다. “소음인 $\sin(x)$ 파도 곡선 파동과 완벽하게 똑같이 생겼는데 최고점과 최하점 바닥 모양 굴곡만 영구적으로 완전 $100\%$ 반대로 대칭으로 거꾸로 솟아오른 파동 함수 인공 소리, 즉 $-\sin(x)$ 라는 복사판 반대 음파 소리를 스피커로 생성해서 같이 쏴버리자!”
- 소음 $Wave$ 에너지 값: $+1.0$ 사인파 $\sin(x)$
- 인공 요격격추 $Wave$: $-1.0$ 마이너스 진폭파 $-\sin(x)$
- 결합 연산 더해짐 (상쇄 간섭): $\sin(x) - \sin(x) = \mathbf{0} \ (\text{완벽한 묵음 진공 Flat 화면!})$
이 파동과 파동 데이터 숫자 간의 덧셈, 증폭, 취소 간섭을 프로그래밍 물리 엔진으로 제어하는 모든 것이 바로 삼각함수를 통한 디지털 신호 처리(DSP, Digital Signal Processing) 코드입니다.
2. 파이썬으로 파동 그래프 합치기 결합
매우 날카롭고 느자구 없는 저음역 사인파 소리와 부드럽게 삐이~ 하는 고음역 사인파 소리 두 개를 겹쳐서 새로운 악기 소리 합성(Synthesizer) 소리를 만드는 코드를 파이썬의 numpy 와 matplotlib 으로 가상으로 구동해 그리면 어떻게 되는지 살짝 맛을 보겠습니다.
# [Python Code] 서로 다른 주파수 스피드를 가진 2개의 사인파동 합성하기
import numpy as np
# 시간 x축 생성 (0 부터 코사인 두 바퀴(4π) 라디안까지 시간을 촘촘하게 1000픽셀 조각 스캐닝)
time_x = np.linspace(0, 4 * np.pi, 1000)
# 1. 뱃동 소리 (진폭 1, 속도 평범 진동 사인파)
wave_1 = np.sin(time_x)
# 2. 아주 신경질적이고 빠른 고음 찌르레기 소리
# 진폭은 절반(0.5)으로 줄이지만, 시간당 진동 주파수 스피드를 5배(5*x)로 미친듯이 올려 사인파를 박고 구동함
wave_2 = 0.5 * np.sin(5 * time_x)
# 3. 신디사이저: 두 파동을 공기 중 진공상태에서 물리 덧셈 결합해 버림
synth_wave_result = wave_1 + wave_2
# (결과를 matplotlib 모듈 라이브러리로 plot.show() 날리면 화면에 뜹니다)
# 큰 물결 속에 미세한 파동이 톱니바퀴 치석처럼 지글지글 징그럽게 엮여 요동치며 결합된
# 우주선 통신 전파 같은 기하학적 합성 파동(신호 데이터 Wave Data)가 모니터에 출력됩니다!!
3. 결론: 자연의 언어를 읽는 눈
고대 이집트 측량사들의 장난에서 시작해서, 단위원을 도는 코사인 점 좌표, 더 나아가 와이파이(Wi-Fi) 시그널 합성 전파의 소스코드까지. 우리가 삼각함수($\sin, \cos, \tan$)를 배운다는 것은, 멈춰있던 세상을 진동하고 움직이는 세상으로 파동 스캐너 안경을 쓰고 재해석하여 우린 손으로 우주의 리듬인 진폭 주파수(Wave Hz)를 다룰 능력을 획득한 것입니다.
자 이제 선$(1D)$, 면$(2D)$, 공간$(3D)$ 그리고 삼각비(파동, $Wave$) 까지 모든 기초 수리 공간이 정복되었습니다. 다음 스텝, 대망의 가장 추상적이고 강력한 챕터! 미지의 기호인 함수 머신박스 박스 코드를 엮어내는 우주 해킹 블랙박스, 대망의 ‘함수(Functions) 이론 1, 2부 블랙 하우스’ 파트로 우리 모험의 여정은 절정에 달합니다!