ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα 1 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ Ενότητα: ΜΑΘΑΙΝΟΝΤΑΣ ΤΟ MATLAB, ΜΕΡΟΣ Α Aναστασία Βελώνη Τμήμα Η.Υ.Σ
Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2
Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3
Σκοποί ενότητας Με την ολοκλήρωση αυτής της ενότητας, θα είστε σε θέση: Να μάθετε τα βασικά στοιχεία του MATLAB Μέρος Α 4
Περιεχόμενα ενότητας 1. Τι είναι το MATLAB 2. Πλεονεκτήματα και Μειονεκτήματα 3. Πλατφόρμες Υλοποίησης 4. Το περιβάλλον του MATLAB 5. Συναρτήσεις σε εργαλειοθήκες 6. Δουλεύοντας με το MATLAB 7. Πράξεις 8. Εντολές 5
MATLAB MATrix LABoratory Εργαστήριο Πινάκων
Τι είναι το MATLAB; (1) Λογισμικό υλοποίησης αλγορίθμων και διεξαγωγής υπολογισμών. Σύστημα αλληλεπίδρασης με το χρήστη για την πραγματοποίηση επιστημονικών υπολογισμών. Γλώσσα προγραμματισμού με δυνατότητες εξέλιξης στις απαιτήσεις κάθε χρήστη με προσθήκη βιβλιοθηκών συναρτήσεων και ειδικών εργαλείων (toolboxes). 7
Τι είναι το MATLAB; (2) To Matlab είναι μία high level language με πολλά εξειδικευμένα toolboxes ώστε να κάνει τη μελέτη μας ευκολότερη. Matlab <High Level Languages,such as C, Pascal, etc < Assembly 8
Πλεονεκτήματα του MATLAB Ευκολότερη εκμάθηση από μια γλώσσα προγραμματισμού. Βελτιστοποιημένος κώδικας για διεξαγωγή υπολογισμών με πίνακες. Γλώσσα προγραμματισμού για ανάπτυξη εφαρμογών και ταυτόχρονα λογισμικού υλοποίησης επιστημονικών υπολογισμών. Εύκολος εντοπισμός και διόρθωση λαθών. Φιλικό περιβάλλον επικοινωνίας με το χρήστη. 9
Μειονεκτήματα του MATLAB Εξειδικευμένη γλώσσα προγραμματισμού. Το λογισμικό MATLAB αναπτύχθηκε μόνο για διεξαγωγή επιστημονικων υπολογισμών κι έτσι δεν ενδείκνυται ή υποστηρίζει την ανάπτυξη άλλου είδους εφαρμογών, π.χ. επεξεργασία κειμένου. Οι αναπτυσσόμενες εφαρμογές υστερούν σε απόδοση από την άποψη χρόνου εκτέλεσης σε σχέση με αντίστοιχες που αναπτύσσονται με τις κλασικές γλώσσες προγραμματισμού (C, C++, Fortran). 10
Ιστορικά στοιχεία 1970 s : Οι Jack Little και Cleve Moler γράφουν την πρώτη έκδοση σε Fortran. Αρχικά είχε εκπαιδευτική χρήση. Έγινε εμπορική το 1984, www.mathworks.com Σήμερα γραμμένη σε C, C++ και Java. 11
Εναλλακτικές λύσεις υπάρχουν Maple Mathematica Octave (GNU) Scilab Τα Scilab και Octave παρουσιάζoυν ιδιαίτερο ενδιαφέρον, μοιάζουν αρκετά με MATLAB και είναι ελεύθερα λογισμικά. 12
Πλατφόρμες Υλοποίησης Windows Linux MAC Unix (SUN Solaris HPUX SGI IRIX κ.α.) Ο κώδικας των M-files είναι συμβατός με κάθε λειτουργικό σύστημα των υπολογιστικών συστημάτων. 13
Εργαλειοθήκες Toolboxes Εφαρμογές: Μαθηματική ανάλυση & Επεξεργασία Ψηφιακή Επεξεργασία Σήματος Επεξεργασία Εικόνας και Ήχου Σχεδιασμός Συστημάτων Αυτομάτου Ελέγχου Οικονομικές εφαρμογές Βιομηχανικές Εφαρμογές Περισσότερα από 60 toolboxes! 14
Γιατί MATLAB; (1) 15
Γιατί MATLAB; (2) 16
Γιατί MATLAB; (3) 17
Το περιβάλλον του MATLAB C:Workspace:Δίνει πληροφορίες για τις μεταβλητές που δηλώσαμε. D:Command History: Φαίνονται οι εντολές που εκτελέστηκαν. A:Command Window: Πληκτρολογούμε τις εντολές προς εκτέλεση. 18
Command Window 19
Matlab Η Matlab χρησιμοποιεί Scripts και Functions Script είναι μια σειρά από εντολές σε ένα αρχείο κειμένου. Function είναι αυτόνομα προγράμματα. Βασικό μειονέκτημα των scripts είναι ότι δεν μπορούν να μπορούν να δεχθούν ορίσματα. 20
Mfiles 21
Functions - Δημιουργία 22
Συναρτήσεις σε εργαλειοθήκες 23
Συναρτήσεις του MATLAB Κατάλογος στοιχειωδών μαθηματικών συναρτήσεων help elfun Κατάλογος ειδικών μαθηματικών συναρτήσεων help specfun 24
MATLAB Demos 25
Δουλεύοντας με το MATLAB (1) Σε αυτή την ενότητα θα παρουσιάσουμε τις κυριότερες εντολές του Matlab. Στο αριστερό μέρος του πίνακα δίνουμε την εντολή, στο μεσαίο μέρος παρουσιάζουμε το αποτέλεσμα της εντολής, ενώ στο δεξί μέρος εξηγούμε την λειτουργία της εντολής. 26
Δουλεύοντας με το MATLAB (2) Στα Windows το MATLAB ξεκινάει με διπλό κλικ του mouse στο κατάλληλο εικονίδιο. 27
Απλές αριθμητικές πράξεις 28
Σχόλια - Η μεταβλητή ans 29
Προτεραιότητα πράξεων 30
Πράξεις δεκαδικών και αρνητικών αριθμών 31
Βασικές λειτουργίες του MATLAB 32
Σταθερές 33
Ενσωματωμένες συναρτήσεις 34
Διαδεδομένες συναρτήσεις 35
Κανόνες Ονομασίας Μεταβλητών Το όνομα αρχίζει με γράμμα (του αγγλικού αλφαβήτου). Το όνομα περιέχει μόνο γράμματα, αριθμούς και υποπαύλες (underscore). Δεν χρησιμοποιούνται ονόματα που έχουν δεσμευτεί από το MATLAB (π.χ. εντολών). Υπάρχει διάκριση μεταξύ πεζών και κεφαλαίων γραμμάτων. 36
Μεταβλητές 37
Η χρήση του ερωτηματικού 38
Μορφή (Format) 39
Είδη (Format) 40
Εφαρμογή format Επιλογές της εντολής format για την εκτύπωση του ππ. 41
Βοήθεια στο Matlab help- lookfor-what-which 42
Διαχείριση μνήμης 43
Εντολές save- load-exit-quit 44
Διαχείριση γραμμής εντολών (Εντολές diary και clc) 46
Άλλες Χρήσιμες Εντολές 47
Διανύσματα 48
Διανύσματα γραμμής 49
Συναρτήσεις length - size 50
Το διαχωριστικό σύμβολο : (1) 51
Το διαχωριστικό σύμβολο : (2) 52
Πρόσθεση αφαίρεση διανυσμάτων 53
Πολλαπλασιασμός, διαίρεση, ύψωση σε δύναμη διανυσμάτων 54
Διανύσματα στήλης 55
Χρήσιμες εντολές για διανύσματα sum- cumsum-prod-diff-max-min-sort-mean- median 56
Τέλος Ενότητας