탱크 두 개가 관으로 이어져 있으면 한쪽의 소금 농도가 다른 쪽의 변화율을 바꿉니다. 용수철로 묶인 두 진자는 서로를 흔듭니다. 변수가 여럿이고 그 변화율이 서로 얽혀 있으면 방정식도 여러 개가 한 묶음이 됩니다. 이 장에서는 이런 묶음을 하나의 벡터 방정식 x′=Ax로 쓰고, 1차원의 x′=ax⇒x=eatx0를 그대로 키워서 풉니다. 열쇠는 고유벡터입니다. 고유벡터 방향으로는 얽힘이 풀려서 각 방향이 제 고유값의 속도로 따로 자라거나 줄어듭니다. 그 결과를 평면에 그리면 해의 모양이 마디·안장·나선·중심 몇 가지로 정리되고, 그 지도는 행렬의 대각합과 행렬식 두 숫자로 그려집니다.
고계 선형 방정식을 상태 벡터로 바꿔 1계 연립 x′=Ax+g로 쓰고, 위상 평면에서 해를 궤적으로 읽는다.
x=eλtv를 대입해 고유값 문제를 얻고, 서로 다른 실 고유값·복소 고유값·중복 고유값의 세 경우에 일반해를 쓴다.
층이 수십 개인 건물에서 각 층의 흔들림은 위아래 층과 기둥으로 묶여 있습니다. 층마다 뉴턴 법칙을 쓰면 서로 얽힌 2계 방정식이 층 수만큼 나오고, 한 층만 떼어 풀 수가 없습니다. 그런데 좌표를 고유벡터로 바꾸면 이 묶음이 서로 독립인 단진동 여러 개, 즉 정규 모드로 풀립니다. 모드마다 고유 진동수가 하나씩 있어서, 구조 기술자는 주요 모드의 진동수가 지진과 바람이 주로 흔드는 진동수에서 벗어나도록 설계하고 모드별 감쇠를 계산합니다.
타이베이 101 꼭대기 근처에 매달린 거대한 강철 진자(동조 질량 감쇠기)는 건물의 첫 번째 모드와 진동수를 맞춰 두어 그 모드의 에너지를 빨아들이도록 만든 장치입니다. 이 장의 마지막 절에서 진자 두 개로 같은 원리를 직접 봅니다.
층마다 F = ma→얽힌 연립 방정식 x″ = −Kx→고유값·고유벡터→독립된 진동 모드
고계 방정식을 1계 연립으로
RK4 프로그램은 1계 방정식만 받는다
5장의 룽게–쿠타 코드는 y′=f(t,y) 꼴만 다룹니다. 그런데 용수철–질량계는 x′′+cx′+kx=0처럼 2계이고, 탱크 두 개는 미지수가 두 개입니다. 둘 다 같은 틀에 넣으려면 어떻게 해야 할까요?
요령은 "지금 상태를 정하는 데 필요한 숫자를 모두 모아 벡터 하나로 만든다"는 것입니다. 용수철은 위치만 알아서는 다음 순간을 모릅니다. 위치와 속도를 함께 알아야 하죠. 그래서 x1=x, x2=x′로 두면
고유값 1,−1,2. 원래 방정식의 일반해 y=c1et+c2e−t+c3e2t의 지수들과 같습니다.
해 x(t)를 시간축 없이 (x1,x2) 평면 위의 곡선으로 그리면 그것이 궤적(trajectory)이고, 이 평면을 위상 평면(phase plane), 대표적인 궤적들을 모아 그린 그림을 위상 초상(phase portrait)이라 합니다. 각 점 x에 화살표 Ax를 붙이면 1장의 방향장이 평면으로 올라온 것이 되고, 궤적은 이 화살표를 따라 흐르는 곡선입니다.
그림 11-1. 용수철–질량계의 위치와 속도를 묶은 상태 (x,x′)는 위상 평면의 한 점이다. 그 점에서의 속도 벡터 Ax가 다음 순간의 상태를 정하고, 시간이 흐르면 점은 감쇠 진동이면 원점으로 감아 드는 나선을 그린다.
정리 11.2 (선형 연립의 존재·유일성)A(t)와 g(t)가 구간 I에서 연속이면, t0∈I와 임의의 x0에 대해 x′=A(t)x+g(t), x(t0)=x0의 해가 I전체에서 존재하고 유일하다. 그래서 상수계수 자율 연립의 서로 다른 궤적은 위상 평면에서 만나거나 교차하지 않는다. 교차점에서 출발하는 해가 둘이 되기 때문이다.
x′ = Ax와 고유값 방법
얽힌 두 방정식을 어떻게 풀까
x′=x+y, y′=4x+y. x를 알려면 y가 필요하고 y를 알려면 x가 필요합니다. 하나씩 떼어 풀 수 없죠. 그런데 1차원 x′=ax의 해는 eat였습니다. 연립에서도 지수 함수가 통하지 않을까요?
미분방정식이 고유값 문제가 되었다. 고유벡터 v 방향으로 출발한 해는 그 직선을 벗어나지 않고 eλt배로 늘거나 줄어든다. 고유값과 고유벡터의 계산은 LinearBook 고유값 장을 보라.
정리 11.3 (중첩과 일반해)x1,…,xn이 x′=Ax의 해이면 그 일차결합도 해다. 이 해들을 열로 모은 행렬 Φ(t)=[x1⋯xn]의 행렬식 W(t)=detΦ(t)(론스키안)가 한 점에서 0이 아니면 모든 t에서 0이 아니고, 이때 Φ를 기본 행렬(fundamental matrix)이라 하며 모든 해는 x=Φ(t)c로 쓰인다. 특히 A가 일차독립인 고유벡터 v1,…,vn(고유값 λ1,…,λn)을 가지면
x(t)=c1eλ1tv1+c2eλ2tv2+⋯+cneλntvn.
왜 W는 한 번 0이 아니면 계속 0이 아닌가.Φ′=AΦ에서 W′=(trA)W가 나온다(아벨–리우빌 공식). 그래서 W(t)=W(0)e(trA)t이고, 지수 함수는 0이 되지 않는다. 6장 아벨 정리의 연립판이다.
일반해 x=c1e3t(1,2)+c2e−t(1,−2). 초기 조건: c1+c2=2, 2c1−2c2=0에서 c1=c2=1.
x(t)=e3t+e−t, y(t)=2e3t−2e−t. t=1에서 (20.453,39.435)이고, RK4로 적분한 값과 소수 셋째 자리까지 같습니다.
아래 시뮬레이터에서 화면을 눌러 출발점을 놓아 보세요. 고유벡터 직선 위에서 출발한 해는 직선을 따라 곧게 움직이고, 나머지 해는 두 직선 방향의 움직임이 섞인 곡선을 그립니다.
SIMULATOR
위상 평면과 고유벡터 직선
눌러서 출발점 놓기
행렬 A (직접 입력)
고유값 λ—
고유벡터 v—
평형점의 종류—
해볼 것: ① 안장에서 고유벡터 직선 (1, −2) 위를 정확히 누르면 해가 원점으로 들어가지만, 조금만 벗어나도 결국 (1, 2) 방향으로 튕겨 나갑니다. ② 안정 마디에서 대부분의 궤적은 원점에 들어갈 때 느린 고유벡터(λ = −1, 방향 (1, 1))에 접합니다. ③ 행렬 칸에 직접 숫자를 넣어 보세요. 고유값이 복소수가 되는 순간 직선이 사라지고 궤적이 돌기 시작합니다. 모델: 궤적은 RK4로 앞뒤 시간 방향 모두 적분하며, 옅은 부분이 과거, 진한 부분이 미래입니다.
서로 다른 실 고유값: 마디와 안장
문이 열린 두 방의 온도
벽을 사이에 둔 두 방이 각자 바깥으로 열을 잃고, 서로도 열을 주고받습니다. 바깥 온도를 0으로 잡고 두 방의 온도를 T1,T2라 하면 뉴턴 냉각 법칙(2장)으로 T1′=−T1−(T1−T2), T2′=−T2−(T2−T1)입니다. 처음에 방 1만 10도 데워 두면 두 온도는 어떻게 식을까요?
행렬은 A=[−211−2]이고 고유값은 −1,−3, 고유벡터는 (1,1), (1,−1)입니다. 두 고유벡터에는 물리적 뜻이 있습니다. (1,1)은 "두 방이 같은 온도로 함께 식는" 모드, (1,−1)은 "두 방의 온도 차이"가 줄어드는 모드입니다.
해석: 온도 차이 T1−T2=10e−3t는 빠르게(속도 3) 사라지고, 평균 21(T1+T2)=5e−t는 느리게(속도 1) 식습니다. 조금 지나면 두 방은 거의 같은 온도로 함께 식습니다. 위상 평면에서는 궤적이 먼저 대각선 T1=T2로 빠르게 다가간 뒤 그 직선을 따라 원점으로 들어갑니다.
이 관찰을 일반화하면 다음과 같습니다. 고유값이 둘 다 음수이면 모든 해가 원점으로 가는데, 빠른 성분 eλ빠름t이 먼저 사라지므로 마지막에는 느린 고유벡터 방향만 남습니다.
정리 11.4 (서로 다른 실 고유값의 위상 초상)A가 2×2이고 실 고유값 λ1=λ2와 고유벡터 v1,v2를 가진다고 하자.
λ1<λ2<0: 안정 마디(stable node). 모든 해가 t→∞에서 원점으로 가고, c2=0인 해는 원점에서 느린 방향 v2에 접한다.
0<λ2<λ1: 불안정 마디(unstable node). 시간을 거꾸로 돌린 안정 마디. 해는 원점에서 v2에 접하며 떠나 멀리서는 v1 방향과 나란해진다.
λ1<0<λ2: 안장점(saddle point). v1 직선 위의 해만 원점으로 들어가고(안정 방향), 나머지는 모두 v2 방향으로 멀어진다.
증명(1).x=eλ2t(c1e(λ1−λ2)tv1+c2v2)이고 λ1−λ2<0이므로 괄호 안은 c2v2로 간다. 따라서 x/∣x∣→±v2/∣v2∣. ∎
안장의 안정 방향은 칼날 위의 균형과 같습니다. 예제 11.2에서 x(0)이 정확히 직선 y=−2x 위에 있으면 해는 e−t로 줄지만, 측정 오차든 반올림 오차든 c1이 조금이라도 생기면 e3t가 결국 이깁니다. 물리적으로 안장 평형은 관찰되지 않는 평형입니다. 다음 장에서 이 직선은 비선형 시스템의 분리선으로 다시 등장해 서로 다른 운명을 가르는 경계가 됩니다.
SIMULATOR
해를 고유 성분으로 쪼개 보기
점 x(0)을 끌어 보세요
행렬
c₁, c₂—
c₁eλ₁t v₁—
c₂eλ₂t v₂—
x(t)—
해볼 것: ① '두 방'에서 시간을 흘리면 청록 화살표(빠른 성분, λ = −3)가 먼저 줄어들고 주황 화살표(느린 성분, λ = −1)가 오래 남습니다. 해가 대각선 쪽으로 휘는 이유입니다. ② '안장'에서 x(0)을 안정 직선 가까이 끌면 c₁이 거의 0이 됩니다. 그래도 t가 커지면 주황 성분이 폭발합니다. ③ t를 음수로 보내면 과거로 갑니다. 불안정 마디의 과거는 안정 마디의 미래와 같습니다. 모델: x(t) = c₁eλ₁tv₁ + c₂eλ₂tv₂, 평행사변형 꼭짓점이 해입니다.
복소 고유값: 나선과 중심
고유벡터 직선이 없는 행렬
x′=−x−2y, y′=2x−y. 특성 방정식 (λ+1)2+4=0의 근은 λ=−1±2i입니다. 실수 고유벡터가 없으니 위상 평면에 곧은 궤적도 없습니다. 그러면 해는 어떻게 생겼을까요?
복소수 고유값 λ=α+iβ와 복소 고유벡터 v=a+ib로 만든 eλtv도 (복소수) 해입니다. A가 실수 행렬이므로 그 실수부와 허수부가 각각 실수 해가 됩니다. 오일러 공식 eiβt=cosβt+isinβt로 전개하면
정리 11.5 (복소 고유값의 실수 해) 실수 행렬 A가 고유값 α±iβ(β>0)와 고유벡터 a±ib를 가지면
x1=eαt(acosβt−bsinβt),x2=eαt(asinβt+bcosβt)
는 일차독립인 실수 해이고, 일반해는 c1x1+c2x2다. 궤적은 α<0이면 원점으로 감겨 드는 나선점(spiral point, focus)(안정), α>0이면 풀려 나가는 나선(불안정), α=0이면 원점 둘레의 닫힌 타원인 중심(center)이 된다. 한 바퀴 도는 시간은 2π/β이고, 한 바퀴마다 크기가 e2πα/β배가 된다.
예제 11.4 (안정 나선)x′=[−12−2−1]x, x(0)=(1,0).
λ=−1+2i: (A−λI)v=[−2i2−2−2i]v=0에서 v=(1,−i)=(1,0)+i(0,−1). 즉 a=(1,0), b=(0,−1).
x1=e−t((1,0)cos2t−(0,−1)sin2t)=e−t(cos2t,sin2t). 이것이 이미 x(0)=(1,0)을 만족합니다.
해 x=e−t(cos2t,sin2t): 반지름 e−t인 원 위를 각속도 2로 반시계로 도는 점. t=1에서 (−0.1531,0.3345)(RK4와 일치). 한 바퀴(π초)마다 크기가 e−π≈0.043배가 됩니다.
예제 11.5 (중심: 감쇠 없는 용수철)x′′+4x=0은 A=[0−410], λ=±2i입니다. α=0이라 궤적은 닫힌 곡선이고, 실제로 dtd(4x2+y2)=8xy+2y(−4x)=0이므로 타원 4x2+y2= 상수 위를 돕니다. 이 양은 7장의 역학적 에너지(의 두 배)입니다.
도는 방향을 1초 만에 읽기 고유값이 복소수이면 점 (1,0)에서의 속도 A(1,0)=(a11,a21)를 봅니다. a21>0이면 위로 움직이므로 반시계, a21<0이면 시계 방향입니다. 예제 11.4는 a21=2>0이라 반시계, 예제 11.5는 −4라 시계 방향입니다(위치가 양수이면 속도가 줄어드는 용수철).
중복 고유값: 퇴화 마디와 일반화 고유벡터
임계 감쇠에는 고유벡터가 하나뿐
7장의 임계 감쇠 x′′+2x′+x=0을 연립으로 쓰면 A=[0−11−2], 고유값은 −1 하나(중근)이고 고유벡터는 (1,−1)의 배수뿐입니다. 해 e−t(1,−1) 하나로는 초기 조건 두 개를 맞출 수 없습니다. 2계 방정식에서는 te−t가 구원투수였죠. 연립에서는?
중복 고유값 λ에는 두 경우가 있습니다. A=λI이면 모든 벡터가 고유벡터라서 해는 eλtx0, 궤적은 원점을 지나는 직선이 사방으로 뻗은 별 마디(star node, proper node)입니다. 그 밖의 경우는 고유벡터 방향이 하나뿐이고, 두 번째 해를 x=eλt(tv+w) 꼴로 찾습니다. 대입하면 eλt(v+λtv+λw)=eλt(tAv+Aw)이고, Av=λv이므로 남는 조건은
(A−λI)w=v.
정의 11.2·정리 11.6 (일반화 고유벡터와 퇴화 마디)(A−λI)w=v를 만족하는 w를 v에 딸린 일반화 고유벡터(generalized eigenvector)라 한다. 2×2 행렬 A=λI가 중복 고유값 λ를 가지면 일반해는
x(t)=c1eλtv+c2eλt(tv+w)
이다. 이때 원점은 퇴화 마디(degenerate node, improper node)다. t→±∞에서 tv 항이 지배하므로 모든 궤적이 끝에서 v 방향에 접하고, 그 사이에서 반 바퀴 휘어 돈다. w는 v의 배수를 더해도 되므로 하나로 정해지지 않는다.
처음 문제로 돌아가면 λ=−1, v=(1,−1), (A+I)w=v에서 w=(1,0)이고, 두 번째 해의 첫 성분이 x=(t+1)e−t입니다. 2계 방정식의 te−t가 일반화 고유벡터에서 나온 것입니다. 퇴화 마디는 두 고유벡터가 하나로 합쳐지는 순간, 즉 마디가 나선으로 넘어가는 경계에 있습니다. 아래에서 ε을 움직여 그 순간을 보세요.
SIMULATOR
두 고유벡터가 하나로 합쳐질 때
A = [[−0.5, 1], [ε, −0.5]]의 위상 초상
x(0) = (0, 1)에서: x₁(t) 주황, x₂(t) 청록
고유값 −0.5 ± √ε—
두 고유벡터 사이 각—
종류—
해볼 것: ① ε를 0.2에서 0으로 줄이면 두 고유벡터 직선 (1, ±√ε)가 좁혀지다가 ε = 0에서 하나로 겹칩니다. ② ε = 0에서 아래 그래프의 x₁(t)는 정확히 te−t/2(점선)입니다. t = 2에서 최댓값 2/e ≈ 0.736. ③ ε를 음수로 넘기면 고유값이 −0.5 ± i√|ε|가 되어 궤적이 원점 둘레를 돌기 시작하고, x₁(t)가 0 아래로 내려갔다 돌아오는 진동이 생깁니다. ε = 0.16이면 λ = −0.1, −0.9인 마디입니다. 모델: 해는 RK4로 적분합니다.
대각합–행렬식 평면: 평형점 지도
행렬만 보고 그림을 맞힐 수 있을까
지금까지 고유값을 구하고 경우를 나눠 그림을 그렸습니다. 그런데 2×2 행렬의 특성 방정식은 λ2−τλ+Δ=0(τ=trA, Δ=detA)이라서 고유값은 두 숫자 τ,Δ만으로 정해집니다. 그렇다면 위상 초상의 종류도 이 두 숫자로 지도를 그릴 수 있을 것입니다.
λ1,2=2τ±4τ2−Δ,λ1+λ2=τ,λ1λ2=Δ.
정리 11.7 (2×2 선형 연립의 분류)Δ=0이면 원점은 유일한 평형점이고
Δ<0: 고유값이 부호가 다른 실수 → 안장.
Δ>0, τ2>4Δ: 같은 부호의 실수 → 마디(τ<0 안정, τ>0 불안정).
Δ>0, τ2<4Δ: 복소수 → 나선(τ<0 안정, τ>0 불안정), τ=0이면 중심.
τ2=4Δ: 중복 고유값 → 퇴화 마디 또는 별 마디.
특히 원점이 점근 안정(모든 해가 0으로)일 필요충분조건은 τ<0이고 Δ>0이다. Δ=0이면 고유값 0이 있어 평형점이 직선 하나를 이룬다.
그림 11-2. 대각합–행렬식 평면. 가로축 아래(Δ<0)는 안장, 위쪽은 포물선 Δ=τ2/4를 경계로 안쪽이 나선, 바깥쪽이 마디다. 왼쪽 절반(τ<0)이 안정이고, 세로축의 양수 부분이 중심이다. 넓은 영역(안장·마디·나선)에 있는 행렬은 조금 흔들어도 종류가 그대로지만, 경계(포물선·세로축)에 있는 퇴화 마디와 중심은 아주 작은 변화로도 종류가 바뀐다.
용수철 x′′+cx′+kx=0의 동반 행렬은 τ=−c, Δ=k입니다. 그러니 7장의 감쇠 세 영역(과감쇠·임계·부족 감쇠)은 이 지도의 왼쪽 절반에서 포물선 아래·위·포물선 위에 정확히 대응합니다. 아래 시뮬레이터 오른쪽 지도에서 점을 끌면 행렬이 바로 그 동반 행렬 [0−Δ1τ]로 바뀝니다.
SIMULATOR
행렬 성분 ↔ 대각합–행렬식 평면
위상 초상
(τ, Δ) 점을 끌어 보세요
τ = tr A—
Δ = det A—
τ² − 4Δ—
λ—
종류—
해볼 것: ① a₁₁과 a₂₂를 함께 올리면 τ만 커집니다. 점이 오른쪽으로 가며 안정 나선이 중심을 지나 불안정 나선이 됩니다. ② a₁₂·a₂₁의 부호를 같게 만들면 Δ가 줄어 점이 아래로 내려가고 결국 안장이 됩니다. ③ 지도에서 점을 포물선 바로 위에 올려 보세요. 나선과 마디의 경계에서 퇴화 마디가 됩니다. 모델: 지도를 끌면 행렬은 동반 행렬 [[0, 1], [−Δ, τ]]로 바뀝니다. 궤적은 원 위 16개 점에서 앞뒤로 RK4.
행렬 지수 eAt
고유벡터를 찾지 않고 한 번에
1차원에서는 x′=ax의 해가 x=eatx0 한 줄이었습니다. 경우를 나누지 않고 x=eAtx0이라고 쓸 수 있다면 편하겠지요. 그런데 "e의 행렬 제곱"이란 무엇일까요?
CalculusBook 테일러 장의 ex=∑xk/k!에 x 대신 행렬 At를 넣습니다. 행렬의 거듭제곱과 덧셈은 정의되어 있으니 이 급수는 뜻이 있습니다.
정의 11.3 (행렬 지수(matrix exponential)) 정사각 행렬 A에 대해
eAt=I+At+2!(At)2+3!(At)3+⋯=k=0∑∞k!Aktk.
각 항의 크기가 ∥A∥k∣t∣k/k! 이하이므로 이 급수는 모든 A와 t에서 수렴한다(비교 판정, ∑∥A∥k∣t∣k/k!=e∥A∥∣t∣).
정리 11.8 (행렬 지수의 성질)
dtdeAt=AeAt, eA⋅0=I. 그래서 x(t)=eAtx0이 x′=Ax, x(0)=x0의 유일한 해이고, eAt는 Φ(0)=I인 기본 행렬이다.
eA(t+s)=eAteAs, (eAt)−1=e−At, deteAt=e(trA)t.
AB=BA이면 e(A+B)t=eAteBt. 교환하지 않으면 일반적으로 성립하지 않는다.
(1)의 증명. 급수를 항별로 미분하면(멱급수는 수렴 범위 안에서 항별 미분 가능) ∑k≥1Aktk−1/(k−1)!=A∑j≥0Ajtj/j!. ∎
계산은 A의 모양에 따라 세 가지 길이 있습니다.
대각화: A=VΛV−1이면 Ak=VΛkV−1이므로 eAt=Vdiag(eλ1t,…,eλnt)V−1. 정리 11.3의 일반해를 행렬로 쓴 것입니다.
멱영 분해: A=λI+N, N2=0이면 λI와 N은 교환하므로 eAt=eλteNt=eλt(I+tN). 급수가 두 항에서 끝납니다. 여기서 중복 고유값의 t가 나옵니다.
회전: J=[0−110]은 J2=−I이므로 급수의 짝수 항과 홀수 항이 각각 cost, sint의 급수가 되어 eJt=[cost−sintsintcost](시계 방향 회전).
정리 11.9 (2×2 행렬 지수 공식)τ=trA, Δ=detA, q=τ2/4−Δ, B=A−2τI라 하면
급수 정의는 개념적으로는 깔끔하지만 계산에는 함정이 있습니다. ∥A∥t가 크면 k≈∥A∥t 근처의 항들이 엄청나게 커졌다가 서로 상쇄되어야 하므로, 몇 항에서 자르면 엉뚱한 답이 나옵니다. 실제 소프트웨어는 eAt=(eAt/2m)2m처럼 시간을 잘게 나눈 뒤 제곱을 반복하는 방법을 씁니다. 더 깊은 이야기는 LinearBook 동역학 장의 행렬 지수 절에 있습니다.
SIMULATOR
eAt 급수: 몇 항이면 충분할까
주황 = eAsx₀ (정확), 청록 = 급수 N항까지
항의 크기 ‖Aktk/k!‖ (로그 눈금)
eAt—
SN(t)—
오차 ‖SN − eAt‖—
해볼 것: ① 회전 행렬에서 t = 3, N = 4이면 청록 곡선이 원을 벗어나 엉뚱한 데로 갑니다. N을 늘리면 곡선이 원에 점점 길게 붙습니다. ② t를 키우면 막대그래프의 봉우리(가장 큰 항)가 k ≈ t 근처로 옮겨 가고, 그 너머까지 더해야 정확해집니다. ③ '멱영'에서는 k ≥ 2 항이 모두 0이라 N = 1부터 정확합니다. 퇴화 행렬도 eλt(I + tN)이라 꼴은 단순하지만 급수로는 많은 항이 필요합니다. 모델: x₀ = (1.5, 0)을 끌 수 있고, 정확한 값은 정리 11.9의 공식입니다.
비동차 연립: 상수 변화 공식
한 방에 난로를 켜면
예제 11.3의 두 방 가운데 방 1에 일정한 출력의 난로를 켜서 T1′=−2T1+T2+3이 되었습니다. 두 방은 결국 몇 도에서 멈출까요? 그리고 그 사이의 과정은?
정리 11.10 (상수 변화 공식, 듀아멜 원리)x′=Ax+g(t), x(0)=x0의 해는
x(t)=eAtx0+∫0teA(t−s)g(s)ds.
첫 항은 초기 상태가 자유롭게 진화한 것(자유 응답), 둘째 항은 각 시각 s에 들어온 입력 g(s)ds가 남은 시간 t−s 동안 진화한 것을 모두 더한 것(강제 응답)이다. 10장의 합성곱과 같은 구조다. A가 시간에 따라 변하면 eAt 대신 기본 행렬 Φ를 써서 xp=Φ(t)∫Φ(s)−1g(s)ds이고, 8장 매개변수 변환법의 연립판이다.
입력이 상수 g이고 A가 가역이면 계산이 더 쉽습니다. 상수 특수해 xp를 찾으면 0=Axp+g, 즉 xp=−A−1g이고, A가 안정(τ<0,Δ>0)이면 모든 해가 이 정상 상태로 갑니다.
예제 11.9 (난로 켠 두 방)x′=[−211−2]x+[30], x(0)=0.
A−1=31[−2−1−1−2], xp=−A−1(3,0)=(2,1). 정상 상태에서 방 1은 2도, 방 2는 1도 따뜻합니다.
x=(2,1)+c1e−t(1,1)+c2e−3t(1,−1). x(0)=0에서 c1+c2=−2, c1−c2=−1, 즉 c1=−23, c2=−21.
예제 11.10 (공진을 상수 변화 공식으로)x′′+x=cost, x(0)=x′(0)=0.
연립으로 A=[0−110], g=(0,cost). 위에서 본 대로 eA(t−s)=[cos(t−s)−sin(t−s)sin(t−s)cos(t−s)].
첫 성분: x(t)=∫0tsin(t−s)cossds=21∫0t[sint+sin(t−2s)]ds=21tsint. (둘째 항의 적분은 0.)
8장의 공진 해 21tsint가 미정계수 없이 나왔습니다. t=5에서 −2.3973(RK4 일치).
응용 1: 이어진 두 탱크
오염된 탱크를 맑은 물로 씻어 내기
물 100 L씩 든 탱크 두 개가 관 두 개로 이어져 있습니다. 탱크 1에 소금 50 kg이 녹아 있고 탱크 2는 맑습니다. 탱크 1로 맑은 물이 분당 3 L 들어오고, 탱크 1 → 2로 분당 4 L, 2 → 1로 분당 1 L가 흐르며, 탱크 2에서 분당 3 L가 빠져나갑니다. 탱크 2의 소금은 언제 가장 많아지고, 그 양은 얼마일까요?
그림 11-3. 두 탱크의 흐름. 각 탱크로 들어오는 물과 나가는 물의 양이 같아서(탱크 1: 3 + 1 = 4, 탱크 2: 4 = 1 + 3) 부피가 100 L로 일정하다. 소금은 "들어오는 양 − 나가는 양"으로 변하고, 관을 타고 나가는 소금의 양은 유량 × 그 탱크의 농도다.
소금의 변화율은 (들어오는 소금) − (나가는 소금)입니다(3장 혼합 탱크의 연립판). 탱크 1은 탱크 2에서 1⋅x2/100을 받고 4⋅x1/100을 보냅니다. 탱크 2는 4x1/100을 받고 (1+3)x2/100을 내보냅니다.
x2′=0: 0.02e−0.02t=0.06e−0.06t → e0.04t=3 → t=ln3/0.04≈27.5분. 그때 x2=50(3−1/2−3−3/2)≈19.2 kg. RK4 적분도 같은 값을 줍니다.
두 시상수는 1/0.02=50분과 1/0.06≈16.7분입니다. 빠른 모드 (1,−2)는 "두 탱크 사이에 소금이 고르지 않게 나뉜 정도"이고 먼저 사라집니다. 그 뒤로는 탱크 2에 탱크 1의 두 배 소금이 든 채(v1=(1,2)) 함께 50분 시상수로 씻겨 나갑니다. 맑은 물 대신 농도 c인 소금물을 넣으면 g=(3c,0)인 비동차 연립이 되고, 정상 상태는 −A−1g=(100c,100c), 즉 두 탱크 모두 들어오는 물과 같은 농도입니다.
SIMULATOR
두 탱크의 소금 농도
농도 (kg/L): 주황 = 탱크 1, 청록 = 탱크 2
고유값 (분⁻¹)—
시상수 (분)—
탱크 2 최대—
t, 농도—
해볼 것: ① 기본값에서 탱크 2의 최대가 27.5분, 0.192 kg/L(= 19.2 kg)인지 확인하세요. ② 역류를 0으로 하면 고유값이 하나로 겹칩니다(λ = −f/100 중근). 탱크 2의 농도가 teλt 꼴이 되는 퇴화 마디입니다. ③ 유입수 농도 c를 올리면 두 곡선이 모두 c로 수렴합니다. 정상 상태 −A−1g입니다. 모델: 두 탱크 모두 100 L로 일정하고 순간적으로 완전히 섞인다고 가정합니다. 1 → 2 유량은 f + 역류, 배출은 f.
응용 2: 결합 진동자와 정규 모드
한 진자를 밀었는데 다른 진자가 흔들린다
똑같은 진자 두 개를 약한 용수철로 이어 놓고 한쪽만 당겼다 놓으면, 처음 진자의 흔들림이 점점 줄고 옆 진자가 흔들리기 시작합니다. 얼마 뒤에는 처음 진자가 거의 멈추고 에너지가 모두 옆으로 넘어갔다가, 다시 돌아옵니다. 이 주고받음의 주기는 무엇이 정할까요?
진자의 각을 θ1,θ2, 홀로 흔들릴 때의 각진동수를 ω0=g/L, 용수철 결합의 세기를 κ라 하면, 작은 각 근사(sinθ≈θ)에서
4×4 1계 연립으로 바꿀 수도 있지만, 2계 그대로 θ=vcosωt를 대입하면 더 빠릅니다. −ω2v=−Kv, 즉 Kv=ω2v. 대칭 행렬 K의 고유값이 진동수의 제곱입니다.
정의 11.4·정리 11.11 (정규 모드(normal mode))x′′=−Kx(K는 양의 정부호 대칭)에서 Kvj=ωj2vj이면 x=vjcos(ωjt−ϕ)는 모든 성분이 같은 진동수로 함께 흔들리는 해이고, 이것을 정규 모드라 한다. 일반해는 정규 모드의 중첩 x=∑jAjvjcos(ωjt−ϕj)이다. 1계 연립으로 보면 고유값 ±iωj 쌍이다. 결합 진자에서는
빠른 진동 cos2ω1+ω2t의 진폭이 느리게 cos2ω2−ω1t로 출렁인다. 8장의 맥놀이와 같은 곱셈 공식이다. 에너지가 처음으로 모두 진자 2로 넘어가는 시각은 T=π/(ω2−ω1).
예제 11.12 (에너지 주고받기)ω0=1 rad/s, κ=0.1 s⁻²이면 ω2=1.2≈1.0954, ω2−ω1≈0.0954이고 T=π/0.0954≈32.9초. 진자 자체의 주기(약 6.3초)의 다섯 배가 넘습니다. 결합이 약할수록 두 진동수가 가까워지고 주고받음은 느려집니다. RK4로 적분하면 t=32.9초에 θ1은 거의 0, θ2가 진폭 전부를 가집니다.
자유도가 n인 구조물도 똑같습니다. Mx′′+Kx=0의 고유값 문제 Kv=ω2Mv가 n개의 정규 모드를 주고, 건물·다리·자동차 차체의 모드 해석, 분자의 진동 스펙트럼(적외선 분광)이 모두 이 계산입니다. 대칭 행렬이라 고유벡터가 서로 직교한다는 사실(LinearBook 대칭 행렬 장)이 모드를 서로 독립으로 만들어 줍니다.
SIMULATOR
결합 진자: 정규 모드와 에너지 주고받기
θ₁(t) 주황, θ₂(t) 청록
처음 상태
ω₁, ω₂ (rad/s)—
주고받기 T = π/(ω₂ − ω₁)—
t—
진자 1의 에너지 몫—
해볼 것: ① '하나만'에서 t ≈ 32.9초에 진자 1이 멈추고 진자 2가 다 받는지 보세요(κ = 0.1). ② '모드 1'이나 '모드 2'로 출발하면 에너지가 오가지 않습니다. 정규 모드는 그 자체로 해이기 때문입니다. ③ κ를 키우면 T가 짧아집니다. κ = 1에서는 ω₂ = √3이라 T ≈ 4.3초. 모델: ω₀ = 1 rad/s, 작은 각 근사, 감쇠 없음. 정규 모드 공식으로 정확히 계산합니다. 에너지 몫은 용수철 에너지를 뺀 각 진자의 ½θ′² + ½ω₀²θ²로 셉니다.
이 도구가 쓰이는 곳
"상태 벡터 + 행렬"이라는 틀은 미분방정식을 컴퓨터와 선형대수의 언어로 옮겨 줍니다. 공학 시스템의 상당수가 이 틀로 설계되고 해석됩니다.
상태 공간 제어 로봇 팔, 드론, 전력 변환기 같은 시스템은 상태 방정식 x′=Ax+Bu로 모델링됩니다. 여기서 u는 모터 전압 같은 제어 입력입니다. 측정한 상태로 u=−Kx를 정하면 닫힌 계는 x′=(A−BK)x가 되고, 제어 설계는 결국 A−BK의 고유값을 대각합–행렬식 지도의 왼쪽(안정 영역), 원하는 감쇠의 자리로 옮기는 일입니다. 이 장의 분류표가 그대로 설계 도구가 됩니다.