Όλες οι συναρτήσεις στο Matlab εκκινούν με την εξής γραμμή: function [επιστρεφόμενες_μεταβλητές] = όνομα_συνάρτησης(ορίσματα) Παράδειγμα συνάρτησης υπολογισμού της τιμής ενός πολυωνύμου εντός κάποιου διαστήματος A: πίνακας συντελεστών πολυωνύμου x: πεδίο ορισμού εντός του οποίου θα υπολογιστεί το πολυώνυμο y: πίνακας τιμών πολυωνύμου
Η συνάρτηση διαχειρίζεται ορθά τα ορίσματά της εν γένει ανεξαρτήτως του μεγέθους αυτών. O χρήστης πρέπει να προσέχει ιδιαίτερα στις διαστάσεις του Β.
Τα ονόματα των μεταβλητών του αρχείου της συνάρτησης, μπορεί να είναι εντελώς διαφορετικά από τα αντίστοιχα ονόματα κατά την κλήση αυτής. Π.χ. Κατά την κλήση ενώ στο αρχείο της συνάρτησης Το μόνο που παίζει ρόλο είναι η αμφιμονοσήμαντη αντιστοιχία μεταξύ των μεταβλητών κατά την γραφή της συνάρτησης και στις δύο περιπτώσεις. Στο προκείμενο w y, B A, z x
Τα κατωτέρω ισχύουν και είναι πολύ χρήσιμα function [y1,y2] = synart_1(a,b,x) Μεταβλητές χρησιμοποιούμενες στο σώμα της synart_1 έστωσαν οι i,j,k. function [y1,y2,y3] = synart_2(a,b,c,x,z) Μεταβλητές χρησιμοποιούμενες στο σώμα της synart_2 έστωσαν οι i,j,k. Η συνάρτηση που καλεί τις synart_1, synart_2, μπορεί να Χρησιμοποιήσει όλες τις μεταβλητές αυτών π.χ. τις y1,y2,y3,a,b,c,x,z,i,j,k.
Συνάρτηση που πραγματοποιεί στροφή και μετατόπιση μιας καμπύλης
Αριστερά του ίσον, οι επιστρεφόμενες μεταβλητές/πίνακες τοποθετούνται υποχρεωτικά εντός αγκυλών, διότι είναι περισσότερες της μίας. Οι τρεις τελείες είναι ο τελεστής που επιτρέπει συνέχιση μίας εντολής στην από κάτω γραμμή. Χωρίς αυτές, η αλλαγή γραμμής αυστηρά απαγορεύεται Οι τρεις τελείες δεν μπορούν να διακόψουν όνομα μεταβλητής, ούτε συνάρτησης, ούτε αρχείου, κλπ.
Συνάρτηση κατασκευής τομέα έλλειψης
Κώδικας ο οποίος δημιουργεί έναν τομέα έλλειψης, τον στρέφει ως προς ένα τυχόν κέντρο και τον μετατοπίζει κατά ένα συγκεκριμένο βέλος
Σε κάθε συνάρτηση η σειρά των ορισμάτων ως και το είδος τους πρέπει να είναι τα ορθά. Μόνον ο προσεκτικός προγραμματιστής μπορεί να το εξασφαλίσει αυτό. Οι πίνακες που επιστρέφει η πρώτη συνάρτηση μπαίνουν υποχρεωτικά ως όρισμα στη δεύτερη προκειμένου να υποστεί τους κατάλληλους μετασχηματισμούς η ίδια καμπύλη.
Στο Matlab, όπως και στα μαθηματικά μπορούμε να αποδίδουμε όποια συνάρτηση από το ίδιο αρχείο επιθυμούμε σε ένα γενικό όνομα μέσω της εξής εντολής
Κώδικας ο οποίος ζητά από το χρήστη να δίνει συνεχώς τιμές α και β, μέχρις ότου η f(α) και η f(β) να γίνουν ετερόσημες ή μία εκ των δύο να γίνει μηδέν
Δομή επανάληψης while while synthiki entoli_1; entoli_2; entoli_n; end
Προσοχή στο @ κατά την κλήση, το οποίον ταυτίζει την synart με την f
Θεώρημα Bolzano-Weierstrass Έστω f(x) τυχούσα συνάρτηση μίας μεταβλητής, ορισμένη και συνεχής στο κλειστό διάστημα [α,β] Εάν ισχύει f(α)f(β)<0, τότε Υπάρχει τουλάχιστον ένα ρ στο ανοικτό διάστημα (α,β), τέτοιο ώστε f(ρ)=0 Θεωρούμε Μ=(α+β)/2 το μέσο του διαστήματος [α,β] Θα ισχύει ή f(α)f(μ)<0 ή f(β)f(μ)<0 ή f(m)=0 Η ρίζα θα βρίσκεται, αντίστοιχα, ή στο διάστημα [α,μ] ή στο διάστημα [Μ,β] ή θα είναι το Μ Άρα το θεώρημα θα ισχύει σε μικρότερου μήκους διάστημα
Συνάρτηση που υλοποιεί τον αλγόριθμο εύρεσης ρίζας συνεχούς f
Ολοκληρωμένο πρόγραμμα εντοπισμού ριζών συνεχούς συνάρτησης
Παραδείγματα εκτέλεσης του προηγούμενου κώδικα Εκτέλεση με μικρή ακρίβεια (10^(-5)) Εκτέλεση με μεγάλη ακρίβεια (10^(-12))
Ζητείται να γραφεί κώδικας, ο οποίος, χρησιμοποιώντας κατάλληλη συνάρτηση που θα αναπτυχθεί, θα επιτελεί τα εξής: Θα προτρέπει τον χρήστη να δώσει μία φράση από το πληκτρολόγιο στα αγγλικά ή στα ελληνικά χωρίς τόνους, την οποίαν και θα διαβάζει. Θα μετρά το πλήθος των λέξεων της φράσης. Θα ελέγχει αν η φράση είναι καρκινική, αφού αφαιρεθούν τα κενά. Παράδειγμα γνωστής ελληνικής καρκινικής φράσης: νιψον ανομηματα μη μοναν οψιν.
Η ζητούμενη συνάρτηση
Παραδείγματα εφαρμογής του συμβόλου [] στο Matlab
Παράδειγμα εφαρμογής της diff() Έστω ο πίνακας Α=[1,3,6,11,19,2]. Τότε
Η αρχική φράση έχει όντως 5 λέξεις!
Έλεγχος για το αν η φράση είναι καρκινική
Ορισμός ορισμένου ολοκληρώματος Το ορισμένο ολοκλήρωμα είναι το εμβαδόν του χωρίου που περικλείεται από τον άξονα των x, τα δύο εμφαινόμενα κάθετα σε αυτόν ευθύγραμμα τμήματα και το γράφημα της ολοκληρωτέας συνάρτησης. Η έννοια του ορισμένου ολοκληρώματος διατυπώθηκε και χρησιμοποιήθηκε εκτενώς για πρώτη φορά από το μεγαλύτερο Μαθηματικό όλων των εποχών, τον Αρχιμήδη τον Συρακόσιο, περί τον 4 ο αιώνα π.χ.
Μέθοδος ολοκλήρωσης συναρτήσεων στο Matlab με τη μέθοδο των τραπεζίων Παράδειγμα προσέγγισης του εμβαδού ενός υποδιαστήματος μιας συνάρτησης με το εμβαδόν ενός στοιχειώδους τραπεζίου.
E ί ώ ( ά ή ά ά ) ύ 2 Ο υπολογισμός του τραπεζοειδούς ολοκληρώματος μιας οποιασδήποτε ολοκληρωτέας συνάρτησης, υλοποιημένος σε function
Παράδειγμα κώδικα που ορίζει την παραβολή y 2x 2 3x 1 και καλεί την προηγούμενη συνάρτηση για τον υπολογισμό του ολοκληρώματος αυτής εντός ενός διαστήματος με τη μέθοδο των τραπεζίων. Το αποτέλεσμα εκτέλεσής του
Τρόπος εφαρμογής της εγγενούς συνάρτησης trapz() του Matlab στην παραβολή της προηγούμενης διαφάνειας. Ο ολοκληρωτέος y θεωρείται δεδομένος από τον κώδικα που εκτελέστηκε προηγούμενα H trapz() σε αυτή τη μορφή δεν χρειάζεται ως όρισμα το x, διότι το vima που επελέγει είναι σταθερό. Η συνάρτηση our_oloklhrwma, όπως και η trapz() με άλλη σύνταξη, μπορούν να διαχειριστούν και μεταβλητό vima.