Γραμμικά συστήματα Η γενική μορφή ενός τέτοιου συστήματος είναι Α.Χ=Β - όπου Α είναι ένας (m x n) πίνακας, ο οποίος περιέχει τους συντελεστές των αγνώστον. - όπου Χ είναι ένας (n x 1) πίνακας που περιέχει τους αγνώστους του συστήματος - όπου Β είναι ένας (m x 1) πίνακας που περιέχει τους σταθερους όρους του συστήματος αν m=n=3 a 1,1 a 1, a 1,3 a,1 a, a,3. a 3,1 a 3, a 3,3 x 1 x x 3 b 1 b b 3 Η λύση ενός γραμμικού συστήματος με το Mathematica Άσκηση 1 x + y = x - y = 0 Λύση 1η με την εντολή Solve[...] In[1]:= Solve[{x + y, x - y 0}, {x, y}] Out[1]= {{x 1, y 1}}
lecture6.nb Λύση η με την εντολή LinearSolve[A, B] LinearSolve[A, B] Δίνει τη λύση του συστήματος Α.Χ = Β Η εξίσωση και η λύση με την μορφή τις πίνακες 1 1 1-1 x y = 0 A.X=B A= 1 1 1-1, X= x y, B = 0 In[]:= MatrixForm /@ {A = {{1, 1}, {1, -1}}, X = {{x}, {y}}, B = {{}, {0}}} Out[]= 1 1 1-1, x y, 0 In[3]:= LinearSolve[A, B] Out[3]= {{1}, {1}} Λύση 3η Η λύση με το αντίστροφο πίνακα Α -1 Α.Χ = Β Α -1.Α.Χ = Α -1.Β Ι.Χ = Α -1.Β Χ = Α -1.Β
lecture6.nb 3 In[4]:= Inverse[A].B Out[4]= {{1}, {1}} έχουμε λύση {x,y}={1,1} x=1, y=1 Λύση 4η Η λύση με την μέθοδο απαλοιφής Gauss Jordan Σε πρώτο βήμα κατασκευάζεται ο επεκταμένος ή επαυξημένος (extended) πίνακας [A B] = 1 1 1-1 0 και μετά κάνουμε απαλοιφής (Gauss Jordan ) για να έχουμε ελαττωμένη κλιμακωτή μορφή γραμμών (ε.κ.μ.γ.) για αυτο επαυξημένο πίνακα. Αυτό γίνεται με την χρήση την εντολή RowReduce πάνο σε αυτό το πίνακα. RowReduce[M] Δίνει την ελαττωμένη κλιμακωτή μορφή γραμμων του πίνακα Μ In[5]:= MatrixForm /@ {A = {{1, 1}, {1, -1}}, B = {{}, {0}}} Out[5]= 1 1 1-1, 0 In[6]:= AB = Join[A, B, ]; MatrixForm[AB] Out[6]//MatrixForm= 1 1 1-1 0
4 lecture6.nb In[7]:= RowReduce[AB] // MatrixForm Out[7]//MatrixForm= 1 0 1 0 1 1 Μπορούμε να διαβάσουμε την λύση x = 1 και y = 1 απευθείας από αυτό το πίνακα, να θυμόμαστε ότι αυτός ο πίνακας αντιπροσωπεύει την εξίσωση 1 0 0 1 x y = 1 1 x y = 1 1 x=1, y=1 το οποίο είναι ισοδύναμο με την αρχική μας εξίσωση λόγω του γεγονότος ότι οι στοιχειώδείς πράξεις για το Gauss Jordan απαλοιφής δεν αλλάζουν την λύση ενός σύστηματος των εξισώσεων. κάνουμε επαλήθευση για την λύση x=1, y=1 In[8]:= A.X B /. {x 1, y 1} Out[8]= True In[9]:= Reduce[eqns, vars] Επιλύει τις εξισώσεις eqns ως προς τις μεταβλητές vars Άσκηση a x + y = x - a y = 0 Reduce[{a * x + y, x - a * y 0}, {x, y}, Reals] Out[9]= x a 1 + a && y - a x
lecture6.nb 5 Ιδιοτιμές και ιδιοδιανύσματα. Όταν έχουμε ειδική περίπτωση A.X=λX όπου Α= a 11 a 1 a 1 a, X= x y και λ είναι αριθμό (A-λI).X=0 το σύστημα αυτό λέγεται ομογενείς σύστημα για να έχουμε μη μηδενική λύση πρέπει να έχουμε det(a-λi)=0 Άσκηση 3 Αν έχουμε το πίνακα Α = 3 1 να βρείτε ιδιοτιμές και ιδιοδιανύσματα του. In[10]:= A = {{3, 1}, {, }}; MatrixForm[A] Out[10]//MatrixForm= 3 1 A-λI
6 lecture6.nb In[11]:= A - λ * IdentityMatrix[] // MatrixForm Out[11]//MatrixForm= 3 - λ 1 - λ Χαρακτηριστικό πολυώνυμο του πίνακα Α είναι Det(A-λI) ή A-λI In[1]:= A - λ * IdentityMatrix[] // Det Out[1]= 4-5 λ + λ ή διαφορετικά In[13]:= CharacteristicPolynomial[A, λ] Out[13]= 4-5 λ + λ Ιδιοτιμές είναι λυσεις της εξίσωσης 4-5 λ + λ = 0 In[14]:= Solve[CharacteristicPolynomial[A, λ] 0] Out[14]= {{λ 1}, {λ 4}} In[15]:= Όταν λ=1 έχουμε A - λ * IdentityMatrix[] /. λ 1 // MatrixForm Out[15]//MatrixForm= 1 1 Η εξίσωση (A-I).X=0 (που αντιστοιχεί στην εξίσωση A.X=X ) πέρνει την μορφή 1 1 x y = 0 0
lecture6.nb 7 βλέπουμε ότι έχουμε x+y=0 => x= -y => αν πέρνουμαι x=1 βρίσκουμε y= - => έχουμαι ιδιοδιάνυσμα x y 1 - πού αντιστοιχεί ιδιοτιμή λ=1 In[16]:= Όταν λ=4 έχουμε A - λ * IdentityMatrix[] /. λ 4 // MatrixForm Out[16]//MatrixForm= -1 1 - Η εξίσωση (A-4I).X=0 (που αντιστοιχεί στην εξίσωση A.X=4X ) πέρνει την μορφή -1 1 - x y = 0 0 βλέπουμε ότι έχουμε -x+y=0 => y= x => αν πέρνουμαι x=1 βρίσκεται y= 1 => έχουμε ιδιοδιάνυσμα x y 1 1 πού αντιστοιχεί ιδιοτιμή λ=4 1 Τελικά έχουμε ιδιοδιανύσματα -, 1 1 αντιστοιχούν στις ιδιοτιμές λ=1,4 αντίστοιχα. που Γενικά έχουμε άπειρο σύνολο ιδιοδιανυσμάτων k k, όπου k είναι οποιοδήποτε μη μηδενικό - k k
8 lecture6.nb αριθμό, που αντιστοιχούν στις ιδιοτιμές λ=1,4 αντίστοιχα. Άλλος τρόπος εύρεσης των ιδιοδιανύσμάτων για το πίνακα Α. Γενικά το σύνολο των λύσεων του συστήματος A.X=0 λέγεται μηδενοχώρος (null space) του Α και συμβολίσεται με null(a). Η εντολή NullSpace[Α] δίνει η λιστά διανυσμάτων τα οποία είναι βάση για το μηδενοχώρο του πίνακα Α. Στη δική μας περίπτωση έχουμε πίνακα A-λΙ με λ=1 και λ=4 Να υπολογίζουμε το ιδιοδιανύσμα του πίνακα Α που αντιστοιχεί στην ιδιοτιμή 1 με την εντολή NullSpace. In[17]:= NullSpace[A - 1 * IdentityMatrix[]] Out[17]= {{-1, }} βρίκαμε ιδιοδιανύσμα {-1,}, κάνουμε επαλήθευση In[18]:= (A - 1 * IdentityMatrix[]).{-1, } Out[18]= {0, 0} Να υπολογίζουμε το ιδιοδιανύσμα του πίνακα Α που αντιστοιχεί στην ιδιοτιμή 4 με την εντολή NullSpace. In[19]:= NullSpace[A - 4 * IdentityMatrix[]] Out[19]= {{1, 1}} βρίκαμε ιδιοδιανύσμα {1,1}, κάνουμε επαλήθευση
lecture6.nb 9 In[0]:= (A - 4 * IdentityMatrix[]).{1, 1} Out[0]= {0, 0} Οι ιδιοτιμές του πίνακα Α θα μπορούσαν να υπολογιστούν επίσης με την συνάρτηση Eigenvalues[A]. Eigenvalues[A] Ιδιοτιμές του τετραγωνικού πίνακα Α In[1]:= Eigenvalues[A] Out[1]= {4, 1} Τα ιδιοδιανύσματα του πίνακα Α θα μπορούσαν να υπολογισθούν και με την συνάρτηση Eigenvectors[A]. Eigenvectors[A] Ιδιοδιανύσματα του τετραγωνικού πίνακα Α In[]:= {Eigenvalues[A], Eigenvectors[A]} Out[]= {{4, 1}, {{1, 1}, {-1, }}} Παρατηρούμε ότι το πρώτο ιδιοδιάνυσμα αντιστοιχεί στην πρώτη ιδιοτιμή ενώ το δέυτερο ιδιοδιάνυσμα αντιστοιχεί στην δέυτερη ιδιοτιμή. Θα μπορούσαμε επίσης να έχουμε και τις ιδιοτιμές και τα ιδιοδιανύσματα μαζί με την μιά συνάρτηση Eigensystem[Α] Eigensystem[A] Ιδιοτιμές και ιδιοδιανύσματα του τετραγωνικού πίνακα Α
10 lecture6.nb In[3]:= Eigensystem[A] Out[3]= {{4, 1}, {{1, 1}, {-1, }}} Η παραπάνω συνάρτηση Eigensystem[A] επιστρέφει την λίστα με τα στοιχεία λίστες. Η πρώτη λίστα {4,1} περιέχει τις ιδιοτιμές του πίνακα Α, ενώ η δεύτερη λίστα {{1,1},{-1,}} περιέχει τα ιδιοδιανύσματα που ατιστιχούν στις ιδιοτιμές της πρώτης λίστας {4,1}. Διαγωνιοποίηση Έχει παρατηρηθεί ότι ένα ιδιοδυανισμα X i είναι τέτοιο ώστε (A-λ i I)X i =0, for i=1, μπορεί να συνδέεται με κάθε ιδιοτιμή λ i. Αυτή η σχέση μπορεί να εκφραστεί στην εναλλακτική μορφή A.X i =λ i X i (1) όπου i = 1,, Α = a 11 a 1 a 1 a, X i = x i y i Αν θα πάρουμε ένα τετραγωνικό πίνακα (τάξης n=) που συμβολίζεται με X, του οποίου οι στήλες X i είναι τα ιδιοδιανύσματα του A, τότε οι εξισώσεις (1) μπορούν να εκφραστούν με τη μιά εξίσωση της μορφής A.X=X.Λ ()
lecture6.nb 11 όπου Λ είναι ένας διαγώνιος πίνακας των οποίων διαγώνια στοιχεία είναι οι ιδιοτιμές του Α Λ= λ 1 0 0 λ Έχει αποδειχθεί ότι τα ιδιοδιανύσματα που σχετίζονται με διακριτές ιδιοτιμές είναι γραμμικά ανεξάρτητες (Θεώρημα). Ως εκ τούτου, ο πίνακας X θα είναι ομαλός (nonsingular) εάν οι λ i θα είναι διαφορετική μεταξύ τους. Αυτό σημαίνει ότι ο πίνακας Χ έχει αντίστροφο τού X -1. Τώρα, αν και οι δύο πλευρές της εξίσωσης () πολλαπλασιάζούμε από δεξία πλέυράμε με το X -1 έχουμαι X -1.A.X=Λ (3) Έτσι, με τη χρήση του πίνακα ιδιοδιανυσμάτων και αντίστροφου του, είναι δυνατόν να μετατραπεί κάθε πίνακα Α με διακριτές ιδιοτιμές σε μια διαγώνια πίνακα του οποίου η διαγώνια στοιχεία είναι οι ιδιοτιμες του Α. Ο μετασχηματισμός που εκφράζεται από (3) αναφέρεται ως το Διαγωνιοποίηση (diagonalization) του πίνακα Α. Αν οι ιδιοτιμές δεν είναι διακριτές, η διαγωνοποίηση του πίνακα A δεν είναι δυνατή. Για παράδηγμα για το πίνακα 3 1 0 3 οι ιδιοτιμές είναι λ 1 =λ = 3 για αυτό δεν μπορεί να είναι διαγωνιοποίηση.
1 lecture6.nb Ασκηση 4 Να κάνετε διαγωνιοποίηση του πίνακα Α Α= 3 1 α 11 0 0 α In[4]:= με τη βοήθεια του Mathematica Λύση A = {{3, 1}, {, }}; MatrixForm[A] Out[4]//MatrixForm= 3 1 In[5]:= Eigensystem[A] Out[5]= {{4, 1}, {{1, 1}, {-1, }}} In[6]:= λ = Eigensystem[A][[1]] Out[6]= {4, 1} In[7]:= (Λ = DiagonalMatrix[λ]) // MatrixForm Out[7]//MatrixForm= 4 0 0 1
lecture6.nb 13 In[8]:= X = Transpose[Eigensystem[A][[]]]; MatrixForm[X] Out[8]//MatrixForm= 1-1 1 In[9]:= Inverse[X].A.X // MatrixForm Out[9]//MatrixForm= 4 0 0 1 Ο παραπάνος πίνακας είναι διαγώνιος και τα στοιχεία στην κύρια διαγώνιο είναι οι ιδιοτιμές του Α. Με εντολή Eigensystem βλέπουμε ότι πίνακα Α και πίνακα Χ -1.Α.Χ έχουν τις ίδιες ιδιοτιμές {4,1}, όμως τα ιδιοδιανύσματα τους διαφέρουν. In[30]:= {Eigensystem[A], Eigensystem[Inverse[X].A.X]} Out[30]= {{{4, 1}, {{1, 1}, {-1, }}}, {{4, 1}, {{1, 0}, {0, 1}}}} Οι πίνακες Α και Χ -1.Α.Χ (το οπόιο είναι και Λ) είναι όμοιοι. Θεώρημα Hamilton-Caley Κάθε τετραγωνικό πίνακα Α ικανοποιεί τη δική του χαρακτηριστική εξίσωση det(a-λi)=0. (αν θα αλλάξουμε λ με το πίνακα Α) Ασκηση 5 Δείξτε ότι ο πίνακας
14 lecture6.nb A= 3-1 ικανοποιεί τη δική του χαρακτηριστική εξίσωση. Η χαρακτηριστική εξίσωση χ(λ)=0 για το λ, ισχύει και για το πίνακα A, δηλαδή και χ(a)=0. Λύση In[31]:= Clear[A, λ] In[3]:= A = {{3, -}, {1, }}; MatrixForm[A] Out[3]//MatrixForm= 3-1 Χαρακτηριστικό πολυώνυμο του πίνακα Α είναι In[33]:= Det[A - λ * IdentityMatrix[]] Out[33]= 8-5 λ + λ In[34]:= MatrixForm /@ {IdentityMatrix[], zero = {{0, 0}, {0, 0}}} Out[34]= 1 0 0 1, 0 0 0 0 In[35]:= Out[35]= 8 * IdentityMatrix[] - 5 * A + A.A == zero True Ως εκ τούτου, χ (Α) = 0 και ο Hamilton-Cayley θεώρημα έχει επαληθευτεί για το πίνακα Α. Ασκηση 6
lecture6.nb 15 Ασκηση Χρησιμοποιήστε το θεώρημα Hamilton-Cayley για να βρείτε το αντίστροφο του πίνακα Α A= 1 0 1-1 1-3 4 Λύση In[36]:= Clear[A, λ] In[37]:= A = {{1, 0, 1}, {-1, 1, -3}, {,, 4}}; Out[37]//MatrixForm= MatrixForm[A] 1 0 1-1 1-3 4 Χαρακτηριστικό πολυώνυμο του πίνακα Α είναι In[38]:= Det[A - λ * IdentityMatrix[3]] Out[38]= 6-13 λ + 6 λ - λ 3 Από το θεώρημα Hamilton-Cayley έχουμαι 6 I - 13 A + 6 A - A 3 = 0 I = A 3-6 A + 13 A 6 A -1 = A -6 A +13 * I 6
16 lecture6.nb In[39]:= A HC = Out[39]//MatrixForm= (MatrixPower[A, ] - 6 * A + 13 * IdentityMatrix[3]) / 6; MatrixForm[A HC ] 5 3-1 3-3 1 3 1 3-1 3 επαλήθευση - 1 6 1 3 1 6 In[40]:= Out[40]= A HC == Inverse[A] True Ασκηση 7 Να ορίζεται την συνάρτηση για το πίνακα Vandermonde και να ελέγξτε ότι, για κάθε n, ισχύει η ακόλουθη ταυτότητα για την ορίζουσα του det 1 1 1... 1 x 1 x x 3... x n x 1 x x 3... x n.............. x 1 n-1 x n-1 x 3 n-1... x n n-1 n-1 = Π x i - x j j=1 i>j αν x =x 1 έχουμε det(...)=0 βγένει ότι έχουμε factor (x -x 1 ) κ.τ.ε.
lecture6.nb 17 κ τ ε Λύση Ορισμός της πίνακας χρησιμοποιώντας Array[] και Which[] In[41]:= Clear[A, n] In[4]:= A[n_] := Array Which #1 1, 1, #1 >=, x #1-1 # &, {n, n} Ας δούμε πως Α πράγματι παράγει πίνακες με αυτή μορφή. In[43]:= A[3] // MatrixForm Out[43]//MatrixForm= 1 1 1 x 1 x x 3 x 1 x x 3 ή διαφορετικά In[44]:= Clear[A] In[45]:= A[n_] := Array Which #1 1, x # #1-1 &, {n, n}
18 lecture6.nb In[46]:= A[3] // MatrixForm Out[46]//MatrixForm= 1 1 1 x 1 x x 3 x 1 x x 3 ή διαφορετικά μόνο με το Array[...] In[47]:= Clear[A] In[48]:= A[n_] := Array x # #1-1 &, {n, n} In[49]:= A[3] // MatrixForm Out[49]//MatrixForm= 1 1 1 x 1 x x 3 x 1 x x 3 ή διαφορετικά με το Table[...] In[50]:= Clear[A, n] In[51]:= A[n_] := Table Which i 1, 1, i >=, x j i-1, {i, 1, n}, {j, 1, n} ; In[5]:= A[3] // MatrixForm Out[5]//MatrixForm= 1 1 1 x 1 x x 3 x 1 x x 3 ή διαφορετικά με το Table[...]
lecture6.nb 19 In[53]:= Clear[A, n] In[54]:= A[n_] := Table x j i, {i, 0, n - 1}, {j, 1, n} ; In[55]:= A[3] // MatrixForm Out[55]//MatrixForm= 1 1 1 x 1 x x 3 x 1 x x 3 Ορισμός της συνάρτησης για την δεξιά μεριά Π x i - x j n-1 j=1 i>j In[56]:= result[n_] := Product x i - x j, {j, 1, n - 1}, {i, j + 1, n} In[57]:= result[3] Out[57]= (-x 1 + x ) (-x 1 + x 3 ) (-x + x 3 ) In[58]:= Table[Det[A[i]] result[i] // Simplify, {i, 1, 7}] Out[58]= {True, True, True, True, True, True, True}