Ένας πρώτος τρόπος εύρεσης των διαστάσεων ενός πίνακα στο Matlab είναι με την εντολή size(όνομα πίνακα) και πατώντας enter ( )
Απόδοση των διαστάσεων του προηγούμενου πίνακα σε άλλον πίνακα, τον Χ.
Κάποια επιπλέον παραδείγματα εύρεσης διαστάσεων ενός πίνακα
Οι απλές (βαθμωτές) μεταβλητές αντιμετωπίζονται από το Matlab σαν "πίνακες" διάστασης 1x1
Μπορούμε να ζητήσουμε από το Matlab να μας επιστρέψει μόνο τη μία από τις δύο διαστάσεις ενός πίνακα χρησιμοποιώντας την εντολή size(όνομα πίνακα, διάσταση του πίνακα που θέλουμε)
Σε μονοδιάστατους πίνακες, το πλήθος των στοιχείων τους μπορεί να προσδιοριστεί μέσω της εντολής: length(όνομα πίνακα), η οποία ουσιαστικά επιστρέφει τη μεγαλύτερη διάσταση ενός πίνακα
Απόδοση της μεγαλύτερης διάστασης ενός πίνακα σε μία μεταβλητή
Σημαντικό: Κατά τον ορισμό ενός πίνακα στο Matlab, πρέπει όλες οι γραμμές του να έχουν το ίδιο πλήθος στηλών ή ισοδυνάμως, όλες οι στήλες του να έχουν το ίδιο πλήθος στοιχείων, ανεξαρτήτως του αν ο αριθμός των στηλών είναι διαφορετικός από τον αριθμό των γραμμών του. Παράδειγμα καταστρατήγησης αυτού του κανόνα:
Για να εμφανίσουμε ένα μήνυμα στο command window, αυτό μπορεί να γίνει με την εντολή: disp ( To μήνυμα που θέλουμε να εμφανιστεί )
To MATLAB παρέχει τη δυνατότητα καταγραφής ολοκληρωμένων προγραμμάτων και αποθήκευσης αυτών στο σκληρό δίσκο. Τα προγράμματα αυτά εκτελούν πολλές εντολές στη σειρά. Ο χρήστης μπορεί να τα ανακαλέσει όποτε επιθυμεί είτε για να τα τροποποιήσει είτε για να τα εκτελέσει.
Τρόποι δημιουργίας νέου αρχείου.m στο MATLAB.
Καταγραφή εντολών εντός ενός script αρχείου, το οποίο ακόμα δεν έχει όνομα ούτε έχει σωθεί στο σκληρό δίσκο.
Αποθήκευση script αρχείου με το επιθυμητό όνομα. Εικονίδιο αποθήκευσης
Το αποθηκευμένο πλέον script αρχείο, ονόματι example1.m Αρχείο Matlab
Επιτρεπτά ονόματα αρχείων: to_programma_mou.m PrwtoParadeigma.m PANATHINAIKOS_OSFP.m Lysi_eksiswsis.m Απαγορευμένα ονόματα αρχείων: _to_programma_mou.m ΠρωτοΠαραδειγμα.m PANATHINAIKOS&OSFP.m (Lysi_eksiswsis).m onoma me kena.m
Οι δύο τρόποι εκτέλεσης προγράμματος καταγεγραμμένου σε script file (.m) στο Matlab Το εικονίδιο εκτέλεσης απομονωμένο Το εικονίδιο εκτέλεσης στη γραμμή εργαλείων
Το αποτέλεσμα της εκτέλεσης αποθηκευμένου κώδικα example1.m
Παραδείγματα αποτυχημένης εκτέλεσης αρχείων που δεν τους έχει αποδοθεί ορθό όνομα Ο κατάλογος στον οποίο βρίσκεται το prompt
Αρχικός κατάλογος αυτόματα επιλεγμένος από το Matlab Πατώντας το κουμπί που παρουσιάζεται Εμφανίζεται το διπλανό παράθυρο διαλόγου Με διπλό κλικ πάνω στο όνομα του φακέλου Μεταβαίνουμε στο επιθυμητό Current Directory
Μόλις η εκτέλεση του προγράμματος ολοκληρωθεί, όλες οι μεταβλητές και οι πίνακες που έχουν οριστεί από το πρόγραμμα έχουν δεσμευτεί στη μνήμη του υπολογιστή. Ανάκληση αυτών των τιμών από τη μνήμη.
O χαρακτήρας ; στο τέλος μιας γραμμής εντολών εμποδίζει την εμφάνιση του αποτελέσματος της αντίστοιχης εντολής. Με ερωτηματικό περατούνται μόνο οι γραμμές, οι οποίες εκφράζουν ολοκληρωμένες λογικές προτάσεις, πχ. αποδόσεις τιμών σε μεταβλητές ή πίνακες.
Ο καλός σχολιασμός ενός κώδικα είναι απαραίτητος για την καλύτερη κατανόηση του, την παρακολούθηση του, την αποσφαλμάτωσή του (debugging) και την ενδεχόμενη μελλοντική τροποποίησή του. Σχόλια: Εντολές μη-εκτελέσιμες από το Matlab Ξεκινούν πάντα με το χαρακτήρα % Ισχύουν μόνο για μία γραμμή εντολών
Ο καλός σχολιασμός ενός κώδικα είναι άριστη προγραμματιστική τεχνική
Η θεμελιώδης συνθήκη if if συνθήκη_1... εντολές_1... end
Η θεμελιώδης δομή if, elseif, else if συνθήκη_1... εντολές_1... elseif συνθήκη_2... εντολές_2... else... εντολές_3... end
if συνθήκη_1... εντολές_1... elseif συνθήκη_2... εντολές_2... elseif συνθήκη_3... εντολές_3...... elseif συνθήκη_ν-1... εντολές_ν-1... else... εντολές_ν... end Απαγορεύεται η χρήση του χαρακτήρα ; στο τέλος μιας συνθήκης if elseif x<0; %ΑΠΑΓΟΡΕΥΕΤΑΙ!! Οι εντολές if, elseif, else, end είναι δεσμευμένες εντολές του Matlab και απαγορεύεται η χρήση τους στην ονομασία μεταβλητών ή αρχείων
Παράδειγμα χρήσης της δομής if για τον έλεγχο της βαθμολογίας ενός σπουδαστή σε μία εξέταση Ο βαθμός του σπουδαστή είναι μεγαλύτερος ή ίσος του πέντε; Ναι Τύπωσε μήνυμα επιτυχίας Όχι Τύπωσε μήνυμα αποτυχίας
Πρόσθεση πινάκων +
Οι διαστάσεις των πινάκων που προστίθενται πρέπει να είναι ίσες!
Αφαίρεση πινάκων -
Οι διαστάσεις των πινάκων που αφαιρούνται πρέπει να είναι ίσες!
Πολλαπλασιασμός πινάκων * * = m 1 m 2 m 1 n 1 n 2 n 2 Απαραίτητη προϋπόθεση για την εκτέλεση της εντολής: n 1 =m 2
Ο πίνακας GINOMENO έχει διαστάσεις 1x1 Ο πίνακας D2_GINOM έχει διαστάσεις 3x3
Στην περίπτωση που n 1 m 2
Τετραγωνικός πινακας: Ο πίνακας στον οποίο ο αριθμός των γραμμών είναι ίσος με τον αριθμό των στηλών. Σε γλώσσα Matlab: size(a,1)=size(a,2) Μόνο οι τετραγωνικοί πίνακες μπορούν να πολλαπλασιάσουν τον εαυτό τους
size(a)=size(a*a) Ο πολλαπλασιασμός ενός πίνακα με τον εαυτό του δεν εφαρμόζεται για μη-τετραγωνικούς πίνακες size(a1,2) size(a1,1)
Ισοδύναμοι τρόποι αναπαράστασης του A3
size(a)=size(a*a_square) =size(a_square*a) Ισοδύναμοι τρόποι υπολογισμού του Α 4 A_EIS_THN_TETARTH=A_TRITIS*A =A*A_TRITIS =A*A*A*A =A_SQUARE*A_SQUARE =A_SQUARE*A*A =A^4 Επαγωγικά ορίζεται ο πίνακας Α ν Α ν =Α*Α ν-1
ΠΡΟΣΟΧΗ! Εν γένει A B B A Ακόμη και όταν ο πολλαπλασιασμός επιτρέπεται αμφίδρομα
Η χρήση του τελεστή.^
A.*B : Γινόμενο στοιχείο προς στοιχείο των Α,Β (πρέπει οι πίνακες να έχουν τις ίδιες διαστάσεις) A*B : Γινόμενο των Α,Β (πρέπει οι στήλες του Α να είναι ίσες με τις γραμμές του Β)
Στην πράξη Β./Α τα στοιχεία του Β διαιρούνται ένα προς ένα με τα στοιχεία του Α. Απαιτείται size(a)=size(b)