Lab_00_Εισαγωγή_στο_MATLAB.pdf
Document Details
Uploaded by Deleted User
Full Transcript
ΣΗΜΑΤA ΚΑΙ ΣΥΣΤΗΜΑΤA ΕΡΓΑΣΤΗΡΙΑΚΟΣ ΟΔΗΓΟΣ Εργαστηριακή Άσκηση 0 «Εισαγωγή στο Matlab» Μιχάλης Παρασκευάς Καθηγητής Οκτώβριος 2023 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Έκδοση: 4.0 1 Σήματα και Συστήματα...
ΣΗΜΑΤA ΚΑΙ ΣΥΣΤΗΜΑΤA ΕΡΓΑΣΤΗΡΙΑΚΟΣ ΟΔΗΓΟΣ Εργαστηριακή Άσκηση 0 «Εισαγωγή στο Matlab» Μιχάλης Παρασκευάς Καθηγητής Οκτώβριος 2023 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Έκδοση: 4.0 1 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Πίνακας Περιεχομένων 1. Στόχος Εργαστηριακής Άσκησης........................................................................ 3 2. Εισαγωγή.................................................................................................... 3 3. Το περιβάλλον εργασίας του Matlab................................................................... 3 4. Εισαγωγή στη γλώσσα Matlab........................................................................... 4 4.1 Απλές πράξεις με Matlab................................................................................. 5 4.2 Εκχώρηση τιμών σε μεταβλητές......................................................................... 5 4.3 Εντολές who και whos..................................................................................... 6 4.4 Ενσωματωμένες συναρτήσεις και σταθερές Matlab.................................................. 6 4.5 Μορφή μεταβλητών...................................................................................... 10 4.6 Διανύσματα............................................................................................... 10 4.7 Πράξεις με διανύσματα................................................................................. 13 4.8 Διανύσματα Στήλης και Πίνακες....................................................................... 14 4.9 Πολλαπλασιασμός Πινάκων............................................................................ 17 4.10 Χρήσιμες συναρτήσεις για τη δημιουργία πινάκων................................................ 18 5. Η εργαλειοθήκη Symbolic............................................................................. 19 5.1 Συμβολικές μεταβλητές................................................................................. 19 5.2 Παραγώγιση συμβολικών συναρτήσεων και επίλυση εξισώσεων............................... 19 5.3 Ολοκλήρωση Συμβολικών Συναρτήσεων............................................................ 20 5.4 Συμβολικό άθροισμα σειράς............................................................................ 21 6. Σχεδιασμός Γραφικών Παραστάσεων................................................................ 22 6.1 Χρήσιμες συναρτήσεις για την μορφοποίηση των γραφημάτων................................. 25 7. Άλυτες Ασκήσεις......................................................................................... 26 2 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Άσκηση 1: Εισαγωγή στο MATLAB 1. Στόχος Εργαστηριακής Άσκησης Ο στόχος της πρώτης εργαστηριακής άσκησης είναι η εξοικείωση των φοιτητών με το περιβάλλον εργασίας του MATLAB. 2. Εισαγωγή To Matlab αποτελεί μια υψηλού επιπέδου γλώσσα και ένα διαδραστικό περιβάλλον προγραμματισμού για την υλοποίηση αριθμητικών υπολογισμών και γραφικών απεικονίσεων. Χρησιμοποιώντας το Matlab μπορούμε εύκολα να αναλύσουμε δεδομένα, να αναπτύξουμε αλγορίθμους, να δημιουργήσουμε μοντέλα και εφαρμογές. Το απλό συντακτικό της γλώσσας του Matlab, τα εργαλεία της διεπαφής χρήστη και οι πολυάριθμες ενσωματωμένες μαθηματικές συναρτήσεις μας παρέχουν τη δυνατότητα να προσεγγίσουμε πολλαπλές πτυχές ενός προβλήματος και να φτάσουμε σε μία λύση πολύ πιο εύκολα και γρηγορότερα από ότι με συμβατικά εργαλεία (π.χ. τα υπολογιστικά φύλλα Microsoft Excel) ή άλλες γλώσσες προγραμματισμού (π.χ. C/C++, JAVA, κλπ). Το Matlab μπορεί να χρησιμοποιηθεί για μια πληθώρα προβλημάτων στα γνωστικά αντικείμενα: ανάλυσης και επεξεργασίας σήματος, αναλογικών και ψηφιακών επικοινωνιών, επεξεργασίας εικόνας και ήχου, συστημάτων ελέγχου, στατιστικής ανάλυσης, οικονομικών εφαρμογών, υπολογιστικής βιολογίας, μαθηματικών, μηχανικής, κλπ. Διαθέτει πλούσια και ισχυρά λειτουργικά χαρακτηριστικά, όπως: Υψηλού επιπέδου γλώσσα για αριθμητικούς υπολογισμούς, γραφική αναπαράσταση συναρτήσεων και ανάπτυξη εφαρμογών. Διαδραστικό περιβάλλον για ανάλυση, σχεδιασμό και επίλυση προβλημάτων. Ενσωματωμένες μαθηματικές συναρτήσεις για: γραμμική άλγεβρα, στατιστική, ανάλυση Fourier, φίλτρα, βελτιστοποίηση, αριθμητική ανάλυση, επίλυση συνήθων διαφορικών εξισώσεων και πολλά άλλα. Ενσωματωμένες δυνατότητες γραφικών για απεικόνιση δεδομένων και δημιουργία μεγάλης ποικιλίας γραφημάτων. Εργαλεία δημιουργίας διαδραστικών εφαρμογών. Στον συγκεκριμένο εργαστηριακό οδηγό θα χρησιμοποιήσουμε το Matlab για την ανάλυση και επεξεργασία Σημάτων Συνεχούς και Διακριτού Χρόνου. 3. Το περιβάλλον εργασίας του Matlab Ο παρών εργαστηριακός οδηγός αναφέρεται στην έκδοση Matlab R2013. Εκτός από διάφορες εικαστικές βελτιώσεις και νέες εργαλειοθήκες που έχουν προστεθεί στην τελευταία έκδοση, η βασική δομή του περιβάλλοντος εργασίας παραμένει η ίδια με τις προηγούμενες εκδόσεις. Η βασική δομή του περιβάλλοντος εργασίας (διεπαφή) αποτελείται από 4 επιμέρους 3 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» τμήματα (Εικόνα 1): 1. Τη γραμμή εντολών (Command Window): Η γραμμή εντολών είναι ο χώρος στον οποίο ο χρήστης αλληλεπιδρά με το σύστημα, δίνοντας εντολές και λαμβάνοντας το αποτέλεσμα. 2. Τον χώρο εργασίας (Workspace): Εδώ εμφανίζονται όλες οι μεταβλητές που έχουμε δημιουργήσει και τα δεδομένα που περιέχουν κατά την τρέχουσα στιγμή. Σχήμα 1 – Το γραφικό περιβάλλον εργασίας του Matlab 3. Το ιστορικό εντολών (Command History): Όπως δηλώνει το όνομα του, αυτό το τμήμα διατηρεί ιστορικό των εντολών που έχουμε δώσει. 4. Τον τρέχοντα φάκελο (Current Folder): Ένα σημαντικό τμήμα του περιβάλλοντος είναι ο τρέχοντας φάκελος. Και είναι σημαντικό διότι το Matlab έχει πρόσβαση στα αρχεία που βρίσκονται σε αυτόν τον φάκελο. Για να γίνει αυτό κατανοητό ας θεωρήσουμε την περίπτωση που θέλουμε στο Matlab να αναπαράγουμε ένα αρχείο ήχου ή να καλέσουμε μια συνάρτηση (σύνολο από εντολές), την οποία έχουμε αποθηκεύσει σε ένα εξωτερικό αρχείο. Για να μπορέσει το Matlab να προσπελάσει το αρχείο ή την συνάρτηση, τότε θα πρέπει αυτά να βρίσκονται στον τρέχοντα φάκελο. 4. Εισαγωγή στη γλώσσα Matlab Ο γλώσσα προγραμματισμού του Matlab είναι κατά βάση μια γλώσσα χειρισμού βαθμωτών μεγεθών (scalars), διανυσμάτων (vectors) και πινάκων (Matrices). Άλλωστε από τον συνδυασμό των λέξεων MATrix LABoratory προκύπτει και το όνομά του. Το Matlab διαθέτει πολύ απλό συντακτικό για τη δημιουργία τέτοιων μεγεθών, χωρίς να χρειάζεται να ορίσουμε 4 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» μεταβλητές, να συμπεριλάβουμε βιβλιοθήκες ή να καλέσουμε κάποια main() συνάρτηση. 4.1 Απλές πράξεις με Matlab Στο Matlab μπορούμε να εκτελέσουμε απλές αριθμητικές πράξεις με τους παρακάτω τελεστές: Τελεστές Αλγεβρική Πράξη + Πρόσθεση - Αφαίρεση * Πολλαπλασιασμός / Διαίρεση ^ Ύψωση σε δύναμη ‘ Αντιστροφή () Παρενθέσεις = Εκχώρηση τιμής σε μεταβλητή Παράδειγμα 1 – Στοιχειώδεις πράξεις στο Matlab Εκτελέστε στο Matlab τις ακόλουθες πράξεις: Εντολές Matlab Αποτέλεσμα 1+2 ans = 3 2*3 ans = 6 1+2*3 ans = 7 (((1+2)*3)-2)/2 ans = 3.5000 10^2 ans = 100 Σημείωση: Η μεταβλητή ans (=απάντηση) δέχεται πάντα και εμφανίζει στην οθόνη το αποτέλεσμα της τελευταίας δοθείσας εντολής, στην περίπτωση που αυτή δεν εκχωρεί το αποτέλεσμα σε κάποια άλλη μεταβλητή. 4.2 Εκχώρηση τιμών σε μεταβλητές Στο προηγούμενο παράδειγμα δίναμε αριθμητικές παραστάσεις τις οποίες υπολόγιζε το Matlab και εκχωρούσε την τιμή τους στην προκαθορισμένη μεταβλητή “ans”. Στο Matlab μπορούμε πολύ εύκολα να δημιουργήσουμε μια μεταβλητή και να της εκχωρήσουμε μια αριθμητική τιμή ή την τιμή που προκύπτει από τον υπολογισμό μίας αλγεβρικής παράστασης. Αυτό γίνεται χρησιμοποιώντας τον τελεστή “=”. 5 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 2 Να δημιουργήσετε τις μεταβλητές x, y, A, και να εκχωρήσετε σε κάθε μία τις παρακάτω τιμές, αντιστοίχως: x2 y5 A x*y Απάντηση: Για να θέσουμε την τιμή 2 στη μεταβλητή x, δίνουμε την εντολή: x = 2 x = 2 Για να θέσουμε την τιμή 5 στη μεταβλητή y, δίνουμε την εντολή: y = 5 y = 5 Για να εκχωρήσουμε το γινόμενο των μεταβλητών x και y στη μεταβλητή A, δίνουμε την εντολή: A = x * y A = 10 Σημείωση: Στο Matlab οι μεταβλητές είναι “case sensitive”, δηλαδή οι κεφαλαίοι και οι πεζοί χαρακτήρες προσδιορίζουν διαφορετικές μεταβλητές. Έτσι, το Α είναι διαφορετική μεταβλητή από το a. 4.3 Εντολές who και whos Ανά πάσα στιγμή μπορούμε να δούμε τον τύπο και το χώρο (σε bytes) των μεταβλητών που έχουμε δεσμεύσει στο Matlab, χρησιμοποιώντας τις εντολές “who”και “whos”. Εντολές Matlab Αποτέλεσμα Your variables are: who A x y Name Size Bytes Class Attributes whos A 1x1 8 double x 1x1 8 double y 1x1 8 double Name Size Bytes Class Attributes whos A A 1x1 8 double 4.4 Ενσωματωμένες συναρτήσεις και σταθερές Matlab Το Matlab διαθέτει μια πληθώρα ενσωματωμένων συναρτήσεων για τον υπολογισμό μαθηματικών και τριγωνομετρικών συναρτήσεων, στατιστική ανάλυση, επεξεργασία σημάτων, δημιουργία φίλτρων, βελτιστοποίηση, επίλυση διαφορικών εξισώσεων και για 6 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» πολλές άλλες λειτουργίες. Μπορούμε να κάνουμε αναζήτηση στις συναρτήσεις του Matlab δίνοντας την εντολή: lookfor [λέξη-κλειδί] Αυτή η εντολή θα επιστρέψει όλες εκείνες τις συναρτήσεις που έχουν στην περιγραφή τους την λέξη-κλειδί. Για παράδειγμα, εάν θέλουμε να αναζητήσουμε συναρτήσεις για την παρα-γωγή τυχαίων αριθμών μια λέξη κλειδί πιθανώς να είναι η “random”, οπότε δίνοντας την εντολή: lookfor random το Matlab απαντά επιστρέφοντας το όνομα της συνάρτησης συνοδευόμενο από μία σύντομη περιγραφή. Στη συνέχεια μπορούμε να δούμε αναλυτικά το υλικό βοήθειας για κάποια συνάρτηση δίνοντας την εντολή: help [όνομα_συνάρτησης] Για παράδειγμα η συνάρτηση rand παράγει ομοιόμορφα κατανεμημένους ψευδοτυχαίους αριθμούς. Για να δούμε τη βοήθεια σχετικά με τη συνάρτηση rand δίνουμε την εντολή: help rand και λαμβάνουμε ως απάντηση βοηθητικό υλικό για τη συνάρτηση rand. Η εντολή doc όνομα_συνάρτησης ανοίγει το αρχείο τεκμηρίωσης του Matlab για τη συγκεκριμένη συνάρτηση που έχουμε προσδιορίσει. Για παράδειγμα: doc rand doc lookfor doc sin doc sqrt 7 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 3 Χρησιμοποιώντας τις εντολές lookfor και help να βρείτε τη συνάρτηση που υπολογίζει τον φυσικό λογάριθμο 1. Κατόπιν να γράψετε την εντολή Matlab που υπολογίζει τον φυσικό λογάριθμο του 𝟐𝝅. Το αποτέλεσμα να εκχωρηθεί στη μεταβλητή A. Απάντηση: lookfor logarithm A = log(2*pi) Στη συνέχεια αναζητήστε την εντολή που υπολογίζει το εκθετικό ενός αριθμού με βάση το e (≈ 2.718) (δηλαδή το 𝑒 𝑥 ) και εκχωρήστε στη μεταβλητή B την τιμή του εκθετικού της μεταβλητής A (δηλαδή 𝛣 = 𝑒 𝐴 ). Απάντηση: lookfor exponential B = exp(A) Υπόδειξη: Λέξεις κλειδιά: logarithm και exponential Η σταθερά π στο Matlab συμβολίζεται πάντα ως pi Παράδειγμα 4 Υπολογίστε την τιμή της παράστασης και απεικονίστε το αποτέλεσμα στην οθόνη: 1 𝑙𝑜𝑔 (2𝜋) 𝛸= 𝑒 𝑒 2𝜋 Απάντηση: X = (1/(2*pi)) * exp( log(2*pi) ) Μπορούμε να χρησιμοποιήσουμε τις παρακάτω ενσωματωμένες συναρτήσεις του Matlab για να εκτελέσουμε με εύκολο τρόπο διάφορους μαθηματικούς υπολογισμούς. 1Ο φυσικός λογάριθμος έχει ως βάση την σταθερά e (≈ 2.718) και η χρήση του είναι διαδεδομένη στον μαθηματικό λογισμό. Ο δυαδικός αλγόριθμος έχει ως βάση τον αριθμό b = 2 και χρησιμοποιείται πολύ στην επιστήμη των υπολογιστών. 8 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 5 Μαθηματική έκφραση Εντολές Matlab Αποτέλεσμα √100 sqrt(100) ans = 10 2 √2 sqrt(2)^2 ans = 2.0000 𝜂𝜇(𝜋/2) sin(pi/2) ans = 1 𝜎𝜐𝜈(𝜋) cos(pi) ans = -1 𝜀𝜑(𝜋/4) tan(pi/4) ans = 1.0000 𝛵ό𝜉𝜊 𝜀𝜑(𝜋/4) atan(pi/4) ans = 0.6658 𝑙𝑜𝑔10 (100) log10(100) ans = 2 𝑙𝑜𝑔2 (32) log2(32) ans = 5 𝑒 exp(1) ans = 2.7183 𝑒2 exp(2) ans = 7.3891 𝑒2 exp(1)^2 ans = 7.3891 𝑙𝑛𝑒 𝑒 reallog(exp(1)) ans = 1 Παράδειγμα 6 Να υπολογίσετε στο Matlab τις ακόλουθες αριθμητικές παραστάσεις. Καταγράψτε την εντολή καθώς και την τιμή των μεταβλητών που προέκυψε. Αριθμητικές παραστάσεις Εντολές Matlab 𝜋 A = 2*sin(3*pi/4) 𝐴 = 2 𝜂𝜇 (3 ) 2 A = 1.4142 𝜋 B = 3*A+2*cos(pi/4) 𝛣 = 3𝛢 + 2συ ν ( ) 4 B = 5.6569 C = (A+B)^2 𝐶 = (𝛢 + 𝛣)2 C = 50.000 D = sqrt(C) 𝐷 = √𝐶 D = 7.0711 E = exp(-D) 𝐸 = 𝑒 −𝐷 E = 8.4933e-04 Σημείωση: Πριν από την εκτέλεση της δραστηριότητας δώστε την εντολή clear, η οποία θα 9 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» διαγράψει τις προϋπάρχουσες μεταβλητές. Έτσι θα είστε βέβαιοι ότι οι μεταβλητές που χρησιμοποιείτε δεν έχουν κάποια τιμή από προηγούμενο υπολογισμό. 4.5 Μορφή μεταβλητών Στις προηγούμενες δραστηριότητες χρησιμοποιήσαμε τη σταθερά 𝜋. Οι γνωστές σταθερές είναι ήδη δηλωμένες στο Matlab και μπορούμε να τις χρησιμοποιήσουμε χωρίς να απαιτείται να προβούμε σε κάποια δήλωσή τους. pi ans = 3.1416 To Matlab επιστρέφει την τιμή του 𝜋 με τέσσερα δεκαδικά ψηφία. Mε την εντολή format μπορούμε να αλλάξουμε τον τρόπο με τον οποίο το Matlab απεικονίζει μία μεταβλητή, χωρίς φυσικά να επηρεάζεται η τιμή της. Παράδειγμα 7 Μορφή Εντολή Matlab Αποτέλεσμα Μορφή long format long ans = pi 3.14159265358979 Επιστημονική μορφή format long e ans = pi 3.141592653589793e+00 ή ή format short e ans = pi 3.141592653589793e+00 Μορφή bank format bank ans = pi 3.14 Κλασματική μορφή format rat ans = pi 355/113 Επιστροφή στην format ans = προκαθορισμένη μορφή pi 3.1416 4.6 Διανύσματα Στο Matlab μπορούμε πολύ εύκολα να δημιουργήσουμε μεταβλητές τύπου διανύσματος (πίνακα). Μία μεταβλητή διανύσματος περιέχει περισσότερες από μία θέσεις, άρα μπορεί να αποθηκεύσει ταυτόχρονα πολλές τιμές. Τα διανύσματα είναι εξαιρετικά χρήσιμα στην επεξεργασία σημάτων. Για να ορίσουμε ένα διάνυσμα περικλείουμε με αγκύλες τα στοιχεία (τιμές) που το αποτελούν. 10 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 8 Καταχωρούμε πολλές τιμές στην μεταβλητή ans. [ 1 2 3 4 ] ans = 1 2 3 4 Μπορούμε να εκχωρήσουμε πολλές τιμές σε μία μεταβλητή τύπου διανύσματος. A = [ 1 2 3 4 ] A = 1 2 3 4 Τα στοιχεία ενός διανύσματος προσδιορίζονται με δείκτες ξεκινώντας από τον αριθμό 1. Για να προσπελάσουμε μία συγκεκριμένη θέση ενός διανύσματος, καλούμε τη μεταβλητή με τη χρήση δείκτη (εντός παρενθέσεων) που προς-διορίζει τη θέση: A(1) ans = 1 A(3) ans = 3 Προσοχή ! Η πρώτη θέση του διανύσματος αριθμείται με την τιμή 1 και όχι με το 0, όπως συμβαίνει σε άλλες γλώσσες προγραμματισμού. Ένας άλλος τρόπος για να δημιουργήσουμε ένα διάνυσμα είναι με τη χρήση του συμβόλου της άνω-κάτω τελείας «:» στην μορφή: Μεταβλητή= πρώτο_στοιχείο : βήμα : τελευταίο_στοιχείο Εάν το βήμα παραλειφθεί από την εντολή, τότε ως βήμα θεωρείται η τιμή 1. Δηλαδή η εντολή: Μεταβλητή = πρώτο_στοιχείο : τελευταίο_στοιχείο είναι ισοδύναμη με: Μεταβλητή = πρώτο_στοιχείο : 1 : τελευταίο_στοιχείο Παράδειγμα 9 Στο παράδειγμα αυτό θα δούμε πως μπορούμε να καταχωρήσουμε τιμές σε μεταβλητή τύπου διανύσματος. 11 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» a = 1 : 1 : 5 a = 1 2 3 4 5 b = 0 0.1000 0.2000 0.3000 0.4000 b = 0 : 0.1 : 1 0.5000 0.6000 0.7000 0.8000 0.9000 1.0000 c = 0 0.3927 0.7854 1.1781 1.5708 c = 0 : pi/8 : pi 1.9635 2.3562 2.7489 3.1416 Προσπέλαση συγκεκριμένων θέσεων του διανύσματος: b(9) ans = 0.8000 c(8) ans = 2.7489 Σημείωση: Στο Matlab όλες οι μεταβλητές αντιμετωπίζονται ως πίνακες. Ακόμα και ένας απλός αριθμός θεωρείται πίνακας διαστάσεων 1x1. Ένα στοιχείο ενός διανύσματος μπορεί να είναι κάθε τύπου, ακόμα και άλλα διανύσματα: d = 1.0000 2.0000 3.0000 4.0000 5.0000 format short 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 d = [ a b c ] 1.0000 0 0.3927 0.7854 1.1781 1.5708 1.9635 2.3562 2.7489 3.1416 e = 1.0000 2.0000 3.0000 4.0000 5.0000 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 e = [ d -3:1:1 ] 1.00000 0.3927 0.7854 1.1781 1.5708 1.9635 2.3562 2.7489 3.1416 -3.0000 -2.0000 -1.0000 0 1.0000 Επίσης μια συνάρτηση μπορεί να ενεργεί πάνω σε ένα διάνυσμα: cos(a) ans = 0.5403 -0.4161 -0.9900 -0.6536 0.2837 sin(0:pi/8:pi) ans = 0 0.3827 0.7071 0.9239 1.0000 0.9239 0.7071 0.3827 0.0000 Παράδειγμα 10 Δημιουργήστε ένα διάνυσμα με όνομα Ε που να περιέχει τις τιμές 𝑒 𝑛 , όπου 0 ≤ 𝑛 ≤ 10 και 𝑛 ∈ ℤ. n = 0 : 1 : 10 E = exp(n) 12 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» 4.7 Πράξεις με διανύσματα Για να εκτελέσουμε πράξεις μεταξύ δύο διανυσμάτων απαιτείται τα διανύσματα αυτά να έχουν το ίδιο μήκος, δηλαδή τις ίδιες διαστάσεις. Παράδειγμα 11 Σημείωση: Δίνουμε την εντολή clear για να clear διαγράψουμε τις προηγούμενες μεταβλητές. A = 0:5 A = 0 1.00 2.00 3.00 4.00 5.00 B = 5:10 B = 5.00 6.00 7.00 8.00 9.00 10.00 C = A + B C = 5.00 7.00 9.00 11.00 13.00 15.00 D = A - B D = -5.00 -5.00 -5.00 -5.00 -5.00 -5.00 Η πρόσθεση ή η αφαίρεση ενός διανύσματος με ένα βαθμωτό μέγεθος (δηλαδή μεταβλητή μίας θέσης), προσθέτει ή αφαιρεί από κάθε στοιχείο του διανύσματος το βαθμωτό μέγεθος: E = D-1 E = -6.00 -6.00 -6.00 -6.00 -6.00 -6.00 H πράξη του πολλαπλασιασμού και της διαίρεσης μεταξύ πινάκων διαφέρει από την πρόσθεση και την αφαίρεση, επειδή για να ορίζεται το γινόμενο δύο πινάκων, απαιτείται ο αριθμός των στηλών του πρώτου πίνακα (A) να ισούται με τον αριθμό των γραμμών του δεύτερου πίνακα (B). Επομένως, πριν πολλαπλασιάσουμε δύο πίνακες, θα πρέπει να έχουμε εξασφαλίσει αυτή τη συνθήκη. Θα δούμε αναλυτικά τον πολλαπλασιασμό των πινάκων στην ενότητα 4.9. Για να πολλαπλασιάσουμε έναν πίνακα στοιχείο προς στοιχείο με έναν άλλο, πρέπει να χρησιμοποιήσουμε το σύμβολο της τελείας «.» πριν τον τελεστή της πράξης («*» για πολλαπλασιασμό και «/» για διαίρεση). Προσοχή ! Αυτή η πράξη δεν ισοδυναμεί με τον πολλαπλασιασμό των πινάκων. E = A.*B E = 0 6.00 14.00 24.00 36.00 50.00 F = A./B F = 0 0.17 0.29 0.38 0.44 0.50 Παράδειγμα 12 Η ύψωση σε δύναμη κάθε στοιχείου ενός πίνακα πραγματοποιείται επίσης με τη χρήση του συμβόλου της τελείας «.» πριν από το σύμβολο «^» της ύψωσης σε δύναμη. G = F.^2 G = 0 0.03 0.08 0.14 0.20 0.25 H = [0:pi/8:pi/2].^2 H = 0 0.1542 0.6169 1.3879 2.4674 I = cos([0:pi/8:pi/2].^2) I = 1.0000 0.9881 0.8157 0.1819 -0.7812 13 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» J = cos([0:pi/8:pi/2]).^2 J = 1.0000 0.8536 0.5000 0.1464 0.0000 Παράδειγμα 13 Δώστε την εντολή clear ώστε να διαγράψετε όλες τις προηγούμενες μεταβλητές από το Workspace και κατόπιν: (α) Δημιουργήστε το διάνυσμα A με τιμές από 0 έως 𝜋/2, με βήμα 𝜋/8. (β) Δημιουργήστε το διάνυσμα Β με τιμές από 1 έως 5, με βήμα 1. Δώστε την κατάλληλη εντολή στο Matlab ώστε να υψωθεί κάθε στοιχείο του διανύσματος Α στο αντίστοιχο στοιχείο του διανύσματος B. Το αποτέλεσμα να αποθηκευθεί στο διάνυσμα C. Απάντηση: clear A = 0 : pi/8 : pi/2; B = 1 : 1 : 1; C = A.^B Αποτελέσματα: C = 0 0.1542 0.4845 1.9263 9.5631 4.8 Διανύσματα Στήλης και Πίνακες Μέχρι στιγμής είδαμε διανύσματα γραμμής. Για να δημιουργήσουμε διανύσματα στήλης εργαζόμαστε ακριβώς όπως στα διανύσματα γραμμής, με μόνη διαφορά ότι μεταξύ των στοιχείων του διανύσματος βάζουμε το σύμβολο του ερωτηματικού ";". Ένας άλλος τρόπος για να δημιουργήσουμε διάνυσμα στήλης είναι να δημιουργήσουμε αρχικά ένα διάνυσμα γραμμής και κατόπιν να χρησιμοποιήσουμε το σύμβολο «’» της αναστροφής πίνακα, όπως φαίνεται παρακάτω. Αυτή η μέθοδος λειτουργεί και αντίστροφα. Παράδειγμα 14 A = [1; 2; 3; 4] A = 1 2 3 4 B = [0:1:3]' B = 14 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» 0 1 2 3 C = A' C = 1 2 3 4 D = C' D = 1 2 3 4 Ομοίως, χρησιμοποιώντας το σύμβολο του ερωτηματικού «;» μπορούμε να δημιουργήσουμε πίνακες. Όπως αναφέρθηκε παραπάνω, τα περιεχόμενα ενός διανύσματος μπορεί να είναι κάθε τύπου, ακόμα και άλλα διανύσματα. Ένα διάνυσμα στήλης του οποίου τα στοιχεία είναι διανύσματα γραμμής, αποτελεί έναν πίνακα. Παράδειγμα 15 clear D = A = [ 1 2 3 4 ]; 1 2 3 4 B = [ 5 6 7 8 ]; 5 6 7 8 C = [ 9 10 11 12]; 9 10 11 12 D = [ A ; B; C ; ] Παρατηρούμε ότι τοποθετώντας το σύμβολο του ερωτηματικού «;» μετά από μια εντολή, το Matlab δεν εκτυπώνει το αποτέλεσμα στην οθόνη. D(2,3) ans = 7 E = D' E = 1 5 9 2 6 10 3 7 11 4 8 12 Μπορούμε να εκχωρήσουμε τιμές σε συγκεκριμένα στοιχεία του πίνακα. Ακολουθούν διάφοροι τρόποι: 15 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» 1) Σε συγκεκριμένη θέση του πίνακα: E(2,3) ans = 10 2) Σε συγκεκριμένη στήλη του πίνακα: E(1,2) = 0; E = E(2,2) = 0; 1 0 9 E(3,2) = 0; 2 0 10 E(4,2) = 0; 3 0 11 E 4 0 12 3) Σε συγκεκριμένη περιοχή γραμμών και στηλών του πίνακα: E(1:4, 1:3) = 1 E = 1 1 1 1 1 1 1 1 1 1 1 1 4) Σε συγκεκριμένες θέσεις μίας συγκεκριμένης στήλης του πίνακα: E(1:4,2) = 0 E = 1 0 1 1 0 1 1 0 1 1 0 1 5) Σε όλες τις θέσεις μίας στήλης του πίνακα: E(:,1) = 0; E = E(:,2) = 1; 0 1 2 E(:,3) = 2 0 1 2 0 1 2 0 1 2 16 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παρατηρήσεις: Χρησιμοποιώντας το σύμβολο «:» μπορούμε να αναφερθούμε σε ολόκληρες γραμμές ή στήλες του πίνακα. Αν θέλουμε να αναφερθούμε σε όλες τις θέσεις της k γραμμής του πίνακα A αρκεί να γράψουμε A(k,:). Εάν θέλουμε να αναφερθούμε σε όλες τις θέσεις της m στήλης του πίνακα Α αρκεί να γράψουμε A(:,m). Για να αναφερθούμε σε ένα τμήμα του πίνακα Α, π.χ. από την γραμμή k1 έως την γραμμή k2 και από τη στήλη m1 έως τη στήλη m2, γράφουμε A(k1:k2, m1:m2). Παράδειγμα 16 Δώστε τις εντολές Matlab ώστε να δημιουργήσετε τον πίνακα Α με διαστάσεις 11x11.Τα στοιχεία του Α από την 4 έως την 8 γραμμή και από την 4 έως την 8 στήλη είναι μηδενικά. Όλα τα υπόλοιπα είναι 1. Α = ones(11,11); A(4:8, 4:8 ) = 0 ; Στη συνέχεια να δημιουργήσετε τον ίδιο πίνακα αντικαθιστώντας αμοιβαία τα μηδενικά (0) με τον αριθμό ένα (1). Β = zeros(11,11); Β(4:8, 4:8) = 1; 4.9 Πολλαπλασιασμός Πινάκων Ο πολλαπλασιασμός δύο πινάκων C = A x B είναι το αλγεβρικό γινόμενο των πινάκων Α και Β και δίνεται από τη σχέση: 𝑛 𝐶(𝑖, 𝑗) = ∑ 𝐴(𝑖, 𝑘) 𝐵(𝑘, 𝑗) 𝑘=1 Όταν πολλαπλασιάζουμε δύο πίνακες, πρέπει το πλήθος των στηλών του Α να ισούται με το πλήθος των γραμμών του Β. Ένα βαθμωτό μέγεθος μπορεί να πολλαπλασιάσει έναν πίνακα οποιωνδήποτε διαστάσεων. Παράδειγμα 17 clear A = A = ones(3,3) 1 1 1 1 1 1 1 1 1 17 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» B = ones(3,1)+[0:2]’ B = 1 2 3 C = A*B C = 6 6 6 D = 2*C’ D = 12 12 12 4.10 Χρήσιμες συναρτήσεις για τη δημιουργία πινάκων Παρατίθενται μερικές χρήσιμες συναρτήσεις για τη δημιουργία πινάκων: zeros(m,n) Παράγει έναν πίνακα m x n διαστάσεων γεμάτο με μηδενικά. ones(m,n) Παράγει έναν πίνακα m x n διαστάσεων γεμάτο με τον αριθμό ένα. rand(m,n) Παράγει έναν πίνακα m x n διαστάσεων γεμάτο με ομοιόμορφα κατανεμημένους τυχαίους αριθμούς. randn(m,n) Παράγει έναν πίνακα m x n διαστάσεων γεμάτο με κανονικά κατανεμημένους αριθμούς. eye(m,n) Παράγει έναν πίνακα m x n διαστάσεων με άσσους στην κύρια διαγώνιο και μηδενικά σε όλα τα άλλα στοιχεία. Παράδειγμα 18 Τροποποιώντας κατάλληλα την παρακάτω εντολή Matlab να δημιουργήσετε τον πίνακα που εμφανίζεται στο αποτέλεσμα: A = 9*ones(5, 5) - 9*eye(5, 5) A = 0 9 9 9 9 9 0 9 9 9 9 9 0 9 9 9 9 9 0 9 9 9 9 9 0 18 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» 5. Η εργαλειοθήκη Symbolic Χρησιμοποιώντας την εργαλειοθήκη Symbolic του Matlab μπορούμε να εκτελέσουμε αλγεβρικούς ή συμβολικούς υπολογισμούς, όπως την παραγοντοποίηση πολυωνύμων, την επίλυση αλγεβρικών εξισώσεων, κλπ, χωρίς να απαιτείται ο προκαθορισμός των μεταβλητών. 5.1 Συμβολικές μεταβλητές Για να ορίσουμε μια συμβολική μεταβλητή χρησιμοποιούμε τη δήλωση syms ως εξής: syms x y Παράδειγμα 19 Εντολές Matlab Αποτέλεσμα syms x y ans = (x + y)^2 (x+y)^2 expand(ans) ans = x^2 + 2*x*y + y^2 factor(ans) ans = (x + y)^2 Η συνάρτηση expand() ορίζει στο Matlab να εκτελέσει αναλυτικά τις πράξεις μέσα στην παράσταση, ενώ η συνάρτηση factor() να επιστρέψει την παραγοντοποιημένη μορφή της. 5.2 Παραγώγιση συμβολικών συναρτήσεων και επίλυση εξισώσεων Η συνάρτηση diff() υπολογίζει την παράγωγο μίας συμβολικής παράστασης σε σχέση με την ανεξάρτητη μεταβλητή που εμφανίζεται στην παράσταση. Αν η παράσταση έχει περισσότερες από μία ανεξάρτητες μεταβλητές τότε η συνάρτηση diff() συντάσσεται ως diff(F, v) όπου F είναι η συμβολική παράσταση και v η μεταβλητή ως προς την οποία παραγωγίζεται η παράσταση. Η συνάρτηση solve() επιλύει συμβολικές αλγεβρικές εξισώσεις και συντάσσεται solve(eqn1,var1). Το eqn1 είναι η συμβολική έκφραση. Αν η έκφραση δεν είναι εξίσωση, τότε το Matlab αναζητά τα σημεία που μηδενίζεται η εξίσωση, διαφορετικά όπως ορίζεται από την εξίσωση. Το var1 είναι η άγνωστη μεταβλητή. Σε περίπτωση που αυτή είναι μόνο μία, μπορούμε να μην την δηλώσουμε. Παράδειγμα 20 (α) Να υπολογίσετε την παράγωγο της συνάρτησης 𝑦 = 𝑥 3 + 4𝑥 2 − 23. Για τον υπολογισμό της παραγώγου χρησιμοποιήστε τη συνάρτηση diff(). 19 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Εντολές Matlab Αποτέλεσμα syms x y = x^3 + 4*x^2 - 23 y = x^3 + 4*x^2 - 23 Yd = diff(y) Yd = 3*x^2 + 8*x (β) Στη συνέχεια χρησιμοποιήστε τη συνάρτηση solve() για να βρείτε τις ρίζες της συνάρτησης και της παραγώγου. Yd_roots = solve(Yd) Yd_roots = 0 -8/3 dA = subs(Yd, x, -4) dA = 16 Χρησιμοποιήστε τη συνάρτηση subs()2 για να ελέγξετε το πρόσημο τις παραγώγου για τιμές στα διαστήματα που ορίζουν οι ρίζες της παραγώγου. dB = subs(Yd, x, -1) dB = -5 dC = subs(Yd, x, 1) dC = 11 (γ) Αποφανθείτε για την μονοτονία της συνάρτησης. Διαστήματα του άξονα X'X Μονοτονία που ορίζουν οι ρίζες Συνάρτησης (−∞, −8/3) Yd(-4) = 16 → Αύξουσα (−8/3, 0) Yd(-1) = -5 → Φθίνουσα (0, +∞) Yd(1) = 11 → Αύξουσα 5.3 Ολοκλήρωση Συμβολικών Συναρτήσεων Για τον υπολογισμό του ολοκληρώματος μιας συμβολικής έκφρασης χρησιμοποιούμε τη συνάρτηση int(). Σε περίπτωση που η παράσταση έχει περισσότερες από μία ανεξάρτητες μεταβλητές, η συνάρτηση int() συντάσσεται int(F, v) όπου F είναι η συμβολική παράσταση και v η μεταβλητή ως προς την οποία ολοκληρώνεται η παράσταση. Μπορούμε επίσης να ορίσουμε τα όρια ολοκλήρωσης ως int(F, v , a , b) όπου a είναι το κάτω όριο ολοκλήρωσης και b το άνω όριο ολοκλήρωσης. 2Η εντολή A = subs(y,x,2) θα αντικαταστήσει στη συνάρτηση y την τιμή του x με 2 και θα εκχωρήσει το αποτέλεσμα στη μεταβλητή A. 20 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 21 (α) Να υπολογίσετε το αόριστο ολοκλήρωμα 𝐹 = ∫ 3𝑥 2 + 8𝑥 με τη συνάρτηση int(). Εντολές Matlab Αποτέλεσμα syms x a b F = x^2*(x + 4) f = 3*x^2 + 8*x; F = int(f) 𝑏 (β) Να υπολογίσετε το ολοκλήρωμα 𝐹𝑎𝑏 = ∫𝑎 3𝑥 2 + 8𝑥 Fab = int(f, a, b) Fab = b^2*(b + 4) - a^2*(a + 4) 2 (γ) Στη συνέχεια να υπολογίσετε το ολοκλήρωμα 𝐹𝑑 = ∫−2 3𝑥 2 + 8𝑥 Fd = int(f, -2, 2) Fd = 16 (δ) Χρησιμοποιώντας κατάλληλα την εντολή subs() αντικαταστήστε στο ερώ-τημα ΙΙ τα 𝛼 και 𝑏 με τις τιμές 𝑎 = −2 και 𝑏 = 2 ώστε να επιβεβαιώσετε ότι προκύπτει το ίδιο αποτέλεσμα με το ερώτημα ΙΙΙ. subs(Fab, {a,b}, {-2,2}) ans = 16 5.4 Συμβολικό άθροισμα σειράς Για τον υπολογισμό του αθροίσματος μιας συμβολικής σειράς χρησιμοποιούμε τη συνάρτηση symsum(). Η σύνταξη της εντολής είναι symsum(F, n, a, b) όπου F είναι η συμβολική έκφραση, n ο δείκτης της σειράς, a το κάτω όριο και b το άνω όριο. Παράδειγμα 22 Να υπολογίσετε το άθροισμα 10 1 ∑ (1 + 𝑛)2 𝑛=0 Απάντηση: Εντολές Matlab Αποτέλεσμα syms n ans = S = 1/((1+n)^2); 239437889/153679680 symsum(S,0,10) 21 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» 6. Σχεδιασμός Γραφικών Παραστάσεων Η συνάρτηση ezplot() μπορεί να απεικονίσει γραφικά μια συμβολική παράσταση. Το Matlab θα υπολογίσει από μόνο του τα όρια και την κλίμακα των αξόνων. Παράδειγμα 23 Να σχεδιαστεί η συνάρτηση 𝑦(𝑥) = 𝑒 −𝑥. Απάντηση: syms x; y = exp(-x); ezplot(y); grid on H εντολή ezplot(y, min, max) θα αναπαραστήσει τη συνάρτηση y από min ως max στον άξονα του x. ezplot(y,-2,2); grid on (α) (β) Σχήμα 2 Συνάρτηση 𝑦(𝑥) = 𝑒 −𝑥 σχεδιασμένη: (α) στην αυτόματη κλίμακα τιμών άξονα x, (β) σε καθορισμένη κλίμακα τιμών άξονα x. Παράδειγμα 24 Χρησιμοποιήστε τη συνάρτηση ezplot() για να αναπαραστήσετε γραφικά τη συνάρτηση 𝑦(𝑥) = 𝑥 4 − 12𝑥 3 + 6𝑥 2 − 11, στο διάστημα τιμών 𝑥 = [−4, 4]. syms x y = x^4-12*x^3+6*x^2-11; ezplot(y,-4,4); grid on 22 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Σχήμα 3 Γραφική παράσταση συνάρτησης 𝑦(𝑥) = 𝑥 4 − 12𝑥 3 + 6𝑥 2 − 11 Η εντολή plot(x, y) λειτουργεί με διανύσματα αριθμητικών δεδομένων, όπου τα x και y είναι διανύσματα ίσου μήκους. Η εντολή plot(x, y) θεωρεί τα διανύσματα x και y σαν λίστες συντεταγμένων μιας αλληλουχίας σημείων στο καρτεσιανό επίπεδο, τα οποία σημεία συνδέει ένα ευθύγραμμο τμήμα. Παράδειγμα 25 Χρησιμοποιήστε τη συνάρτηση plot() για να αναπαραστήσετε γραφικά τη συνάρτηση 𝑦(𝑥) = 𝑥 3 + 2𝑥 + 4 στο διάστημα τιμών 𝑥 = [−4, 4]. Απάντηση: x = -2 : 0.1 : 2; y = x.^3 +2*x + 4; plot(x, y); grid on Σχήμα 4 Γραφική παράσταση συνάρτησης 𝑦(𝑥) = 𝑥 3 + 2𝑥 + 4 23 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 26 Να απεικονίσετε τη συνάρτηση 𝑥(𝑡) = 𝑐𝑜𝑠(5𝜋𝑡) − 𝑠𝑖𝑛(7𝜋𝑡) στο διάστημα χρόνου 𝑡 = [0,2] με βήμα δειγματοληψίας 𝑡𝑠 = 0.01. Απάντηση: ts = 0.01; t = 0 : ts : 2; x = cos(5*pi*t) - sin(7*pi*t); plot(t, x); grid on Σχήμα 5 Γραφική παράσταση συνάρτησης 𝑥(𝑡) = 𝑐𝑜𝑠(5𝜋𝑡) − 𝑠𝑖𝑛(7𝜋𝑡) Παράδειγμα 27 Να σχεδιάσετε με την εντολή stem(x, n) τη συνάρτηση 𝑥(𝑛) = cos(𝑛) , 0 ≤ 𝑛 ≤ 4𝜋 με βήμα 𝜋/16. Απάντηση: n = 0 : pi/16 : 4*pi; x = sin(n); stem(n, x); grid on Σχήμα 6 Γραφική παράσταση συνάρτησης 𝑥(𝑛) = cos(𝑛) 24 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» Παράδειγμα 28 Να σχεδιάσετε τους όρους της σειράς: 10 1 𝑥(𝑛) = ∑ 1+𝑛 𝑛=0 Απάντηση: n = 0:10; x = 1./(1+n); stem(n, x); grid on Σχήμα 7 Γραφική παράσταση συνάρτησης 𝑥(𝑛) = ∑10 𝑛=0 1/(1 + 𝑛) 6.1 Χρήσιμες συναρτήσεις για την μορφοποίηση των γραφημάτων Εντολή/Συνάρτηση Αποτέλεσμα Διατηρεί το τρέχον γράφημα και τις ιδιότητες των hold on/off αξόνων ώστε ένα επόμενο γράφημα να εμφανιστεί στο ίδιο παράθυρο. grid on/off Προσθέτει ένα πλέγμα στο γράφημα. xlabel('string') Προσθέτει την λεζάντα string στον x άξονα. ylabel('string') Προσθέτει την λεζάντα string στον y άξονα. axis([x1,x2,y1,y2]) Διαμορφώνει τους άξονες από x1 έως x2 και y1 έως y2. title('string') Προσθέτει τίτλο με λεζάντα string στο γράφημα. xlim([x1, x2]) Διαμορφώνει τον άξονα x από x1 έως x2. ylim([y1, y2]) Διαμορφώνει τον άξονα y από y1 έως y2. 25 Σήματα και Συστήματα Άσκηση 0: «Εισαγωγή στο Matlab» 7. Άλυτες Ασκήσεις 1. Δώστε την κατάλληλη εντολή Matlab ώστε να δημιουργηθεί ο πίνακας του αποτελέσματος. Χρησιμοποιήστε τις συναρτήσεις ones(), zeros() και eye(). A= 1 1 1 0 0 0 1 0 0 1 1 1 0 0 0 0 1 0 1 1 1 0 0 0 0 0 1 2. Δώστε την εντολή: A = magic(4). Να υπολογίσετε το άθροισμα των στοιχείων για κάθε στήλη και γραμμή του πίνακα Α. Επίσης, να υπολογίσετε το άθροισμα των στοιχείων της διαγωνίου. Τι συμπέρασμα βγάζετε για τον πίνακα που δημιουργεί η συνάρτηση magic(); Βοήθεια: Για να υπολογίσετε το άθροισμα των στοιχείων χρησιμοποιήστε τη συνάρτηση sum() και για να εξάγετε την διαγώνιο χρησιμοποιήστε τη συνάρτηση diag(). 3. Δημιουργήστε τον πίνακα Α διαστάσεων 4 x 4 με τη συνάρτηση randi(N,N). Χρησιμοποιήστε τη συνάρτηση inv() για να υπολογίσετε τον αντίστροφο του πίνακα Α. Υπολογίστε το γινόμενο του αντίστροφου πίνακα του Α με τον πίνακα Α. Τι συμπέρασμα βγάζετε από το αποτέλεσμα που προκύπτει; 4. Υπολογίστε το παρακάτω ολοκλήρωμα: 1 𝐼 = ∫ √𝑥 𝑑𝑥 0 Στη συνέχεια να εκτελέσετε στο Matlab τις εξής εντολές: clear a = 0 : 0.001 : 1; b = sqrt(a); i = trapz(a, b) Τι συμπεραίνετε ότι εκτελεί η εντολή trapz(); 5. Δημιουργήστε ένα διάνυσμα Α με την εντολή A = rand(1000,1) και χρησιμοποιήστε την εντολή hist(A) για να αναπαραστήσετε το ιστόγραμμα του. 6. Δημιουργήστε ένα διάνυσμα B = randn(1000,1) και αναπαραστήστε το ιστόγραμμα του όπως στην προηγούμενη άσκηση. Τι συμπεραίνετε; 7. Δημιουργήστε τη συνάρτηση δύο μεταβλητών 𝑓(𝑥, 𝑦) = 𝑦/(1 + 𝑥 2 + 𝑦 2 ). Χρησιμοποιήστε τη συνάρτηση ezsurf() για να αναπαραστήσετε τη γραφική παράσταση της 𝑓(𝑥, 𝑦). 26