Dwa pokoje wymieniają ciepło przez ścianę i oba tracą je na zewnątrz. Satelita ma położenie, prędkość, orientację i prędkość obrotu. Obwód ma kilka kondensatorów i cewek. Wszystkie takie układy da się zapisać jednym równaniem x˙=Ax, gdzie x to wektor stanu, a A to macierz. Rozwiązanie daje się wyrazić przez wartości i wektory własne A (lekcja 2.3) albo jednym wzorem: x(t)=eAtx(0), z wykładniczą funkcją macierzy. To język, w którym pisze się współczesną automatykę i mechanikę lotu.
Czas
ok. 3 h teorii + 2,5 h zadań
Zadania
18 zadań w treści, z podpowiedziami i odpowiedziami
Źródła
W. E. Boyce, R. C. DiPrima, Elementary Differential Equations, rozdz. 7.1, 7.5–7.9; Feynmana wykłady z fizyki, t. I, 25-4, 49-4, 49-5
0 Prolog: dwa pokoje
Dwa sąsiednie pokoje są cieplejsze od otoczenia o x1 i x2 stopni. Każdy traci ciepło na zewnątrz, a przez wspólną ścianę ciepło płynie z cieplejszego do chłodniejszego. W prostym modelu (prawo stygnięcia Newtona, lekcja 4.1 Równania różniczkowe zwyczajne) z wybranymi stałymi:
x˙1=−2x1+(x2−x1),x˙2=−2x2+(x1−x2).
Każde równanie zawiera obie niewiadome, więc nie da się ich rozwiązać po kolei. W lekcji 2.3 Wartości i wektory własne mieliśmy podobny kłopot z dwoma wahadłami połączonymi sprężyną i rozwiązaliśmy go, szukając modów: kombinacji, które zachowują się niezależnie.FLP I-49-4
Pytanie na start. W chwili 0 pierwszy pokój jest o 1 stopień cieplejszy od otoczenia, a drugi ma temperaturę otoczenia. Jak zmieniają się oba w czasie? Która kombinacja temperatur gaśnie szybciej: średnia czy różnica? Odpowiedź w przykładzie 2.1.
1 Stan i równanie stanu
Stan układu to zestaw liczb, który razem z przyszłymi wymuszeniami wyznacza całą przyszłość. Dla punktu materialnego to położenie i prędkość, nie samo położenie. Dla liniowego układu bez wymuszeń zapisujemy go jako wektor x i dostajemy
Równanie stanu
x˙=Ax,x(0)=x0,
gdzie A to stała macierz n×n. Przestrzeń wszystkich możliwych wektorów x to przestrzeń stanów. Każde jednorodne równanie liniowe rzędu n o stałych współczynnikach sprowadza się do tej postaci: za zmienne stanu bierze się funkcję i jej pochodne do rzędu n−1.por. Boyce i DiPrima §7.1
Przykład 1.1 Oscylator jako układ pierwszego rzędu
Zapisz równanie oscylatora my¨+γy˙+ky=0 w postaci x˙=Ax i sprawdź, że wielomian charakterystyczny A to (z dokładnością do czynnika) wielomian charakterystyczny równania.
Stan: x1=y (położenie), x2=y˙ (prędkość).
x˙1=x2; x˙2=y¨=−mkx1−mγx2.
A=(0−k/m1−γ/m), det(A−λI)=λ2+mγλ+mk.
Wynik:A=(0−k/m1−γ/m), a det(A−λI)=m1(mλ2+γλ+k).
Sprawdzenie: pierwiastki to wykładniki z lekcji 4.1 i bieguny transmitancji z lekcji 4.4 Transformata Laplace'a ✓. Ten sam układ, trzy języki: równanie charakterystyczne, bieguny, wartości własne.
Zadania · część 1
4 zadania · ok. 30 min
Zapisz y′′+5y′+6y=0 jako układ x˙=Ax.
Odpowiedź
A=(0−61−5); det(A−λI)=λ2+5λ+6.
Zapisz y′′′+2y′′−y=0 jako układ trzech równań pierwszego rzędu.
Dwie masy m połączone sprężynami k (ściana–sprężyna–masa–sprężyna–masa–sprężyna–ściana) spełniają mx¨1=−2kx1+kx2, mx¨2=kx1−2kx2. Zapisz układ w przestrzeni stanów. Jaki ma wymiar?
Odpowiedź
Stan [x1;x2;x˙1;x˙2], wymiar 4. A=(0−KI0) z K=mk(2−1−12) (bloki 2×2).
Obwód szeregowy RLC z napięciem V(t): Lq¨+Rq˙+q/C=V. Zapisz go jako x˙=Ax+bV ze stanem [q;i], gdzie i=q˙.
Odpowiedź
A=(0−LC11−LR), b=[0;1/L]. Analogia z oscylatorem: L↔m, R↔γ, 1/C↔k.FLP I-25-4
2 Rozwiązanie przez wartości własne
Dla jednego równania x˙=ax rozwiązanie to eatx0. Zgadnijmy więc x=veλt ze stałym wektorem v. Wstawienie daje λveλt=Aveλt, czyli Av=λv: λ musi być wartością własną, a v wektorem własnym (lekcja 2.3 Wartości i wektory własne).
Rozwiązanie ogólne (macierz diagonalizowalna)
x(t)=c1v1eλ1t+c2v2eλ2t+…+cnvneλnt,
gdzie Avk=λkvk, a stałe ck wyznacza warunek początkowy: x0=∑ckvk, czyli rozkład x0 w bazie wektorów własnych. Każdy wektor własny to mod: dla rzeczywistej λ kierunek w przestrzeni stanów, wzdłuż którego układ tylko rośnie albo gaśnie z własnym wykładnikiem.por. Boyce i DiPrima §7.5
Gdy A nie jest diagonalizowalna (wartość własna wielokrotna z za małą liczbą wektorów własnych), pojawiają się wyrazy teλt (Boyce i DiPrima §7.8); wzór eAtx0 z części 3 działa zawsze.
Przykład 2.1 Dwa pokoje
Rozwiąż układ z prologu, x˙=Ax z A=(−311−3) i x0=[1;0].
det(A−λI)=(λ+3)2−1=0: λ1=−2, λ2=−4.
Wektory własne: dla −2: [1;1] (oba pokoje tak samo ciepłe); dla −4: [1;−1] (różnica temperatur).
[1;0]=21[1;1]+21[1;−1], więc c1=c2=21.
x(t)=21[1;1]e−2t+21[1;−1]e−4t.
Wynik:x1=21(e−2t+e−4t), x2=21(e−2t−e−4t). Średnia gaśnie jak e−2t, różnica dwa razy szybciej, jak e−4t.
Sprawdzenie:x(0)=[1;0] ✓. Fizycznie: średnia temperatura spada tylko przez straty na zewnątrz (stała 2); różnica maleje przez straty i dodatkowo przez wymianę przez ścianę (2+2⋅1=4) ✓. Dla t=0,5: x1≈0,252, x2≈0,116.
Gdy wartości własne są zespolone, λ=σ±iω (macierz rzeczywista daje je w parach sprzężonych), rozwiązania rzeczywiste to kombinacje eσtcosωt i eσtsinωt: spirala w przestrzeni stanów, gasnąca lub rosnąca zależnie od znaku σ (dla σ=0 zamknięta orbita, środek).por. Boyce i DiPrima §7.6 Tak wygląda słabo tłumiony oscylator z przykładu 1.1 na płaszczyźnie (położenie, prędkość).
Symulacja 1 Trajektorie układu x˙=Ax na płaszczyźnie stanów. Wybierz macierz albo ustaw jej elementy suwakami; kliknij w rysunek, żeby dodać trajektorię z tego punktu. Proste przerywane to kierunki własne (dla rzeczywistych wartości własnych). Odczyt podaje wartości własne, ślad i wyznacznik.
Zadania · część 2
5 zadań · ok. 45 min
Rozwiąż x˙=(200−1)x dla dowolnego x0. Jak wyglądają trajektorie?
Odpowiedź
x1=x10e2t, x2=x20e−t. Wzdłuż osi x2 trajektorie wpadają do zera, wzdłuż osi x1 uciekają. Pozostałe są hiperbolami x1x22=const: siodło, równowaga niestabilna.
Rozwiąż x˙=(1221)x, x0=[1;0].
Odpowiedź
Wartości własne 3 ([1;1]) i −1 ([1;−1]). x=21[1;1]e3t+21[1;−1]e−t. Dla dużych t dominuje mod e3t: stan ustawia się wzdłuż [1;1] i rośnie.
Znajdź wartości i wektory własne macierzy z zadania 1.1 i porównaj z pierwiastkami λ2+5λ+6. Co oznacza wektor własny [1;−2]?
Odpowiedź
−2 z wektorem [1;−2] i −3 z [1;−3], te same co pierwiastki. Wektor [1;−2] oznacza stan, w którym prędkość to −2 razy położenie; wtedy y=e−2t i rzeczywiście y˙=−2y. Dla równania y′′+… wektory własne zawsze mają postać [1;λ].
Znajdź wartości własne (−11−4−1) i opisz ruch w przestrzeni stanów. Ile trwa jeden obrót spirali?
Odpowiedź
(λ+1)2+4=0: λ=−1±2i. Spirala zbieżna do zera: obrót z częstością 2 (okres π≈3,14), trajektoria to obracająca się elipsa zmniejszana jak e−t. Po jednym obrocie odległość od zera spada eπ≈23 razy.
Dla mas z zadania 1.3 przyjmij k/m=1. Pokaż, że szukając rozwiązań q=ueiωt równania q¨=−Kq, gdzie q=[x1;x2] to same położenia, dostajesz ω2 jako wartości własne K. Znajdź częstości i mody i porównaj z lekcją 2.3.
Odpowiedź
−ω2u=−Ku, czyli Ku=ω2u. K=(2−1−12) ma wartości własne 1 ([1;1]: masy w fazie, środkowa sprężyna nie pracuje) i 3 ([1;−1]: masy w przeciwfazie). Częstości 1 i 3≈1,73. To ta sama struktura co wahadła sprzężone z lekcji 2.3. W pełnej przestrzeni stanów 4×4 wartości własne to ±i i ±i3.FLP I-49-4
3 Macierz wykładnicza
Dla liczby eat=1+at+2!(at)2+… (lekcja 1.6 Szeregi liczbowe i potęgowe). Ten sam szereg ma sens dla macierzy kwadratowej, bo potęgi macierzy są określone:
Macierz wykładnicza
eAt=I+At+2!(At)2+3!(At)3+…,x(t)=eAtx0.
Szereg jest zbieżny dla każdej macierzy. Różniczkując wyraz po wyrazie: dtdeAt=AeAt, więc eAtx0 spełnia równanie stanu i warunek początkowy.por. Boyce i DiPrima §7.7 Jeśli A=VDV−1 (diagonalizacja, lekcja 2.3), to Ak=VDkV−1 i eAt=VeDtV−1, gdzie eDt ma na przekątnej eλkt. Przez transformatę Laplace'a: eAt=L−1{(sI−A)−1}.
Przykład 3.1 Dwie macierze, w których szereg się urywa albo zamyka
Oblicz eAt dla A=(0010) (cząstka swobodna: y˙=v, v˙=0) i dla A=(0ω−ω0).
Pierwsza: A2=0, więc szereg kończy się po dwóch wyrazach: eAt=I+At=(10t1). Zatem y=y0+v0t, v=v0.
Druga: A2=−ω2I, A3=−ω2A, A4=ω4I… Wyrazy z I układają się w szereg cosωt, wyrazy z A w ωsinωt: eAt=Icosωt+ωAsinωt.
Wynik:eAt=(10t1) oraz eAt=(cosωtsinωt−sinωtcosωt): macierz obrotu o kąt ωt.
Sprawdzenie: pierwsza macierz nie jest diagonalizowalna (podwójna wartość własna 0, jeden wektor własny), a szereg działa mimo to ✓. Druga to dokładnie wzór Eulera eiωt=cosωt+isinωt (lekcja 1.7 Liczby zespolone i fazory), w którym rolę i gra macierz A/ω, bo (A/ω)2=−I ✓.
Symulacja 2 Sumy częściowe szeregu eAtx0 dla wybranej macierzy. Kolejne punkty to x0, (I+At)x0, (I+At+2(At)2)x0… Zmieniaj czas t i liczbę wyrazów N: dla dużych t potrzeba więcej wyrazów, ale szereg zawsze w końcu trafia w dokładne rozwiązanie (kółko).
Zadania · część 3
5 zadań · ok. 40 min
Oblicz eAt dla A=(a00b).
Odpowiedź
(eat00ebt): każda potęga macierzy diagonalnej jest diagonalna.
Sprawdź, że eAt=(10t1) z przykładu 3.1 spełnia dtdeAt=AeAt.
Oblicz eAt dla macierzy dwóch pokoi z przykładu 2.1 wzorem VeDtV−1.
Odpowiedź
V=(111−1), V−1=21V, D=diag(−2,−4). eAt=21(e−2t+e−4te−2t−e−4te−2t−e−4te−2t+e−4t). Pierwsza kolumna to rozwiązanie z przykładu 2.1 ✓.
Oblicz (sI−A)−1 dla A=(0010) i odwrotną transformatą Laplace'a odzyskaj eAt.
Odpowiedź
sI−A=(s0−1s), odwrotność (1/s01/s21/s). Element po elemencie: (10t1) ✓.
Dla A=(0010), B=(0100) oblicz eAeB i eA+B. Dlaczego nie są równe, choć dla liczb eaeb=ea+b?
Wskazówka
A+B ma wartości własne ±1 z wektorami [1;1] i [1;−1].
Odpowiedź
eA=(1011), eB=(1101), iloczyn (2111). eA+B=(cosh1sinh1sinh1cosh1)≈(1,5431,1751,1751,543). Równość eAeB=eA+B jest zagwarantowana, gdy AB=BA; bez przemienności zwykle zawodzi: tu AB=(1000)=BA=(0001). Przy mnożeniu szeregów kolejność czynników ma znaczenie.
4 Wejście, wyjście i transmitancja
Układ sterowany ma wejście u(t) (siła, napięcie, ciąg silnika) i mierzone wyjście y(t):
Model w przestrzeni stanów
x˙=Ax+Bu,y=Cx.
Rozwiązanie (wzór Duhamela, odpowiednik czynnika całkującego z lekcji 4.1):por. Boyce i DiPrima §7.9
x(t)=eAtx0+∫0teA(t−τ)Bu(τ)dτ.
Po transformacie Laplace'a przy x0=0: (sI−A)X=BU, więc H(s)=C(sI−A)−1B. Przed skróceniem mianownik H to det(sI−A): bieguny transmitancji są wartościami własnymi macierzy A. Zwykle są to wszystkie wartości własne, ale licznik może skrócić któryś czynnik; wtedy mod znika z H(s), choć dalej jest w układzie (sterowalność i obserwowalność, 4.1 Sprzężenie od stanu, lokowanie biegunów i sterowalność i 4.2 Obserwator stanu i obserwowalność). Układ jest stabilny, gdy wszystkie wartości własne mają ujemną część rzeczywistą.
Feynman podkreśla, że ta sama matematyka opisuje bardzo różne układy: masy na sprężynach, obwody elektryczne, wahadła.FLP I-49-5 Dla układów n-tego rzędu łatwiej pracować z macierzami niż z jednym równaniem wysokiego rzędu: komputer liczy wartości własne i eAt w ułamku sekundy, a model może mieć wiele wejść i wyjść naraz.
Przykład 4.1 Od macierzy do transmitancji
Dla oscylatora my¨+γy˙+ky=u ze stanem [y;y˙] oblicz H(s)=C(sI−A)−1B.
Sprawdzenie: to ta sama transmitancja co w lekcji 4.4 ✓; bieguny to wartości własne A z przykładu 1.1 ✓.
Zadania · część 4
4 zadania · ok. 35 min
Oblicz H(s) dla A=(0−21−3), B=[0;1], C=(10).
Odpowiedź
s2+3s+21, bieguny −1 i −2: stabilny.
Czy układ x˙=(13−2−4)x jest stabilny, mimo że jeden z elementów przekątnej jest dodatni?
Odpowiedź
Ślad −3, wyznacznik −4+6=2, wartości własne −1 i −2: stabilny. O stabilności decydują wartości własne, a nie znaki pojedynczych elementów.
Wzorem Duhamela znajdź odpowiedź x˙=−2x+u, x(0)=0, na skok u=1.
Odpowiedź
x=∫0te−2(t−τ)dτ=21(1−e−2t). Wartość ustalona 21=H(0) dla H=s+21 ✓.
Pokaż, że układ 2×2 jest stabilny wtedy i tylko wtedy, gdy trA<0 i detA>0.
Wskazówka
λ1+λ2=trA, λ1λ2=detA. Rozważ osobno pierwiastki rzeczywiste i zespolone.
Odpowiedź
Pierwiastki zespolone σ±iω: det=σ2+ω2>0 zawsze, a tr=2σ, więc stabilność ⟺tr<0. Pierwiastki rzeczywiste: oba ujemne ⟺ suma ujemna i iloczyn dodatni. W obu przypadkach warunek to trA<0 i detA>0. Dla n>2 to już nie wystarcza; ogólny test daje kryterium Routha (2.2 Bieguny i zera pętli zamkniętej, linie pierwiastkowe).
5 Błędne intuicje
„Stan to położenie.”
Stan musi wystarczyć do przewidzenia przyszłości. Dla układu drugiego rzędu to położenie i prędkość: z samego położenia nie wiadomo, w którą stronę ciało się porusza.
„eAt to macierz z elementami eaijt.”
Nie, nawet dla macierzy diagonalnej: poza przekątną e0⋅t=1, a w eAt stoją tam zera. Dla diagonalnej zgadza się tylko przekątna. Ogólnie eAt to szereg potęg macierzy; np. dla (0010) wychodzi (10t1), a nie (11et1).
„eAeB=eA+B.”
Gwarantuje ją dopiero AB=BA (zadanie 3.5).
„Dodatni element na przekątnej A oznacza niestabilność.”
Liczą się wartości własne (zadanie 4.2).
„Układ z n zmiennymi stanu ma n niezależnych sposobów drgania.”
Ma n wartości własnych; rzeczywiste dają mody bez drgań, a zespolone przychodzą w parach i jedna para to jeden mod drgań. Dwie masy na sprężynach: stan 4-wymiarowy, dwa mody (zadanie 2.5).
6 Sprawdź się
1 Jak zapisać y′′+py′+qy=0 jako układ pierwszego rzędu?
x=[y;y′], A=(0−q1−p).
2 Jaką postać ma rozwiązanie x˙=Ax dla diagonalizowalnej A?
∑ckvkeλkt, gdzie (λk,vk) to pary własne.
3 Jak wyznaczyć stałe ck?
Rozkładając x0 w bazie wektorów własnych.
4 Zdefiniuj eAt.
I+At+2!(At)2+…; wtedy x=eAtx0.
5 Jak policzyć eAt dla A=VDV−1?
VeDtV−1, z eλkt na przekątnej eDt.
6 Jaki jest związek wartości własnych A z biegunami transmitancji?
Bieguny są pierwiastkami det(sI−A), czyli wartościami własnymi A; bez skróceń w H(s) to wszystkie wartości własne.
7 Kiedy układ 2×2 jest stabilny?
Gdy trA<0 i detA>0.
7 Karta wzorów i co dalej
Układy jednorodne
x˙=Ax; rząd n → stan [y;y′;…;y(n−1)]
x=∑ckvkeλkt, Avk=λkvk, x0=∑ckvk
λ=σ±iω: spirala, eσtcosωt, eσtsinωt
eAt=∑k!(At)k=VeDtV−1=L−1{(sI−A)−1}
(0010)→(10t1); (0ω−ω0)→ obrót o ωt
Wejście i wyjście
x˙=Ax+Bu, y=Cx
x(t)=eAtx0+∫0teA(t−τ)Bu(τ)dτ
H(s)=C(sI−A)−1B; bieguny ⊆ wartości własne A (równe, gdy nic się nie skraca)
stabilność: Reλk<0; 2×2: trA<0, detA>0
eAeB=eA+B gdy AB=BA
Do przeczytania w podręcznikach
W. E. Boyce, R. C. DiPrima, Elementary Differential Equations and Boundary Value Problems: 7.1 (wprowadzenie do układów), 7.5 (układy o stałych współczynnikach), 7.6 (zespolone wartości własne), 7.7 (macierze fundamentalne i eAt), 7.8 (wielokrotne wartości własne), 7.9 (układy niejednorodne).
Feynman, t. I, 25-4 (analogie), 49-4 i 49-5 (wahadła sprzężone, układy liniowe i mody).