Έσʐʙ ʐο γραμμικό...

38
Έστω το γραμμικό σύστημα: Το ίδιο σύστημα σε μορφή πινάκων: 3 5 7 3 2 y x y x B X A y x 3 7 5 1 3 2 όπου A Η μήτρα ή πίνακας του συστήματος B Η μήτρα ή πίνακας των σταθερών όρων X Η μήτρα ή πίνακας των αγνώστων του συστήματος

Transcript of Έσʐʙ ʐο γραμμικό...

Page 1: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Έστω το γραμμικό σύστημα:

Το ίδιο σύστημα σε μορφή πινάκων:

35

732

yx

yx

BXA

y

x

3

7

51

32

όπου

A Η μήτρα ή πίνακας του συστήματος

B Η μήτρα ή πίνακας των σταθερών όρων

X Η μήτρα ή πίνακας των αγνώστων του συστήματος

Page 2: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ο τυχών τετραγωνικός πίνακας διαστάσεων 2x2 έχει αντίστροφο πίνακα ιδίων διαστάσεων, τον αν και μόνο αν ισχύουν οι σχέσεις 1A

2

11 IAAAA

10

012I

22 II

Ο μοναδιαίος πίνακας διαστάσεων 2x2 είναι ο

και έχει την ιδιότητα να αφήνει αναλλοίωτο κατά τον πολλαπλασιασμό κάθε τετραγωνικό πίνακα 2x2

Page 3: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Η λύση του συστήματος, εφ’ όσον η μήτρα του συστήματος έχει όντως αντίστροφο, τον

BAX

BAXI

BAXAABXA

1

1

2

11

A1A

Page 4: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Μοναδιαίος πίνακας για διαστάσεις 3x3 και 4x4 :

nxnnxnnxn nn II

100

010

001

3I

1000

0100

0010

0001

4I

Για οποιονδήποτε τετραγωνικό πίνακα διαστάσεων nxn ισχύει:

Εξ’ ορισμού, ο τυχόν τετραγωνικός πίνακας Α διαστάσεων nxn έχει αντίστροφο όταν:

nIAAAA 11

Page 5: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ως ορίζουσα ενός τυχόντος 2x2 πίνακα

A

2Dορίζεται ο αριθμός

και συμβολίζεται ως: det(A) ή

Ένας τυχών πίνακας 3x3

333231

232221

131211

A

3231

2221

13

3331

2321

12

3332

2322

113

D

Η ανάπτυξη της ορίζουσάς του ως προς την πρώτη γραμμή:

Page 6: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

333231

232221

131211

A

3231

2221

13

3331

2321

12

3332

2322

113

D

ji

ji, )1( α Πρόσημο του

Page 7: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Για έναν τυχόντα 4x4 πίνακα:

44434241

34333231

24232221

14131211

A

Ανάπτυξη ορίζουσας ως προς τη δεύτερη στήλη του πίνακα:

343331

242321

141311

42

444341

242321

141311

32

444341

343331

141311

22

444341

343331

242321

124

D

Σημαντική σημείωση: Ο υπολογισμός της ορίζουσας είναι ανεξάρτητος της γραμμής ή της στήλης ως προς την οποία θα αναπτυχθεί.

Page 8: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

ΘΕΩΡΗΜΑ Ένας τετραγωνικός πίνακας έχει αντίστροφο, αν και μόνο αν η ορίζουσά του είναι διάφορη του μηδενός.

Υπενθυμίζεται ότι η ορίζουσα ενός πίνακα είναι βαθμωτό μέγεθος.

Η ορίζουσα τυχόντος τετραγωνικού πίνακα A συμβολίζεται ως det(Α) ή ως

nnnn

n

n

21

22221

11211

Page 9: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Έστω Α ένας τυχόν τετραγωνικός πίνακας π.χ. ο

Τότε η ορίζουσά του υπολογίζεται στο Matlab ως εξής

Page 10: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο
Page 11: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Έστω ένας τυχών μη τετραγωνικός πίνακας

Εάν η det() δράσει σε μη τετραγωνικό πίνακα, η ροή της εκτέλεσης του προγράμματος διακόπτεται βίαια.

Page 12: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο
Page 13: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Η σύγκριση

γίνεται σειριακά από αριστερά προς τα δεξιά: πρώτα γίνεται η

και μόνο εάν αυτή ισχύει επιτελείται η

Page 14: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Η αντιστροφή της σειράς των λογικών συνθηκών οδηγεί σε σφάλμα όταν ο πίνακας Α δεν είναι τετραγωνικός

Page 15: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Προτείνεται η χρήση εμφωλεασμένων if όταν η ν+1 συνθήκη απαιτεί την ισχύ της ν-οστής. Εν προκειμένω:

Απαιτείται ιδιαίτερη προσοχή στη στοίχιση των εμφωλεασμένων if

Page 16: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Το αποτέλεσμα της εκτέλεσης υποδηλώνει ορίζουσα διάφορη του μηδενός, ενώ τα Μαθηματικά σαφώς υπαγορεύουν ότι det(N)=0

Page 17: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Η συνάρτηση inv() του Matlab

Υπολογισμός αντιστρόφου πίνακα

Για τον αντίστροφο ενός πίνακα Ισχύουν υποχρεωτικά οι εξής ιδιότητες:

Page 18: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ο υπολογισμός του αντιστρόφου δεν είναι εφικτός αν ο πίνακας δεν είναι τετραγωνικός

Η εκ παραδρομής εφαρμογή της συνάρτησης inv σε έναν μη-τετραγωνικό πίνακα, διακόπτει βίαια τη ροή του αντίστοιχου προγράμματος.

Page 19: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Λύση γραμμικού συστήματος

Προσοχή! Είναι εντελώς λάθος να γράψει κανείς

Page 20: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ένα προς επίλυση γραμμικό σύστημα τεσσάρων εξισώσεων με τέσσερις αγνώστους

lzw

zlwk

kwlz

lkwz

75.37.03

68569

5325.4

12397

Παρατηρούμε ότι το σύστημα δεν είναι στην παρούσα μορφή σωστά στοιχειοθετημένο, ώστε να μπορεί να λυθεί άμεσα με κώδικα Matlab

Page 21: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

5.37037.0

65968

55.432

12397

lkwz

lkwz

lkwz

lkwz

Αρχικά, αναδιατάσσουμε το σύστημα ώστε να έχει την ακόλουθη μορφή:

Page 22: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

BAX

Το αρχικό γραμμικό σύστημα εξισώσεων γράφεται σε μορφή πινάκων ως:

όπου είναι ο πίνακας ή η μήτρα του συστήματος

και η μήτρα των σταθερών όρων αυτού

A

B

7037.0

5968

5.4321

1397

A

5.3

6

5

12

B

Page 23: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Η φορμαλιστική λύση του προηγουμένου συστήματος είναι η

Η υλοποίηση αυτής της λύσης σε κώδικα Matlab είναι η

BAX 1

Page 24: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Για γραμμικά συστήματα μεγάλης τάξης έχουν αναπτυχθεί ειδικές τεχνικές επίλυσης αυτών που μελετώνται στην αριθμητική ανάλυση

Page 25: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Πολυώνυμο μηδενικού βαθμού: σταθερά 0

0

0 axa

Πολυώνυμο 1ου βαθμού: 10

0

1

1

0 axaxaxa

Ως πολυωνυμική συνάρτηση ή απλά ως πολυώνυμο

ορίζεται ο γραμμικός συνδυασμός των δυνάμεων μίας

ανεξάρτητης μεταβλητής, έστω x.

Page 26: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Πολυώνυμο 2ου βαθμού:

Πολυώνυμο nοστου βαθμού:

21

2

0

0

2

1

1

2

0 axaxaxaxaxa

nnn

nn

nnn

nn

axaxaxaxa

xaxaxaxaxa

1

2

2

1

10

01

1

2

2

1

10

...

...

Η συνέχεια μίας συνάρτησης εντός ενός συγκεκριμένου πεδίου ορισμού εντοπίζεται από την μη ύπαρξη κενών ή αλμάτων στη γραφική της παράσταση για αυτό το πεδίο

ορισμού.

Page 27: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Για την πλήρη περιγραφή ενός πολυωνύμου στο Matlab, απαιτείται η κατασκευή ενός πίνακα που περιέχει τους

συντελεστές του πολυωνύμου.

Η σειρά τοποθέτησης των συντελεστών εντός του πίνακα είναι από το μεγιστοβάθμιο μέχρι το σταθερό

όρο. Εάν κάποιος συντελεστής λείπει στη θέση του τοποθετείται το μηδέν.

5

54

5

6

10

41 23 xxx ]4,4[x

]5

54,

5

6,

10

41,1[

Page 28: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο
Page 29: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ο πίνακας x του πεδίου ορισμού αποτελείται από

8001 στοιχεία. Για να υψωθούν όλα τα στοιχεία του x στο τετράγωνο

απαιτούνται 8001 πολλαπλασιασμοί. Για να υπολογισθεί το

x.^3=(x.*x).*x απαιτούνται 2*8001 πολλαπλασιασμοί.

Συνολικά απαιτούνται 3*8001 πολλαπλασιασμοί= 24003

πολλαπλασιασμοί.

Page 30: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Βελτιωμένος, από πλευράς πολυπλοκότητας, κώδικας υπολογισμού πολυωνύμου

Page 31: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ο πίνακας x του πεδίου ορισμού αποτελείται πάλι από

8001 στοιχεία. Για να υψωθούν όλα τα στοιχεία του x

στο τετράγωνο απαιτούνται εκ νέου 8001 πολλαπλασιασμοί.

Δεδομένου του x.^2, για να υπολογισθεί ο x.^3=x.*(x.^2)

απαιτούνται μόνο 8001 πολλαπλασιασμοί.

Συνολικά απαιτούνται 2*8001=16002 δηλαδή 8001 λιγότεροι

πολλαπλασιασμοί.

Page 32: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Το κέρδος από την καλή σύνταξη του κώδικα αυξάνει ραγδαία, όσο αυξάνει ο βαθμός του πολυωνύμου.

Π.χ. για πολυώνυμο 11ου βαθμού και το ίδιο πεδίο ορισμού ο πρώτος τρόπος απαιτεί 528066 πολλαπλασιασμούς

ενώ ο δεύτερος μόνον 168021 πολλαπλασιασμούς.

Το Matlab υπολογίζει τα πολυώνυμα με τη συνάρτηση polyval:

Page 33: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο
Page 34: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο
Page 35: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Κατά την εκτέλεση του προγράμματος προέκυψε ότι

polywnymo(6001)=1.7764*10^(-15)

polywnymo(6002)=-0.0056

Επειδή οι ανωτέρω τιμές είναι ετερόσημες, το πολυώνυμο

ως συνεχής συνάρτηση θα μηδενίζεται υποχρεωτικά εντός

του ανοικτού διαστήματος (x(6001),x(6002)) χωρίς να

γνωρίζουμε ακριβώς που. Γι’ αυτό αποδίδουμε την ρίζα

στο άκρο όπου το πολυώνυμο έχει τη μικρότερη απόλυτη

τιμή δηλαδή το x(6001)

Page 36: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Η εγγενής συνάρτηση

roots του Matlab εντοπίζει

τις ίδιες ρίζες.

Στην roots ο χρήστης δεν απαιτείται να δώσει πεδίο ορισμού ενώ αυτή προσφέρει και μιγαδικές ρίζες. Π.χ. Επίλυση του πολυωνύμου: 302953 234 xxxx

Page 37: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Ο πίνακας synartisi έχει τις τιμές οποιασδήποτε συνεχούς συνάρτησης ορισμένης στον πίνακα x που περιέχει διαμέριση

επιθυμητού κλειστού διαστήματος

Page 38: Έσʐʙ ʐο γραμμικό σύσʐημα͘archimedes.ece.ntua.gr/arxeia_inputs/MN/2015-2016/... · 2016-10-01 · Έσʐʙ ʐο γραμμικό σύσʐημα͘ Το ίδιο

Το Matlab, όπως και οι περισσότερες γλώσσες προγραμματισμού,

παρέχει τη δυνατότητα δημιουργίας προγραμμάτων, τα οποία

αποθηκεύονται στον δίσκο και όταν καλούνται προσφέρουν

στον χρήστη τον πίνακα synartisi της προηγούμενης διαφάνειας

πρακτικά για οποιοδήποτε πίνακα πεδίου ορισμού.

Τα προγράμματα αυτά ονομάζονται επίσης «συναρτήσεις».