09 - Szinguláris egyenletrendszerek ☠

Két egyforma ellenállásokból álló csillagkapcsolást rombusz alakban összekapcsolunk. Az így kapott áramkör négy kimenetén folyó áram a kimenetekre kapcsolt elektromos potenciál függvényében a következő egyenletekkel számolható ki:

\begin{align} I_1 &=& -\frac{2}{R}U_1 +\frac{1}{R}U_2 +\frac{1}{R}U_4 \\ I_2 &=& \frac{1}{R}U_1 -\frac{4}{R}U_2 +\frac{1}{R}U_3 +\frac{2}{R}U_4 \\ I_3 &=& \frac{1}{R}U_2 -\frac{2}{R}U_3 +\frac{1}{R}U_4 \\ I_4 &=& \frac{1}{R}U_1 +\frac{2}{R}U_2 +\frac{1}{R}U_3 -\frac{4}{R}U_4 \end{align}

Számoljuk ki a potenciálokat, ha megmértük, hogy $I_1=4, I_2=4, I_3=0, I_4=-8$ [Amper] és $R=1$ [Ohm]!

Keressük meg az egyenletrendszer mátrixának sajátértékeit! Ha van nulla sajátérték, tegyük el a hozzá tartozó sajátvektort $v$-be, és számoljuk ki $A\cdot(U + c v)$ értékét, ahol $U$ a megoldásként kapott $U_i$ értékekből alkotott vektor! Mit figyelhetünk meg, és mivel magyarázhatjuk? Hány megoldása van az egyenletrendszernek?

Előállítható-e az egyenletrendszer valamely szempont szerint kiszemelt megoldása az $I_i$ értékekből alkotott $I$ vektor függvényében $M\cdot I$ alakban, és mi $M$ ekkor?

Megoldás

In [1]:
%pylab inline
Populating the interactive namespace from numpy and matplotlib

Mivel mindegyik egyenlet lineáris, felírható mátrixis alakban az alábbi módon: $$ \left(\begin{array}{cccc} -2 & 1 & 0 & 1\\ 1 & -4 & 1 & 2\\ 0 & 1 & -2 & 1\\ 1 & 2 & 1 & -4 \end{array}\right) \left(\begin{array}{c} U_1 \\ U_2 \\ U_3 \\ U_4 \end{array}\right) = R \left(\begin{array}{c} I_1 \\ I_2 \\ I_3 \\ I_4 \end{array}\right) $$ Így, a megoldása a numpy csomag solve() metódusával egyszerűen lehetséges:

In [8]:
A = matrix([[-2, 1, 0, 1], [1, -4, 1, 2], [0, 1, -2, 1], [1, 2, 1, -4]])
I = matrix([[4], [4], [0], [-8]])
U = solve(A, I)
U
Out[8]:
matrix([[-0.66666667],
        [ 0.33333333],
        [ 1.33333333],
        [ 2.33333333]])

Az $A$ mátrix sajátértékproblémájának megoldása az eig() függvénnyel lekérdezhető:

In [9]:
eig(A)
Out[9]:
(array([  4.44089210e-16,  -2.00000000e+00,  -4.00000000e+00,
         -6.00000000e+00]),
 matrix([[ -5.00000000e-01,  -7.07106781e-01,   5.00000000e-01,
           -1.04672831e-16],
         [ -5.00000000e-01,   1.07552856e-16,  -5.00000000e-01,
           -7.07106781e-01],
         [ -5.00000000e-01,   7.07106781e-01,   5.00000000e-01,
           -1.04672831e-16],
         [ -5.00000000e-01,   1.63064007e-16,  -5.00000000e-01,
            7.07106781e-01]]))

Mint látható, az első sajátértéke sokkal kisebb a többinél, vagyis valószínűleg csak a kerekítés miatt nem nulla. Vegyük az ehhez tartozó $v$ vektort, és végezzük az a fent írt műveletet:

In [36]:
v = eig(A)[1][:,0]
A*(U + rand()*v)
Out[36]:
matrix([[  4.00000000e+00],
        [  4.00000000e+00],
        [  8.88178420e-16],
        [ -8.00000000e+00]])

Ez pont az egyenlet inhomogén részét tartalmazó $I$ vektor, vagyis az $\left(U + c v \right)$ vektor is kielégíti az egyenletet. Ez matematikailag azzal a tétellel magyarázható, miszerint egy inhomogén lineáris egyenlet megoldásához hozzáadva az inhomogén egyenlet megoldásának tetszőleges többszörösét, az is megoldás lesz, ezáltal, végtelen megoldása lesz az egyenletnek.

Fizikailag pedig azt a jelentést hordozza, hogy a potenciálfüggvény nem tetszőlegesen eltolható egy konstanssal, hiszen a 0 sajátértékhez tartozó vektor minden komponense egyenlő.

Tegyük fel, hogy az egyik megoldásvektor előállítható az áramokból valamilyen $U = M \cdot I$ módon! Mivel $U$ megoldása az egyenletnek, ezért biztos hogy teljesül, hogy $A \cdot U = I$, amit behelyettesítve, az kapjuk, hogy $U = M \cdot A \cdot U$, vagyis az $M \cdot A$ mátrixszorzat az egységmátrixot kell adnia, tehát $M$ és $A$ inverzek. Mivel azonban $A$-nak van 0 sajátértéke, ezért determinánsa is 0, így tehát nem lehet inverze. Ez azt jelenti, hogy nem létezik ilyen $M$ mátrix.