ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ"

Transcript

1 ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ Πτυχιακή εργασία Κατασκευή πακέτου προσομοίωσης σε Matlab της κυκλικής κίνησης στην Φυσική Επιβλέπων Καθηγητής: Δρ. Απόστολος Κουιρουκίδης Όνομα Σπουδαστή: Ιωάννης Χάγιαννης Σέρρες 2015

2 ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ ΠΡΟΣΟΜΟΙΩΣΗ ΚΑΙ ΟΠΤΙΚΟΠΟΙΗΣΗ Η σημασία της προσομοίωσης Η σημασία της οπτικοποίησης ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ Νόμοι του Νεύτωνα Ομαλή Κυκλική κίνηση Κεντρομόλος δύναμη ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB Βασικές Πράξεις και Ορισμός Μεταβλητών M-Files Προγραμματισμός στο Matlab Δημιουργία GUI στο Matlab ΕΚΤΕΛΕΣΗ ΠΡΟΣΟΜΟΙΩΣΗ ΚΥΚΛΙΚΗΣ ΚΙΝΗΣΗΣ Θεωρητικός σχεδιασμός εφαρμογής Σχεδιασμός εφαρμογής Προγραμματισμός εφαρμογής Εκτέλεση εφαρμογής ΠΑΡΑΡΤΗΜΑ Α. Κώδικας MATLAB ΒΙΒΛΙΟΓΡΑΦΙΑ

3 ΕΙΣΑΓΩΓΗ Η κυκλική κίνηση είναι μια κίνηση που παρατηρείται πολύ συχνά, όπως στην κίνηση των τροχών των ποδηλάτων και των αυτοκινήτων, στην περιστροφή ενός ανεμιστήρα, στις κινήσεις πλανητών και δορυφόρων. Είναι γενικά εύκολο να περιγράψουμε και να μελετήσουμε τα καθαρά κινητικά χαρακτηριστικά της, όπως ακτίνα, περίοδο, συχνότητα, γωνιακή και γραμμική ταχύτητα και τις σχέσεις τους, αλλά μάλλον αδύνατο να παρατηρήσουμε την αιτία της, δηλαδή τα δυναμικά της χαρακτηριστικά, όπως την κεντρομόλο δύναμη και τις σχέσεις της με όλα τα προηγούμενα. Η μόνη εναλλακτική δυνατότητα που έχουμε, αν θέλουμε να κάνουμε την πειραματική μελέτη της δυναμικής της, είναι να καταφύγουμε σε προσομοιώσεις. Στην εργασία αυτή θα μελετήσουμε την κυκλική κίνηση μίας σημειακής μάζας και ιδιαίτερα την εξάρτηση της κεντρομόλου δύναμης από τη μάζα, την ακτίνα της τροχιάς και τη γωνιακή ταχύτητα, δημιουργώντας ένα εικονικό εργαστήριο φυσικής μέσο του λογισμικού πακέτου Μatlab. 2

4 1. ΠΡΟΣΟΜΟΙΩΣΗ ΚΑΙ ΟΠΤΙΚΟΠΟΙΗΣΗ 1.1. Η σημασία της προσομοίωσης Η προσομοίωση (simulation) είναι η τεχνητή μίμηση πραγματικών καταστάσεων, διαδικασιών ή πραγμάτων. Στις Φυσικές Επιστήμες, συνήθως αναπαριστούμε με την προσομοίωση κάποια ουσιώδη χαρακτηριστικά ή συμπεριφορές ενός φυσικού συστήματος. Η προσομοίωση την υλοποίηση μιας πειραματικής διαδικασίας, όχι όμως σε πραγματικό εργαστήριο, αλλά σε εικονικό. Σε ένα τέτοιο εικονικό εργαστήριο η λειτουργία της φύσης γίνεται από έναν ηλεκτρονικό υπολογιστή. Μερικά πλεονεκτήματα της προσομοίωσης είναι η επαναληψιμότητα όσον αφορά στα αποτελέσματα, η δυνατότητα εκτέλεσης του εικονικού πειράματος σε οποιοδήποτε περιβάλλον, η ευκολία χειρισμού μεταβλητών του περιβάλλοντος ή των αλληλεπιδράσεων, η ασφάλεια. Τελευταίο στάδιο της προσομοίωσης, είναι η ανάλυση των αποτελεσμάτων, που συχνά γίνεται με την οπτικοποίησή τους Η σημασία της οπτικοποίησης Δεν υπάρχει αμφιβολία ότι ο ανθρώπινος νους αντιλαμβάνεται πιο εύκολα και πιο γρήγορα το περιβάλλον του όταν το παρατηρεί σαν εικόνα, παρά όταν προσπαθεί να μεταφράσει τα αποτελέσματα της προσομοίωσης. Γίνεται έτσι απαραίτητο τα αποτελέσματα κάθε προσομοίωσης, που είναι αρχικά αριθμοί και που αντιστοιχούν σε συμβάντα, αντικείμενα και κατανομές στο χώρο, να «μεταφράζονται» σε εικόνες του συστήματος που μελετάμε και των παραμέτρων του. Με αυτές τις εικόνες οδηγούμαστε στην ταχύτερη και καλύτερη κατανόηση των φαινομένων. Στην επιστήμη, γενικότερα, χρησιμοποιούμε ένα πολύ μεγάλο πλήθος εικόνων και αναπαραστάσεων για την οπτικοποίηση. 3

5 2. ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ 2.1. Νόμοι του Νεύτωνα Οι δύο πρώτοι νόμοι του Νεύτωνα μας επιτρέπουν να περιγράφουμε την κίνηση που κάνει ένα σώμα όταν γνωρίζουμε τη συνισταμένη των δυνάμεων που ενεργούν σ' αυτό, την αρχική θέση του καθώς και την αρχική του ταχύτητα. Έτσι αν σε ένα σώμα δεν ασκούνται δυνάμεις, ή αν ασκούνται και έχουν συνισταμένη μηδέν, τότε σύμφωνα με τον πρώτο νόμο του Νεύτωνα αυτό θα ηρεμεί ή θα κινείται με ομαλή ευθύγραμμη κίνηση. Αν η συνισταμένη των δυνάμεων που ασκούνται σε ένα σώμα δεν είναι μηδέν, τότε σύμφωνα με το δεύτερο νόμο του Νεύτωνα αυτό έχει επιτάχυνση α, ομόρροπη της δύναμης, που προσδιορίζεται από τη σχέση F = m α, όπου m είναι η μάζα του σώματος Ομαλή Κυκλική κίνηση Ένα κινητό κάνει κυκλική κίνηση όταν η τροχιά που διαγράφει είναι περιφέρεια κύκλου. Ομαλή χαρακτηρίζεται η κυκλική κίνηση ενός κινητού, όταν η τιμή της ταχύτητάς του παραμένει σταθερή. Ο χρόνος που χρειάζεται το κινητό για να κάνει μία περιφορά, λέγεται περίοδος (Τ) της κυκλικής κίνησης. Ο αριθμός των περιφορών που εκτελεί το κινητό στη μονάδα του χρόνου λέγεται συχνότητα (f )της κυκλικής κίνησης. Γραμμική ταχύτητα (u) είναι ένα διάνυσμα που έχει μέτρο ίσο με το πηλίκο του τόξου Δs που διανύει το υλικό σημείο σε χρόνο Δt προς τον χρόνο αυτό. Γωνιακή ταχύτητα (ω) είναι ένα διάνυσμα που έχει διεύθυνση κάθετη στο επίπεδο της τροχιάς του και μέτρο ίσο με το πηλίκο της γωνίας Δθ που διαγράφει το υλικό σημείο σε χρόνο Δt προς τον χρόνο αυτό. Η κεντρομόλος επιτάχυνση(α) είναι υπεύθυνη για τη μεταβολή της διεύθυνσης της γραμμικής ταχύτητας. 4

6 5 R R a f t t Rf T R t s t s 2 2 κ υ Κεντρομόλος δύναμη Ας θεωρήσουμε την περίπτωση που ένα σώμα εκτελεί κυκλική κίνηση με ταχύτητα σταθερής τιμής. Επειδή η κατεύθυνση της ταχύτητας συνεχώς μεταβάλλεται, συνεπώς υπάρχει επιτάχυνση (κεντρομόλος) και σύμφωνα με το δεύτερο νόμο του Νεύτωνα στο σώμα ασκείται δύναμη. Η δύναμη αυτή έχει κατεύθυνση προς το κέντρο της κυκλικής τροχιάς και γι' αυτό λέγεται κεντρομόλος δύναμη Γενικά κάθε δύναμη που αναγκάζει ένα σώμα να εκτελεί ομαλή κυκλική κίνηση λέγεται κεντρομόλος δύναμη. Η κεντρομόλος επιτάχυνση έχει την ίδια κατεύθυνση με την κεντρομόλο δύναμη. R m m a F 2 κ κ υ..

7 3. ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB Το λογισμικό MATLAB, παίρνει το όνομά του από τις λέξεις MATrix LABoratory, είναι ένα σύγχρονο ολοκληρωμένο μαθηματικό πακέτο για υψηλής απόδοσης αριθμητικούς υπολογισμούς (numerical computations). Είναι ένα διαδραστικό (interactive) πρόγραμμα για αριθμητικούς υπολογισμούς και για κατασκευή γραφημάτων, αλλά παρέχει επίσης και τη δυνατότητα προγραμματισμού, κάτι που το καθιστά ένα χρήσιμο εργαλείο για όλους όσους ασχολούνται με τις θετικές επιστήμες. Αποτελεί ένα εξελιγμένο υπολογιστικό εργαλείο το οποίο μπορεί να βρει εφαρμογή σε διάφορους τομείς της επιστήμης αλλά βέβαια και της πράξης, όπως για παράδειγμα τη μηχανική, την ιατρική και τη βιομηχανική παραγωγή. Μάλιστα, το φάσμα των εφαρμογών του συγκεκριμένου πακέτου λογισμικού διευρύνεται συνεχώς και περισσότερο, αναδεικνύοντας με αυτό τον τρόπο τις πολλαπλές δυνατότητες του, όπως την υψηλή απόδοση και ταχύτητα υπολογιστικών αναλύσεων, την δυνατότητα προσομοίωσης φυσικών συστημάτων, την δυνατότητα υλοποίησης αλγορίθμων, την δυνατότητα αμφίδρομης επικοινωνίας με πληθώρα άλλων προγραμμάτων και εφαρμογών και την υψηλής ποιότητας γραφικές απεικονίσεις και animations Βασικές Πράξεις και Ορισμός Μεταβλητών Η πιο απλή λειτουργία του Matlab είναι η χρήση του ως μία κοινή αριθμομηχανή. Η σειρά εκτέλεσης των πράξεων, στο Matlab είναι η ακόλουθη: Στην περίπτωση που σε μια αριθμητική παράσταση υπάρχουν παρενθέσεις εκτελούνται πρώτα οι πράξεις μέσα στις παρενθέσεις από μέσα προς τα έξω. Η εκτέλεση των πράξεων γίνεται πάντοτε από τα αριστερά προς τα δεξιά. Μεταξύ των βασικών αριθμητικών πράξεων πρώτα εκτελείται η ύψωση σε δύναμη. Στη συνέχεια εκτελούνται οι πολλαπλασιασμοί και οι διαιρέσεις με ίδια προτεραιότητα. Τελευταίες εκτελούνται οι προσθέσεις και οι αφαιρέσεις με την ίδια προτεραιότητα. 6

8 Μία εντολή εισάγεται πληκτρολογώντας στο παράθυρο εντολών δεξιά από το σύμβολο προτροπής». Η εισαγωγή της εντολής ολοκληρώνεται με το πάτημα του πλήκτρου Enter. Στην περίπτωση που δεν ορίζεται κάποια μεταβλητή, η εντολή εκτελείται και το αποτέλεσμα εμφανίζεται στην οθόνη μετά την έκφραση ans= (συντομογραφία της αγγλικής λέξης answer). Η έκφραση ans αποτελεί μια προεπιλεγμένη μεταβλητή η οποία χρησιμοποιείται για να αποθηκευτεί το αποτέλεσμα της εντολής. Στον ορισμό των μεταβλητών θα πρέπει να αναφέρουμε ότι μία μεταβλητή μπορεί να οριστεί χρησιμοποιώντας αλφαριθμητικούς χαρακτήρες και χαρακτήρες υπογράμμισης (_). To Matlab δεν δέχεται ελληνικούς χαρακτήρες για τον ορισμό τον μεταβλητών. Ο πρώτος χαρακτήρας μιας μεταβλητής θα πρέπει να είναι γράμμα του λατινικού αλφαβήτου. Ο μέγιστος αριθμός χαρακτήρων που μπορεί να έχει μία μεταβλητή είναι 63 χαρακτήρες. Μία εντολή στο Matlab εκτός από αριθμούς, μεταβλητές και αριθμητικές παραστάσεις, μπορεί να περιλαμβάνει και συναρτήσεις. To Matlab διαθέτει μία πληθώρα έτοιμων συναρτήσεων για την υλοποίηση ενός μεγάλου αριθμού μαθηματικών υπολογισμών. Κάθε συνάρτηση έχει ένα όνομα και μία παράμετρο (αριθμό, μεταβλητή, αριθμητική παράσταση) μέσα σε παρενθέσεις. To Matlab δίνει τη δυνατότητα στο χρήστη να εισάγει σχόλια μαζί με τις εντολές. Αυτό επιτυγχάνεται πληκτρολογώντας το σύμβολο επί τοις εκατό (%) στην αρχή μιας γραμμής ή δίπλα από μια εντολή. Οτιδήποτε γράφεται μετά το σύμβολο % αναγνωρίζεται από το Matlab ως σχόλιο M-Files To Matlab παρέχει τη δυνατότητα αποθήκευσης μιας ακολουθίας εντολών σε ένα αρχείο και στη συνέχεια την εκτέλεση αυτών με μία μόνο εντολή. Η ακολουθία αυτή των εντολών μπορεί να γραφεί σε ένα αρχείο κειμένου με την επέκταση (m), δηλαδή όνομααρχειου.m. Στο Matlab υπάρχουν δύο διαφορετικοί τύποι M-Files. τα αρχεία script και τα αρχεία συναρτήσεως. Τα αρχεία script : είναι ιδιαίτερα χρήσιμα σε περιπτώσεις που απαιτείται η επανάληψη μιας 7

9 μεγάλης ακολουθίας εντολών, δεν έχουν μεταβλητές εισόδου και εξόδου, οι μεταβλητές που υπολογίζονται προστίθενται στο χώρο εργασίας με αποτέλεσμα να μπορούν να χρησιμοποιηθούν και από άλλα αρχεία script ή από το παράθυρο εντολών. Πρόκειται δηλαδή για καθολικές μεταβλητές (global variables). Τα αρχεία συναρτήσεων : επιτρέπουν τον εμπλουτισμό της γλώσσας προγραμματισμού Matlab στα πλαίσια των εφαρμογών του χρήστη, δέχονται μεταβλητές εισόδου και επιστρέφουν μεταβλητές εξόδου, οι μεταβλητές που ορίζονται μέσα στη συνάρτηση ισχύουν μόνο για τη συνάρτηση, είναι δηλαδή τοπικές μεταβλητές (local variables) Προγραμματισμός στο Matlab To Matlab ως γλώσσα προγραμματισμού διαθέτει ένα πλούσιο σύνολο εργαλείων που μπορούν να χρησιμοποιηθούν για τον έλεγχο της ροής ενός προγράμματος. Ένα πρόγραμμα είναι μια ακολουθία εντολών που στην απλούστερη του μορφή οι εντολές εκτελούνται η μία μετά την άλλη, με τη σειρά που έχουν πληκτρολογηθεί. Τις περισσότερες φορές σε πιο σύνθετα προγράμματα, διαφορετικές μεταβλητές εισόδου απαιτούν την υπό συνθήκη εκτέλεση κάποιων τμημάτων εντολών του προγράμματος ή μπορεί να απαιτείται η επανάληψη μιας ακολουθίας εντολών. Συνεπώς θα πρέπει να δηλώνεται κατά την πληκτρολόγηση του κώδικα ενός προγράμματος η πιθανή μεταβολή της ροής του προγράμματος. Αυτό πραγματοποιείται με τη χρήση των σχεσιακών και λογικών τελεστών καθώς και με τις δομές ελέγχου. Η δομή if χρησιμοποιείτε στην περίπτωση που υπάρχει μια αμοιβαία αποκλειόμενη περίπτωση που καθορίζετε από την ισχύ μιας συνθήκης. Η δομή if else χρησιμοποιείτε στην περίπτωση που υπάρχουν δύο αμοιβαία αποκλειόμενες περιπτώσεις που καθορίζονται από την ισχύ μιας συνθήκης. Η δομή if else if else χρησιμοποιείτε στην περίπτωση που υπάρχουν περισσότερες από δύο αμοιβαία αποκλειόμενες περιπτώσεις 8

10 Οι πιο συχνά χρησιμοποιούμενες δομές επανάληψης είναι ο βρόχος (loop) του for και ο βρόχος του while. Σε ένα βρόχο μία εντολή ή μια ομάδα εντολών επαναλαμβάνεται συνεχώς για έναν προκαθορισμένο αριθμό επαναλήψεων ή έως ότου ισχύσει μια συνθήκη. Σε κάθε επανάληψη, η οποία ονομάζεται βήμα, τουλάχιστον μία μεταβλητή η οποία ορίζεται μέσα στον βρόχο λαμβάνει νέα τιμή. Ειδικότερα, ο βρόχος for χρησιμοποιείται για την εκτέλεση μιας εντολής ή μιας ομάδας εντολών για συγκεκριμένο αριθμό επαναλήψεων. Από την άλλη, ο βρόχος while χρησιμοποιείται για την εκτέλεση μιας εντολής ή μιας ομάδας εντολών όταν δεν είναι προκαθορισμένο το πλήθος των επαναλήψεων αλλά εξαρτάται από την ισχύ μιας συγκεκριμένης συνθήκης Η δομή switch επιτρέπει την επιλογή εκτέλεσης διαφορετικών συνόλων εντολών ανάλογα με την τιμή μιας έκφρασης. Ουσιαστικά είναι εναλλακτική της δομής if else if - else - για την περίπτωση όπου οι διάφορες ελεγχόμενες συνθήκες είναι συνθήκες ισότητας. Η δομή switch χρησιμοποιείται συνήθως για τη δημιουργία ενός μενού επιλογών. Μερικές έτοιμες συναρτήσεις που είναι υλοποιημένες στη Matlab, τις οποίες χρησιμοποίησα για την υλοποίηση του προγράμματος είναι: Hold on Διατηρεί το τρέχον γράφημα και προσθέτει άλλο ένα γράφημα σε αυτό. Η MATLAB προσαρμόζει τα όρια στους άξονες και σημειώνει τις ετικέτες όπως είναι απαραίτητο για να εμφανιστεί το πλήρες φάσμα του γραφήματος που προστίθεται. Hold off Επαναφέρει την κατάσταση «hold» στην προεπιλεγμένη συμπεριφορά, στην οποία η MATLAB καθαρίζει το υπάρχον γράφημα και επαναφέρει τις ιδιότητες των αξόνων στις προεπιλογές τους πριν την σχεδίαση νέων γραφημάτων. Str2double Μετατρέπει τη συμβολοσειρά που δέχεται ως είσοδο σε μια αναπαράσταση πραγματικού αριθμού. Η συμβολοσειρά θα πρέπει να είναι σε μια αναπαράσταση χαρακτήρα τύπου ASCII που αντιστοιχεί σε ένα πραγματικό αριθμό. 9

11 3.4. Δημιουργία GUI στο Matlab Το ΜΑΤLΑΒ προσφέρει στο χρήστη τη δυνατότητα να κατασκευάσει δικές του γραφικές διεπιφάνειες, (GUI). Ένα GUI αποτελείται συνήθως από διάφορα παράθυρα, τα οποία περιέχουν ποικίλα στοιχεία ελέγχου όπως πεδία κειμένου, γραμμές κύλισης, λίστες, πεδία εισαγωγής κειμένου κ.α. Τα παράθυρα αυτά είναι δυνατόν να καλούν το ένα το άλλο, να δέχονται δεδομένα από το χρήστη, να μεταβιβάζουν πιθανώς τα δεδομένα από το ένα παράθυρο στο άλλο και γενικά να επιτελούν διάφορες λειτουργίες. Η ανάπτυξη μίας εφαρμογής σε GUI χωρίζεται σε τέσσερα στάδια: Θεωρητική σχεδίαση της εφαρμογής πριν την υλοποίησή της σε MATLAB. Σχεδίαση της εφαρμογής στο κατάλληλο περιβάλλον (GUIDE Layout Editor) και δημιουργία των απαιτούμενων αντικειμένων. Καθορισμός των ιδιοτήτων του GUI και του κάθε αντικειμένου. Προγραμματισμός του κάθε αντικειμένου, εάν χρειάζεται. To GUIDE είναι το πρόγραμμα σχεδιασμού GUI της Matlab. Εμφανίζεται με την εντολή GUIDE και μας δίνει τη δυνατότητα να σχεδιάσουμε το GUI και να προσθέσουμε τον κώδικα. Το GUIDE για να το πετύχει αυτό δημιουργεί για κάθε νέο παράθυρο δύο αρχεία. Τα αρχεία αυτά είναι το Fig-file και το M-file. Το Fig-file ουσιαστικά είναι το παράθυρο figure, όπου το ΜΑΤLΑΒ αποθηκεύει τα στοιχεία ελέγχου και την ακριβή θέση τους. Εδώ ο προγραμματιστής σχεδιάζει την εμφάνιση του παραθύρου. Στο M-file ο προγραμματιστής πρέπει να γράψει τον κώδικα που θα ενσωματωθεί στα στοιχεία ελέγχου (π.χ. κουμπιά ή φόρμες εισαγωγής δεδομένων), ώστε αυτά να επιτελέσουν τις επιθυμητές λειτουργίες. Πρέπει να σημειωθεί ότι κάθε αρχείο *.fig πρέπει να συνοδεύεται από το αντίστοιχο αρχείο *.m (με το ίδιο όνομα). Αν για κάποιο λόγο, χαθεί ή καταστραφεί το *.m αρχείο, τότε το παράθυρο *.fig δε θα είναι λειτουργικό. Κάθε φορά που κάποιος χρήστης δημιουργεί ένα νέο παράθυρο (figure), το 10

12 GUIDE δημιουργεί αυτομάτως και τους δυο προαναφερθέντες τύπους αρχείων. 11

13 4. ΕΚΤΕΛΕΣΗ ΠΡΟΣΟΜΟΙΩΣΗ ΚΥΚΛΙΚΗΣ ΚΙΝΗΣΗΣ 4.1. Θεωρητικός σχεδιασμός εφαρμογής Η εφαρμογή που θα δημιουργήσουμε αφορά την μελέτη της κυκλική κίνησης μίας σημειακής μάζας, οπτικοποιώντας την εκτέλεση της κίνησης σε ρυθμό προσομοίωσης που επιλέγει ο χρήστης. Οι πράξεις που θα υπολογίζει η εφαρμογή θα αφορούν την εξάρτηση της κεντρομόλου δύναμης από τη μάζα, την ακτίνα της τροχιάς και τη γωνιακή ταχύτητα. Για την καλύτερη λειτουργία του συγκεκριμένου προγράμματος, οι τιμές στις μεταβλητές είναι εντός καθορισμένων οριακών τιμών. Ο χρήστης θα χειρίζεται το πρόγραμμα μέσω μιας διεπιφάνειας, η οποία θα περιέχει τα απαραίτητα στοιχεία ελέγχου: 5 κουμπιά εκτέλεσης εντολών (push_button) για να εκτελούν τις λειτουργίες Εκτέλεση, Διακοπή, Ανανέωση, Έξοδος, Βοήθεια. 6 στοιχεία ελέγχου (edit_text). για πάρουμε την τιμή που θα εισάγει μέσα σε αυτό ο χρήστης. Δημιουργία γραφήματος (axes) σε πραγματικό χρόνο για οπτικοποίηση των αποτελεσμάτων Σχεδιασμός εφαρμογής Αρχικά εκκινούμε το GUIDE και δημιουργούμε ένα νέο παράθυρο-figure. Το αποθηκεύουμε δίνοντάς του ταυτόχρονα το όνομα gkentromolos. Σε αυτό το σημείο το ΜΑΤLΑΒ αυτομάτως εκκινεί τον Μ-file editor και δημιουργεί το αντίστοιχο Μ-file. Παρατηρούμε ότι στο Μ-file δημιουργούνται κάποιες ενσωματωμένες συναρτήσεις, όπως είναι οι ακόλουθες: function varargout = gkentromolos (varargin) function gkentromolos _OpeningFcn(hObject, eventdata, handles, varargin) function varargout = gkentromolos _OutputFcn(hObject, eventdata, handles) 12

14 Οι παραπάνω συναρτήσεις που ενσωματώθηκαν στο Μ-file, είναι απαραίτητες για τη σωστή λειτουργία του παραθύρου. Το ΜΑΤLΑΒ για κάθε μία από αυτές συμπεριλαμβάνει κάποια επεξηγηματικά σχόλια. Συγκεκριμένα, η πρώτη συνάρτηση χρειάζεται ώστε να μπορεί ο χρήστης να καλεί το παράθυρο από τη γραμμή εντολών πληκτρολογώντας το όνομά του (» gkentromolos). Επιπλέον, ο κώδικας που περιλαμβάνεται στο σώμα εντολών της δεύτερης συνάρτησης εκτελείται ακριβώς πριν εκκινήσει το παράθυρο. Τέλος, οι εντολές που υπάρχουν στην τρίτη συνάρτηση, εξάγουν τα αποτελέσματά τους στη γραμμή εντολών του ΜΑΤLΑΒ. Έπειτα θα αρχίσουμε να εισάγουμε από την αριστερή κάθετη γραμμή εργαλείων τα διάφορα στοιχεία ελέγχου. Εισάγουμε πρώτα ένα πλαίσιο (frame), αλλάζοντας το μέγεθός του έτσι ώστε να καλύπτει τον χώρο στον οποίο θα βάλουμε τα στοιχειά έλεγχου της εφαρμογής μας, καθώς και την διαμόρφωση του. Στη συνέχεια εισάγουμε όλα στοιχεία ελέγχου που θα μας χρειαστούν. Αναλυτικά, πέντε push buttons, έξι edit text, έξι static text και axes. 13

15 Συνεχίζουμε αλλάζοντας, εάν θέλουμε, για όλα αυτά τα στοιχεία που έχουμε εισάγει το χρώμα τους κατά τη βούληση μας, καθώς επίσης και το κείμενο που θα φαίνεται επάνω τους αλλά και το μέγεθος των στοιχείων ελέγχου. Επιπλέον, όπως προαναφέραμε, μπορούμε να τα στοιχίσουμε για να πετύχουμε ομοιόμορφη εμφάνιση Προγραμματισμός εφαρμογής Σε αυτό το σημείο στο αντίστοιχο Μ file, παρατηρεί κανείς ότι έχουν ενσωματωθεί πολλές ακόμη συναρτήσεις. Στην συνεχεία θα αρχίσουμε τον προγραμματισμό των push buttons, τα οποία θα εκτελούν κάποιες λειτουργίες. Μέσα στο Μ-file υπάρχουν οι αντίστοιχες συναρτήσεις : function pushbutton1_callback(hobject, eventdata, handles) %Εκτέλεση function pushbutton2 _Callback(hObject, eventdata, handles) % Διακοπή function pushbutton3 _Callback(hObject, eventdata, handles) %Ανανέωση function pushbutton4 _Callback(hObject, eventdata, handles) %Έξοδος function pushbutton5 _Callback(hObject, eventdata, handles) % Βοήθεια Στην πρώτη θα δηλώσουμε τις εντολές που χρειάζονται για να εκτελεστεί η λειτουργία Εκτέλεση. Δηλαδή την εκτέλεση της εφαρμογής και την ενεργοποίηση των λειτουργιών Ανανέωση και Έξοδος. Στην δεύτερη θα δηλώσουμε τις εντολές που χρειάζονται για να εκτελεστεί η λειτουργία Διακοπή. Δηλαδή την παύση εκτέλεσης της εφαρμογής και την ενεργοποίηση των λειτουργιών Συνεχεία, Ανανέωση και Έξοδος. Στην τρίτη θα δηλώσουμε τις εντολές που χρειάζονται για να εκτελεστεί η λειτουργία Ανανέωση. Δηλαδή να διαγράφεται το όποιο αποτέλεσμα της εφαρμογής και να εμφανίζονται κενά (Nul) τα edit texts, για να εισάγει ξανά ο χρήστης τις τιμές και την ενεργοποίηση την λειτουργιάς Εκτέλεση. Στην τέταρτη θα δηλώσουμε τις εντολές που χρειάζονται για να εκτελεστεί η λειτουργία Έξοδος, όπου θα κλείνει η εφαρμογή. Στην πέμπτη θα δηλώσουμε τις εντολές που χρειάζονται για να εκτελεστεί η λειτουργία Βοήθεια, όπου θα παραπέμπει σε βοηθητικό αρχείο με επεξηγήσεις. 14

16 4.4. Εκτέλεση εφαρμογής Κατά την εκτέλεση του προγράμματος εμφανίζεται το figure της εικονικής απεικόνισης της Κυκλικής Κίνησης με προκαθορισμένες τιμές στις μεταβλητές / παραμέτρους Μάζα Κινητού (m), Χρόνος Παρατήρησης (t) και Ρυθμός Προσομοίωσης. Στις τιμές αυτές υπάρχει η δυνατότητα αλλαγής τους. Στις μεταβλητές Ακτίνα Τροχιάς (R), Γραμμική Ταχύτητα(u), Γωνιακή Ταχύτητα (ω), θα πρέπει να δώσουμε τιμές στις δύο από τις τρείς μεταβλητές στα όρια που έχουμε καθορίσει. 15

17 Στην περίπτωση που ο χρήστης δεν δηλώσει τις δυο από τις τρεις μεταβλητές ή καταχωρήσει τιμές σε οπουδήποτε μεταβλητή εκτός των πιο πάνω ορίων, τότε εμφανίζετε μήνυμα λάθους, μέσο της εντολής : h=warndlg(warningstring). if (R>2) hfin=warndlg('βάλτε στην Ακτίνα Τροχιάς τιμή μικρότερη ή ίση του 2'); return Η εντολή εμφανίζει ένα παράθυρο διαλόγου (dialog box) με το μήνυμα προειδοποίησης που είναι δηλωμένο στο string. Η εντολή h=questdlg(warningstring) εμφανίζει παράθυρο διαλόγου (dialog box) με το μήνυμα προειδοποίησης. Το παράθυρο διαλόγου έχει τρία κουπιά, YES, NO, CANCEL και με την επιλογή τους δίνουν τον ανάλογο string στην h. Ο χρήσης δηλώνει τιμές στις μεταβλητές που επιθυμεί, μέσο των edit text, και πατώντας το push button Εκτέλεση, η εφαρμογή αρχίζει να εκτελείται. Η εφαρμογή εκτελείτε για χρόνο παρατήρησης (t) που έχει δηλώσει ο χρήστης. Κατά την διάρκεια της εκτέλεσης ο χρήστης έχει την δυνατότητα : 16

18 να λάβει τις τιμές των φυσικών παραμέτρων της κυκλικής κίνησης καθώς και την τιμή της κεντρομόλου δύναμης Οι τιμές των φυσικών παραμέτρων της κυκλικής κίνησης υπολογιστήκαν βάση τις τιμές των μεταβλητών που δήλωσε ο χρήστης και με βάση τις μαθηματικές σχέσεις που δηλώθηκαν στο πρόγραμμα : R ί ά R ή ύ ή ύ R 2 υ Fκ m. R ό ύ a1=isnan(r); %η εντολή isnan (is not a number) επιστρέφει true or false a2=isnan(omega); a3=isnan(v); if (a1==1) R=v/omega; if (a2==1) omega=v/r; if (a3==1) v=omega*r; Fk=m*v*v/R; Στην περίπτωση τις πιο πάνω εφαρμογής η κεντρομόλος δύναμη που αναγκάζει τη σφαίρα να κινηθεί σε κυκλική τροχιά είναι η τάση του νήματος. ή Fκ m. 2 υ R ό ύ 17

19 Αν η σφαίρα περιφέρεται με ολοένα αυξανόμενη ταχύτητα, τότε σύμφωνα με τη πιο πάνω σχέση απαιτείται μεγαλύτερη δύναμη για να τη συγκρατήσει σε κυκλική τροχιά. Αν η δύναμη αυτή υπερβεί την τάση θραύσης του νήματος, τότε αυτό κόβεται και η σφαίρα κινείται ευθύγραμμα κατά την εφαπτομένη της τροχιάς στη θέση που κόπηκε το νήμα. Στην περίπτωση τις εφαρμογής αυτής η τάση θραύσης του νήματος ορίστηκε 200 kgm/sec 2. F K >200 Όταν η τιμή της κεντρομόλου είναι μεγαλύτερη από 200 kgm/sec2 τότε επιτρέπουμε στο σώμα να εκτελέσει την κυκλική κίνηση για μια περίοδο και τότε δείχνουμε την πορεία που ακλουθεί το σώμα μετά το σπάσιμο του νήματος, το όποιο κινείται ευθύγραμμα κατά την εφαπτομένη του τροχιά στη θέση που κόπηκε το νήμα. Η πορεία εκτέλεσης του προγράμματος με βάση την τιμή της κεντρομόλου δύναμης, έγινε με την χρήση της δομής if else, oπου: if (Fk<=200) %εντολές else %εντολές 18

20 19

21 να παρακολουθεί τη πορεία του σώματος και των δυνάμεων που ασκούνται σε αυτό. Για να επιτύχουμε το πιο πάνω σχεδιάγραμμα που απεικονίζει την κίνηση του σώματος, το όποιο είναι στερεωμένο σε νήμα και εκτελεί κυκλική κίνηση με την βοήθεια ενός χεριού, χρησιμοποιήσαμε την εντολή fill όπου δέχεται συντεταμένες (Χ,Υ)και δημιουργεί κλειστά πολύγωνα με καθορισμένο χρώμα. 20

22 ΠΑΡΑΡΤΗΜΑ Α. Κώδικας MATLAB function varargout = kentromolos(varargin) % KENTROMOLOS M-file for kentromolos.fig % KENTROMOLOS, by itself, creates a new KENTROMOLOS or raises the existing % singleton*. % % H = KENTROMOLOS returns the handle to a new KENTROMOLOS or the handle to % the existing singleton*. % % KENTROMOLOS('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in KENTROMOLOS.M with the given input arguments. % % KENTROMOLOS('Property','Value',...) creates a new KENTROMOLOS or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before kentromolos_openingfcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to kentromolos_openingfcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help kentromolos % Begin initialization code - DO NOT EDIT gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); else gui_mainfcn(gui_state, varargin{:}); % End initialization code - DO NOT EDIT % --- Executes just before kentromolos is made visible. function kentromolos_openingfcn(hobject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hobject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to kentromolos (see VARARGIN) % Choose default command line output for kentromolos handles.output = hobject; % Update handles structure guidata(hobject, handles); % UIWAIT makes kentromolos wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = kentromolos_outputfcn(hobject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hobject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; function edit1_callback(hobject, eventdata, handles) % hobject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) 21

23 % Hints: get(hobject,'string') returns contents of edit1 as text % str2double(get(hobject,'string')) returns contents of edit1 as a double % --- Executes during object creation, after setting all properties. function edit1_createfcn(hobject, eventdata, handles) % hobject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hobject,'backgroundcolor'), get(0,'defaultuicontrolbackgroundcolor')) set(hobject,'backgroundcolor','white'); function edit2_callback(hobject, eventdata, handles) % hobject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hobject,'string') returns contents of edit2 as text % str2double(get(hobject,'string')) returns contents of edit2 as a double % --- Executes during object creation, after setting all properties. function edit2_createfcn(hobject, eventdata, handles) % hobject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hobject,'backgroundcolor'), get(0,'defaultuicontrolbackgroundcolor')) set(hobject,'backgroundcolor','white'); function edit3_callback(hobject, eventdata, handles) % hobject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hobject,'string') returns contents of edit3 as text % str2double(get(hobject,'string')) returns contents of edit3 as a double % --- Executes during object creation, after setting all properties. function edit3_createfcn(hobject, eventdata, handles) % hobject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hobject,'backgroundcolor'), get(0,'defaultuicontrolbackgroundcolor')) set(hobject,'backgroundcolor','white'); function edit4_callback(hobject, eventdata, handles) % hobject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hobject,'string') returns contents of edit4 as text % str2double(get(hobject,'string')) returns contents of edit4 as a double % --- Executes during object creation, after setting all properties. function edit4_createfcn(hobject, eventdata, handles) % hobject handle to edit4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hobject,'backgroundcolor'), get(0,'defaultuicontrolbackgroundcolor')) set(hobject,'backgroundcolor','white'); function edit5_callback(hobject, eventdata, handles) % hobject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) 22

24 % Hints: get(hobject,'string') returns contents of edit5 as text % str2double(get(hobject,'string')) returns contents of edit5 as a double % --- Executes during object creation, after setting all properties. function edit5_createfcn(hobject, eventdata, handles) % hobject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hobject,'backgroundcolor'), get(0,'defaultuicontrolbackgroundcolor')) set(hobject,'backgroundcolor','white'); function edit6_callback(hobject, eventdata, handles) % hobject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hobject,'string') returns contents of edit6 as text % str2double(get(hobject,'string')) returns contents of edit6 as a double % --- Executes during object creation, after setting all properties. function edit6_createfcn(hobject, eventdata, handles) % hobject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hobject,'backgroundcolor'), get(0,'defaultuicontrolbackgroundcolor')) set(hobject,'backgroundcolor','white'); % --- Executes on button press in pushbutton1. function pushbutton1_callback(hobject, eventdata, handles) % hobject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global m; global v; global omega; global RR; global t; global ryt; m=str2double(get(handles.edit1,'string')); %object mass RR=str2double(get(handles.edit2,'String')); %orbit radius omega=str2double(get(handles.edit3,'string')); %angular velocity v=str2double(get(handles.edit4,'string')); %linear velocity t=str2double(get(handles.edit5,'string')); %observation time ryt=str2double(get(handles.edit6,'string')); %simulation speed global stam; stam=0; set(handles.pushbutton2,'string','διακοπή'); global status; status=0; %check if RR, omega and v are specified a1=isnan(rr); a2=isnan(omega); a3=isnan(v); suma=a1+a2+a3; %check variable values and issue warnings if values are outside of %specified limits if (suma~=1) hfin=warndlg('επιλέξτε ακριβώς 2 από τις τρείς μεταβλητές'); return if (ryt>0.5 ryt<0.001) h=warndlg('βάλτε στο Ρυθμό Προσομοίωσης τιμή μεταξύ και 0.5'); return 23

25 if (t<10) hfin=warndlg('βάλτε στο Χρόνο Παρατήρησης τιμή μεγαλύτερη ή ίση του 10'); return if (t>400) hfin=warndlg('βάλτε στο Χρόνο Παρατήρησης τιμή μικρότερη ή ίση του 400'); return if (m<1) hfin=warndlg('βάλτε στη Μάζα τιμή μεγαλύτερη ή ίση του 1'); return if (m>3) hfin=warndlg('βάλτε στη Μάζα τιμή μικρότερη ή ίση του 3'); return if (a1==0) if (RR<0.5) hfin=warndlg('βάλτε στην Ακτίνα Τροχιάς τιμή μεγαλύτερη ή ίση του 0.5'); return if (RR>2) hfin=warndlg('βάλτε στην Ακτίνα Τροχιάς τιμή μικρότερη ή ίση του 2'); return if (a2==0) if (omega<5) hfin=warndlg('βάλτε στην Γωνιακή Ταχύτητα τιμή μεγαλύτερη ή ίση του 5'); return if (omega>10) hfin=warndlg('βάλτε στην Γωνιακή Ταχύτητα τιμή μικρότερη ή ίση του 10'); return if (a3==0) if (v<5) hfin=warndlg('βάλτε στη Γραμμική Ταχύτητα τιμή μεγαλύτερη ή ίση του 5'); return if (v>10) hfin=warndlg('βάλτε στη Γραμμική Ταχύτητα τιμή μικρότερη ή ίση του 10'); return ryte =-ryt ; set(handles.edit1,'enable','off'); set(handles.edit2,'enable','off'); set(handles.edit3,'enable','off'); set(handles.edit4,'enable','off'); set(handles.edit5,'enable','off'); set(handles.edit6,'enable','off'); set(handles.pushbutton1,'enable','off'); set(handles.pushbutton3,'enable','off') set(handles.pushbutton4,'enable','off') axes(handles.axes1) axis off; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 24

26 %set some variables L0=1; th=0:0.01:pi; th1=0:0.01:2*pi; Rmin=0.0125; Rmin1=0.04; L=0.5; Dx=0.325; Dy=-0.025; %set initial co-ordinates of objects on the diagram %wall co-ordinates xtoixos=[0,3,3,0]; ytoixos=[-0.5,-0.5,0.5,0.5]; %hand co-ordinates xxeri=[1.00, , , , , , , Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th)]; xxeri=xxeri+l-0.06*l ; yxeri=[0.40, , , , , , , Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th)]; yxeri=yxeri ; xxeri1=[1.015+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.015]; xxeri1=xxeri1+l-0.06*l ; yxeri1=[0.30+rmin+rmin*sin(3*pi/2-th), ,0.325, Rmin+Rmin*sin(pi/2-th),0.30]; yxeri1=yxeri ; xxeri2=[1.005+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.005]; xxeri2=xxeri2+l-0.06*l ; yxeri2=[0.325+rmin+rmin*sin(3*pi/2-th), ,0.350, Rmin+Rmin*sin(pi/2-th),0.325]; yxeri2=yxeri ; xxeri3=[0.99+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),0.99]; xxeri3=xxeri3+l-0.06*l ; yxeri3=[0.350+rmin+rmin*sin(3*pi/2-th), ,0.375, Rmin+Rmin*sin(pi/2-th),0.350]; yxeri3=yxeri ; xxeri4=[1.00+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.00]; xxeri4=xxeri4+l-0.06*l ; 25

27 yxeri4=[0.375+rmin+rmin*sin(3*pi/2-th), ,0.40, Rmin+Rmin*sin(pi/2-th),0.375]; yxeri4=yxeri ; xxeri5=[1.10+rmin1*cos(pi/2+2*th/3), Rmin1*cos(pi/2+2*pi/3)+3*Rmin*sin(th/2),1.125]; xxeri5=xxeri5+l-0.06*l ; yxeri5=[0.40-rmin1+rmin1*sin(pi/2+2*th/3), Rmin1+Rmin1*sin(pi/2+2*pi/3)-2*Rmin*cos(pi/2+th/2),0.38]; yxeri5=yxeri ; xxeri6=[0.1,0.15+rmin1*cos(5*pi/4+th/2),0.15+rmin1*cos(5*pi/4+pi/2-th/2)]; xxeri6=xxeri6+l-0.06*l+0.50; yxeri6=[0.0,rmin1*sin(5*pi/4+th/2),rmin1*sin(5*pi/4+pi/2-th/2)]; yxeri6=yxeri ; %bar co-ordinates xstick=[1.4,1.42,1.42,1.4]-0.035; ystick=[0.185,0.185,0.2,0.2]-0.024; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %5<w<10 %1<m<3 %t=10; %ryt=0.05; %m=3; %omega=5; %v=5; %RR=v/omega; %if not specified set the radius of rotation if (a1==1) RR=v/omega; %if not specified set the angular velocity if (a2==1) omega=v/rr; %if not specified set the linear velocity if (a3==1) v=omega*rr; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %force= mass * (linear velocity)^2 / radius; Fk=m*v*v/RR; %Lom = 0.1 * (angular velocity) / 5 Lom=0.1*omega/5; a=0.65*rr; b=0.05*rr; %pythagoras theorem for ab ab=(a*a+b*b)^0.5; xc= ; yc= ; Rb=0.06*(m/3)^(1/3); LFk=0.5; LFkx=LFk*a; LFky=LFk*b; Lv=0.4; Lvx=Lv*a; Lvy=Lv*b; %estimate orbit in x-direction: a*cosine(theta1), same but shifted by xtroxia=[a*cos(th1),(a+0.005)*cos(th1)]+xc; %estimate orbit in y-direction: a*sine(theta1), same but shifted by ytroxia=[b*sin(th1),(b+0.005)*sin(th1)]+yc; xvectorom=xc+[0.0065,0.0065,0.025,0.0,-0.025, , ]; yvectorom=yc+[0.0,lom,lom,lom+0.02,lom,lom,0.0]; xpivakas=[0.2,2.75,2.75,0.2]; ypivakas=[ ,-0.05,-0.05]; 26

28 xpivakasb=[0.18,2.77,2.77,0.18]; ypivakasb=[ ,-0.04,-0.04]; xgom=xc; ygom=yc+lom+0.03; nm=num2str(0.01*round(100*m)); nv=num2str(0.01*round(100*v)); nr=num2str(0.01*round(100*rr)); nom=num2str(0.01*round(100*omega)); nfk=num2str(0.01*round(100*fk)); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% t1=(3*pi/2)/omega; NN=t1/0.05; NN=round(NN); %time step for simulation if Force > 200N Dt=t1/NN; %if the force is smaller than 200N, execute this loop; else execute loop if (Fk<=200) %%%%%%%%%%%% %simulate system for t seconds in time steps of 0.05 for time=0.0:0.05:t if (stam==1) cc1=stam; while (cc1==1) cc1=stam; pause(0.01); if (status==1) return nt=num2str(0.01*round(100*time)); phi1=omega*time; %calculate angle at each time step xhand=(a/20)*cos(phi1); yhand=(b/20)*sin(phi1); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %co-odrinates for hand image xxeri=[1.00, , , , , , , Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th)]; xxeri=xxeri+l-0.06*l xhand; yxeri=[0.40, , , , , , , Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th)]; yxeri=yxeri yhand; xxeri1=[1.015+rmin*cos(3*pi/2-th), ,1.060,... 27

29 Rmin*cos(pi/2-th),1.015]; xxeri1=xxeri1+l-0.06*l xhand; yxeri1=[0.30+rmin+rmin*sin(3*pi/2-th), ,0.325, Rmin+Rmin*sin(pi/2-th),0.30]; yxeri1=yxeri yhand; xxeri2=[1.005+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.005]; xxeri2=xxeri2+l-0.06*l xhand; yxeri2=[0.325+rmin+rmin*sin(3*pi/2-th), ,0.350, Rmin+Rmin*sin(pi/2-th),0.325]; yxeri2=yxeri yhand; xxeri3=[0.99+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),0.99]; xxeri3=xxeri3+l-0.06*l xhand; yxeri3=[0.350+rmin+rmin*sin(3*pi/2-th), ,0.375, Rmin+Rmin*sin(pi/2-th),0.350]; yxeri3=yxeri yhand; xxeri4=[1.00+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.00]; xxeri4=xxeri4+l-0.06*l xhand; yxeri4=[0.375+rmin+rmin*sin(3*pi/2-th), ,0.40, Rmin+Rmin*sin(pi/2-th),0.375]; yxeri4=yxeri yhand; xxeri5=[1.10+rmin1*cos(pi/2+2*th/3), Rmin1*cos(pi/2+2*pi/3)+3*Rmin*sin(th/2),1.125]; xxeri5=xxeri5+l-0.06*l xhand; yxeri5=[0.40-rmin1+rmin1*sin(pi/2+2*th/3), Rmin1+Rmin1*sin(pi/2+2*pi/3)-2*Rmin*cos(pi/2+th/2),0.38]; yxeri5=yxeri yhand; xxeri6=[0.1,0.15+rmin1*cos(5*pi/4+th/2),0.15+rmin1*cos(5*pi/4+pi/2-th/2)]; xxeri6=xxeri6+l-0.06*l+0.50+xhand; yxeri6=[0.0,rmin1*sin(5*pi/4+th/2),rmin1*sin(5*pi/4+pi/2-th/2)]; yxeri6=yxeri yhand; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %co-ordinates for bar xbar=xc+[0.005*sin(phi1),0.005*sin(phi1)+a*cos(phi1), *sin(phi1)+a*cos(phi1),-0.005*sin(phi1)]; ybar=yc+[-0.005*cos(phi1),-0.005*cos(phi1)+b*sin(phi1), *cos(phi1)+b*sin(phi1),0.005*cos(phi1)]; xbody=xc+a*cos(phi1)+rb*cos(th1); ybody=yc+b*sin(phi1)+(rb-0.6*rb)*sin(th1); xbody1=xc+a*cos(phi1)+0.97*rb*cos(th1); ybody1=yc+b*sin(phi1)+0.97*(rb-0.6*rb)*sin(th1)+0.002; xbody2=xc+a*cos(phi1)+0.93*rb*cos(th1); ybody2=yc+b*sin(phi1)+0.93*(rb-0.6*rb)*sin(th1)+0.002; xbody3=xc+a*cos(phi1)+0.85*rb*cos(th1); ybody3=yc+b*sin(phi1)+0.85*(rb-0.6*rb)*sin(th1)+0.002; xbody4=xc+a*cos(phi1)+0.75*rb*cos(th1); ybody4=yc+b*sin(phi1)+0.75*(rb-0.6*rb)*sin(th1) ;

30 xbody5=xc+a*cos(phi1)+0.62*rb*cos(th1); ybody5=yc+b*sin(phi1)+0.62*(rb-0.6*rb)*sin(th1) ; xbody6=xc+a*cos(phi1)+0.48*rb*cos(th1); ybody6=yc+b*sin(phi1)+0.48*(rb-0.6*rb)*sin(th1)+0.003; xbody7=xc+a*cos(phi1)+0.32*rb*cos(th1); ybody7=yc+b*sin(phi1)+0.32*(rb-0.6*rb)*sin(th1)+0.003; xbody8=xc+a*cos(phi1)+0.14*rb*cos(th1); ybody8=yc+b*sin(phi1)+0.14*(rb-0.6*rb)*sin(th1) ; xbody9=xc+a*cos(phi1)+0.02*rb*cos(th1); ybody9=yc+b*sin(phi1)+0.02*(rb-0.025)*sin(th1) ; xk=xc+a*cos(phi1); yk=yc+b*sin(phi1); xvectorf=xk+[0.005*sin(phi1),0.005*sin(phi1)-lfkx*cos(phi1), *sin(phi1)-LFkx*cos(phi1)+0.01*sin(phi1),... -(LFkx+0.085*a)*cos(phi1), *sin(phi1)-LFkx*cos(phi1)-0.01*sin(phi1), *sin(phi1)-LFkx*cos(phi1),-0.005*sin(phi1)]; yvectorf=yk+[-0.005*cos(phi1),-0.005*cos(phi1)-lfky*sin(phi1), *cos(phi1)-LFky*sin(phi1)-0.01*cos(phi1),... -(LFky+0.085*b)*sin(phi1), *cos(phi1)-LFky*sin(phi1)+0.01*cos(phi1), *cos(phi1)-LFky*sin(phi1),0.005*cos(phi1)]; xgf=xc+0.8*a*cos(phi1-pi/10); ygf=yc+0.8*b*sin(phi1-pi/10); xgv=xc+1.2*a*cos(phi1+pi/10); ygv=yc+1.2*b*sin(phi1+pi/10); xvectorv=xk+[0.004*cos(phi1),0.004*cos(phi1)-lvx*sin(phi1)/ab, *cos(phi1)-Lvx*sin(phi1)/ab+0.02*a*cos(phi1)/ab,... -(Lvx+0.085*a)*sin(phi1)/ab, *cos(phi1)-Lvx*sin(phi1)/ab-0.02*a*cos(phi1)/ab, *cos(phi1)-Lvx*sin(phi1)/ab,-0.004*cos(phi1)]; yvectorv=yk+[0.004*sin(phi1),0.004*sin(phi1)+lvy*cos(phi1)/ab, *sin(phi1)+Lvy*cos(phi1)/ab+0.02*b*sin(phi1)/ab,... (Lvy+0.085*b)*cos(phi1)/ab, *sin(phi1)+Lvy*cos(phi1)/ab-0.02*b*sin(phi1)/ab, *sin(phi1)+Lvy*cos(phi1)/ab,-0.004*sin(phi1)]; %start drawing image fill(xtoixos,ytoixos,[ ],... xpivakasb, ypivakasb,[0.5,0.4,0.3],... xpivakas,ypivakas,[0.95,0.95,0.95],... xstick,ystick,[0.2,0.2,0.2],... xtroxia,ytroxia,[0.2,0.2,0.2],... xvectorf,yvectorf,[0,0.0,1],... xvectorv,yvectorv,[1,1,0],... xvectorom,yvectorom,[0.9,0.,0.9],... xbody,ybody,[0.4,0.4,0.],... xbody1,ybody1,[0.42,0.42,0.2],... xbody2,ybody2,[0.44,0.44,0.2],... xbody3,ybody3,[0.46,0.46,0.2],... xbody4,ybody4,[0.49,0.49,0.2],... xbody5,ybody5,[0.52,0.52,0.2],... xbody6,ybody6,[0.56,0.56,0.2],... xbody7,ybody7,[0.6,0.6,0.2],... xbody8,ybody8,[0.65,0.65,0.2],... xbody9,ybody9,[0.7,0.7,0.2],... 'Linestyle','None') hold on %draw hand fill(xxeri+dx,yxeri+dy,[0.45,0.45,0.1],... xxeri6+dx,yxeri6+dy,[0.45,0.45,0.1],... xxeri1+dx,yxeri1+dy,[0.45,0.45,0.1],... xxeri2+dx,yxeri2+dy,[0.45,0.45,0.1],... xxeri3+dx,yxeri3+dy,[0.45,0.45,0.1],... xxeri4+dx,yxeri4+dy,[0.45,0.45,0.1],... xxeri5+dx,yxeri5+dy,[0.45,0.45,0.1]) 29

31 hold on %draw orbit and object body fill(xtroxia,ytroxia,[0.2,0.2,0.2],... xbar,ybar,[0.2,0.2,0.2],... xvectorf,yvectorf,[0,0.0,1],... xvectorv,yvectorv,[1,1,0],... xvectorom,yvectorom,[0.9,0.,0.9],... xbody,ybody,[0.4,0.4,0.],... xbody1,ybody1,[0.42,0.42,0.2],... xbody2,ybody2,[0.44,0.44,0.2],... xbody3,ybody3,[0.46,0.46,0.2],... xbody4,ybody4,[0.49,0.49,0.2],... xbody5,ybody5,[0.52,0.52,0.2],... xbody6,ybody6,[0.56,0.56,0.2],... xbody7,ybody7,[0.6,0.6,0.2],... xbody8,ybody8,[0.65,0.65,0.2],... xbody9,ybody9,[0.7,0.7,0.2],... 'Linestyle','None') hold off % text(0.8,-0.07,'ομαλη ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ - Κεντρομόλος Δύναμη ','Color','b','Fontsize',9) % text(1.75,-0.07,'γραμμική Ταχύτητα','Color','k','Fontsize',8) %%%%%% %fill in table with variables, their values, units and equations text(xgf,ygf,'f_κ','color','b','fontsize',8) text(xgv,ygv,'υ','color','y','fontsize',8) text(xgom,ygom,'ω','color',[ ],'Fontsize',8) text(0.3, ,'m =','Color','k','Fontsize',8) text(0.4, ,nm,'color','k','fontsize',8) text(0.55, ,'kgm','color','k','fontsize',8) text(0.3, ,'r =','Color','k','Fontsize',8) text(0.4, ,nr,'color','k','fontsize',8) text(0.55, ,'m','color','k','fontsize',8) text(0.3, ,'υ =','Color','k','Fontsize',8) text(0.4, ,nv,'color','k','fontsize',8) text(0.55, ,'m/sec','color','k','fontsize',8) text(0.3, ,'ω =','Color','k','Fontsize',8) text(0.4, ,nom,'color','k','fontsize',8) text(0.55, ,'rad/sec','color','k','fontsize',8) text(0.3, ,'f_κ =','Color','k','Fontsize',8) text(0.4, ,nfk,'color','k','fontsize',8) text(0.55, ,'kgm/sec^2','color','k','fontsize',8) text(0.3+1, ,'t =','Color','b','Fontsize',8) text(0.4+1, ,nt,'color','b','fontsize',8) text(0.55+1, ,'sec','color','b','fontsize',8) axis([0,3,-0.5,0.5]) axis off arx1 = [0.85, 0.95] ; tel1 = [-0.12, -0.12] ; line(arx1, tel1, 'Color','r'); text( , ,'mυ^2','color','r','fontsize',9) text( , ,'F_κ = (1)','Color','r','Fontsize',9) text( , ,'r ','Color','r','Fontsize',9) text( , ,'υ = ωr (2)','Color','b','Fontsize',9) text( , ,'F_κ = mω^2r (3)','Color','r','Fontsize',9) text( , ,'F_κ = mωυ pause(ryte) (4)','Color','r','Fontsize',9) %if Force is >200N, execute this loop which shows that the object excapes %the orbit 30

32 %%%%% else %%%%% % pause(1000) for time=0.0:dt:t1 if (stam==1) cc1=stam; while (cc1==1) cc1=stam; pause(0.01); if (status==1) return nt=num2str(0.01*round(100*time)); %estimate angle of rotation phi1=omega*time; xhand=(a/20)*cos(phi1); yhand=(b/20)*sin(phi1); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% xxeri=[1.00, , , , , , , Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th), Rmin*cos(3*pi/2-th)]; xxeri=xxeri+l-0.06*l xhand; yxeri=[0.40, , , , , , , Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th), Rmin+Rmin*sin(3*pi/2-th)]; yxeri=yxeri yhand; xxeri1=[1.015+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.015]; xxeri1=xxeri1+l-0.06*l xhand; yxeri1=[0.30+rmin+rmin*sin(3*pi/2-th), ,0.325, Rmin+Rmin*sin(pi/2-th),0.30]; yxeri1=yxeri yhand; xxeri2=[1.005+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.005]; xxeri2=xxeri2+l-0.06*l xhand; yxeri2=[0.325+rmin+rmin*sin(3*pi/2-th), ,0.350, Rmin+Rmin*sin(pi/2-th),0.325]; yxeri2=yxeri yhand; xxeri3=[0.99+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),0.99]; 31

33 32 xxeri3=xxeri3+l-0.06*l xhand; yxeri3=[0.350+rmin+rmin*sin(3*pi/2-th), ,0.375, Rmin+Rmin*sin(pi/2-th),0.350]; yxeri3=yxeri yhand; xxeri4=[1.00+rmin*cos(3*pi/2-th), ,1.060, Rmin*cos(pi/2-th),1.00]; xxeri4=xxeri4+l-0.06*l xhand; yxeri4=[0.375+rmin+rmin*sin(3*pi/2-th), ,0.40, Rmin+Rmin*sin(pi/2-th),0.375]; yxeri4=yxeri yhand; xxeri5=[1.10+rmin1*cos(pi/2+2*th/3), Rmin1*cos(pi/2+2*pi/3)+3*Rmin*sin(th/2),1.125]; xxeri5=xxeri5+l-0.06*l xhand; yxeri5=[0.40-rmin1+rmin1*sin(pi/2+2*th/3), Rmin1+Rmin1*sin(pi/2+2*pi/3)-2*Rmin*cos(pi/2+th/2),0.38]; yxeri5=yxeri yhand; xxeri6=[0.1,0.15+rmin1*cos(5*pi/4+th/2),0.15+rmin1*cos(5*pi/4+pi/2-th/2)]; xxeri6=xxeri6+l-0.06*l+0.50+xhand; yxeri6=[0.0,rmin1*sin(5*pi/4+th/2),rmin1*sin(5*pi/4+pi/2-th/2)]; yxeri6=yxeri yhand; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% xbar=xc+[0.005*sin(phi1),0.005*sin(phi1)+a*cos(phi1), *sin(phi1)+a*cos(phi1),-0.005*sin(phi1)]; ybar=yc+[-0.005*cos(phi1),-0.005*cos(phi1)+b*sin(phi1), *cos(phi1)+b*sin(phi1),0.005*cos(phi1)]; xbody=xc+a*cos(phi1)+rb*cos(th1); ybody=yc+b*sin(phi1)+(rb-0.6*rb)*sin(th1); xbody1=xc+a*cos(phi1)+0.97*rb*cos(th1); ybody1=yc+b*sin(phi1)+0.97*(rb-0.6*rb)*sin(th1)+0.002; xbody2=xc+a*cos(phi1)+0.93*rb*cos(th1); ybody2=yc+b*sin(phi1)+0.93*(rb-0.6*rb)*sin(th1)+0.002; xbody3=xc+a*cos(phi1)+0.85*rb*cos(th1); ybody3=yc+b*sin(phi1)+0.85*(rb-0.6*rb)*sin(th1)+0.002; xbody4=xc+a*cos(phi1)+0.75*rb*cos(th1); ybody4=yc+b*sin(phi1)+0.75*(rb-0.6*rb)*sin(th1) ; xbody5=xc+a*cos(phi1)+0.62*rb*cos(th1); ybody5=yc+b*sin(phi1)+0.62*(rb-0.6*rb)*sin(th1) ; xbody6=xc+a*cos(phi1)+0.48*rb*cos(th1); ybody6=yc+b*sin(phi1)+0.48*(rb-0.6*rb)*sin(th1)+0.003; xbody7=xc+a*cos(phi1)+0.32*rb*cos(th1); ybody7=yc+b*sin(phi1)+0.32*(rb-0.6*rb)*sin(th1)+0.003; xbody8=xc+a*cos(phi1)+0.14*rb*cos(th1); ybody8=yc+b*sin(phi1)+0.14*(rb-0.6*rb)*sin(th1) ; xbody9=xc+a*cos(phi1)+0.02*rb*cos(th1); ybody9=yc+b*sin(phi1)+0.02*(rb-0.6*rb)*sin(th1) ; xk=xc+a*cos(phi1); yk=yc+b*sin(phi1); xvectorf=xk+[0.005*sin(phi1),0.005*sin(phi1)-lfkx*cos(phi1), *sin(phi1)-LFkx*cos(phi1)+0.01*sin(phi1),... -(LFkx+0.085*a)*cos(phi1), *sin(phi1)-LFkx*cos(phi1)-0.01*sin(phi1), *sin(phi1)-LFkx*cos(phi1),-0.005*sin(phi1)]; yvectorf=yk+[-0.005*cos(phi1),-0.005*cos(phi1)-lfky*sin(phi1), *cos(phi1)-LFky*sin(phi1)-0.01*cos(phi1),...

34 -(LFky+0.085*b)*sin(phi1), *cos(phi1)-LFky*sin(phi1)+0.01*cos(phi1), *cos(phi1)-LFky*sin(phi1),0.005*cos(phi1)]; xgf=xc+0.8*a*cos(phi1-pi/10); ygf=yc+0.8*b*sin(phi1-pi/10); xgv=xc+1.2*a*cos(phi1+pi/10); ygv=yc+1.2*b*sin(phi1+pi/10); xvectorv=xk+[0.004*cos(phi1),0.004*cos(phi1)-lvx*sin(phi1)/ab, *cos(phi1)-Lvx*sin(phi1)/ab+0.04*a*cos(phi1)/ab,... -(Lvx+0.085*a)*sin(phi1)/ab, *cos(phi1)-Lvx*sin(phi1)/ab-0.04*a*cos(phi1)/ab, *cos(phi1)-Lvx*sin(phi1)/ab,-0.004*cos(phi1)]; yvectorv=yk+[0.004*sin(phi1),0.004*sin(phi1)+lvy*cos(phi1)/ab, *sin(phi1)+Lvy*cos(phi1)/ab+0.04*b*sin(phi1)/ab,... (Lvy+0.085*b)*cos(phi1)/ab, *sin(phi1)+Lvy*cos(phi1)/ab-0.04*b*sin(phi1)/ab, *sin(phi1)+Lvy*cos(phi1)/ab,-0.004*sin(phi1)]; fill(xtoixos,ytoixos,[ ],... xpivakasb, ypivakasb,[0.5,0.4,0.3],... xpivakas,ypivakas,[0.95,0.95,0.95],... xstick,ystick,[0.5,0.5,0.5],... xtroxia,ytroxia,[0.2,0.2,0.2],... xvectorf,yvectorf,[0,0.0,1],... xvectorv,yvectorv,[1.0,1.0,0.0],... xvectorom,yvectorom,[0.9,1.0,0.9],... xbody,ybody,[0.7,0.7,0.2],... xbody,ybody,[0.4,0.4,0.],... xbody1,ybody1,[0.42,0.42,0.2],... xbody2,ybody2,[0.44,0.44,0.2],... xbody3,ybody3,[0.46,0.46,0.2],... xbody4,ybody4,[0.49,0.49,0.2],... xbody5,ybody5,[0.52,0.52,0.2],... xbody6,ybody6,[0.56,0.56,0.2],... xbody7,ybody7,[0.6,0.6,0.2],... xbody8,ybody8,[0.65,0.65,0.2],... xbody9,ybody9,[0.7,0.7,0.2],... 'Linestyle','None') hold on fill(xxeri+dx,yxeri+dy,[0.45,0.45,0.1],... xxeri6+dx,yxeri6+dy,[0.45,0.45,0.1],... xxeri1+dx,yxeri1+dy,[0.45,0.45,0.1],... xxeri2+dx,yxeri2+dy,[0.45,0.45,0.1],... xxeri3+dx,yxeri3+dy,[0.45,0.45,0.1],... xxeri4+dx,yxeri4+dy,[0.45,0.45,0.1],... xxeri5+dx,yxeri5+dy,[0.45,0.45,0.1]) hold on fill(xtroxia,ytroxia,[0.2,0.2,0.2],... xbar,ybar,[0.2,0.2,0.2],... xvectorf,yvectorf,[0,0.0,1],... xvectorv,yvectorv,[1.0,1.0,0.0],... xvectorom,yvectorom,[0.9,0.,0.9],... xbody,ybody,[0.7,0.7,0.2],... xbody,ybody,[0.4,0.4,0.],... xbody1,ybody1,[0.42,0.42,0.2],... xbody2,ybody2,[0.44,0.44,0.2],... xbody3,ybody3,[0.46,0.46,0.2],... xbody4,ybody4,[0.49,0.49,0.2],... xbody5,ybody5,[0.52,0.52,0.2],... xbody6,ybody6,[0.56,0.56,0.2],... xbody7,ybody7,[0.6,0.6,0.2],... xbody8,ybody8,[0.65,0.65,0.2],... xbody9,ybody9,[0.7,0.7,0.2],... 'Linestyle','None') hold off % text(0.8,-0.07,'ομαλη ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ - Κεντρομόλος Δύναμη ','Color','b','Fontsize',9) % text(1.75,-0.07,'γραμμική Ταχύτητα','Color','k','Fontsize',8) text(xgf,ygf,'f_κ','color','b','fontsize',8) 33

ΚΑΤΑΣΚΕΥΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΠΑΚΕΤΟΥ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΕΙΡΑΜΑΤΩΝ ΥΔΡΟΣΤΑΤΙΚΗΣ ΓΥΜΝΑΣΙΟΥ ΣΕ ΠΕΡΙΒΑΛΛΟΝ MATLAB

ΚΑΤΑΣΚΕΥΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΠΑΚΕΤΟΥ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΕΙΡΑΜΑΤΩΝ ΥΔΡΟΣΤΑΤΙΚΗΣ ΓΥΜΝΑΣΙΟΥ ΣΕ ΠΕΡΙΒΑΛΛΟΝ MATLAB Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Ο Ε Κ Π Α Ι Δ Ε Υ Τ Ι Κ Ο Ι Δ Ρ Υ Μ Α Σ Ε Ρ Ρ Ω Ν Σ Χ Ο Λ Η Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Ω Ν Ε Φ Α Ρ Μ Ο Γ Ω Ν Τ Μ Η Μ Α Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ & Ε Π Ι Κ Ο Ι Ν Ω Ν Ι Ω Ν ΚΑΤΑΣΚΕΥΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ

Διαβάστε περισσότερα

Κατασκευή πακέτου προσομοίωσης σε Matlab εργαστηριακών ασκήσεων του εργαστηρίου Ηλεκτρικών Κυκλωμάτων σε σχέση με το ισοδύναμο κύκλωμα Thevenin

Κατασκευή πακέτου προσομοίωσης σε Matlab εργαστηριακών ασκήσεων του εργαστηρίου Ηλεκτρικών Κυκλωμάτων σε σχέση με το ισοδύναμο κύκλωμα Thevenin ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ Κατασκευή πακέτου προσομοίωσης σε Matlab εργαστηριακών ασκήσεων του εργαστηρίου Ηλεκτρικών Κυκλωμάτων

Διαβάστε περισσότερα

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

Διαβάστε περισσότερα

Τυπικές χρήσεις της Matlab

Τυπικές χρήσεις της Matlab Matlab Μάθημα 1 Τι είναι η Matlab Ολοκληρωμένο Περιβάλλον Περιβάλλον ανάπτυξης Διερμηνευμένη γλώσσα Υψηλή επίδοση Ευρύτητα εφαρμογών Ευκολία διατύπωσης Cross platform (Wintel, Unix, Mac) Τυπικές χρήσεις

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ηλεκτρονική Υγεία. Εργαστήριο 4 ο : MATLAB Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ηλεκτρονική Υγεία Εργαστήριο 4 ο : MATLAB Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες

Διαβάστε περισσότερα

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ, Εισαγωγή στο MATLAB Κολοβού Αθανασία, ΕΔΙΠ, akolovou@di.uoa.gr Εγκατάσταση του Matlab Διανέμεται ελεύθερα στα μέλη του ΕΚΠΑ το λογισμικό MATLAB με 75 ταυτόχρονες (concurrent) άδειες χρήσης. Μπορείτε να

Διαβάστε περισσότερα

Το διαστημόπλοιο. Γνωστικό Αντικείμενο: Φυσική (Δυναμική σε μία διάσταση - Δυναμική στο επίπεδο) Τάξη: Α Λυκείου

Το διαστημόπλοιο. Γνωστικό Αντικείμενο: Φυσική (Δυναμική σε μία διάσταση - Δυναμική στο επίπεδο) Τάξη: Α Λυκείου Το διαστημόπλοιο Γνωστικό Αντικείμενο: Φυσική (Δυναμική σε μία διάσταση - Δυναμική στο επίπεδο) Τάξη: Α Λυκείου Χρονική Διάρκεια Προτεινόμενη χρονική διάρκεια σχεδίου εργασίας: 5 διδακτικές ώρες Διδακτικοί

Διαβάστε περισσότερα

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP)

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP) ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP) Γιάννης Σαμωνάκης 1 Περιεχόμενα Τι είναι η PHP Που μπορεί να χρησιμοποιηθεί

Διαβάστε περισσότερα

ΕΡΩΤΗΣΕΙΣ - ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ

ΕΡΩΤΗΣΕΙΣ - ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ ΕΡΩΤΗΣΕΙΣ - ΑΣΚΗΣΕΙΣ ΣΤΗΝ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ Ερωτήσεις 1. Στην ομαλή κυκλική κίνηση, α. Το μέτρο της ταχύτητας διατηρείται σταθερό. β. Η ταχύτητα διατηρείται σταθερή. γ. Το διάνυσμα της ταχύτητας υ έχει την

Διαβάστε περισσότερα

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου ΕΣΔ 516 Τεχνολογίες Διαδικτύου Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία [Lane 2004]: Chapter

Διαβάστε περισσότερα

Εισαγωγή στο GNU Octave/MATLAB

Εισαγωγή στο GNU Octave/MATLAB Εισαγωγή στο GNU Octave/MATLAB Δρ. Βασίλειος Δαλάκας Καλώς ήρθατε στο εργαστήριο Σημάτων και Συστημάτων με το λογισμικό Octave (Οκτάβα). Οι σημειώσεις αυτές έχουν βασιστεί στις σημειώσεις του εργαστηρίου

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1 Ο ΚΑΜΠΥΛΟΓΡΑΜΜΕΣ ΚΙΝΗΣΕΙΣ

ΚΕΦΑΛΑΙΟ 1 Ο ΚΑΜΠΥΛΟΓΡΑΜΜΕΣ ΚΙΝΗΣΕΙΣ Σχολικό Έτος 016-017 1 ΚΕΦΑΛΑΙΟ 1 Ο ΚΑΜΠΥΛΟΓΡΑΜΜΕΣ ΚΙΝΗΣΕΙΣ Α. ΟΡΙΖΟΝΤΙΑ ΒΟΛΗ Οριζόντια βολή, ονομάζουμε την εκτόξευση ενός σώματος από ύψος h από το έδαφος, με οριζόντια ταχύτητα u o, όταν στο σώμα επιδρά

Διαβάστε περισσότερα

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Να γραφεί πρόγραμμα το οποίο δέχεται ως είσοδο μια ακολουθία S από n (n 40) ακέραιους αριθμούς και επιστρέφει ως έξοδο δύο ακολουθίες από θετικούς ακέραιους

Διαβάστε περισσότερα

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για

Διαβάστε περισσότερα

ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ

ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ Καμπυλόγραμμες Κινήσεις Επιμέλεια: Αγκανάκης Α. Παναγιώτης, Φυσικός http://phyiccore.wordpre.com/ Βασικές Έννοιες Μέχρι στιγμής έχουμε μάθει να μελετάμε απλές κινήσεις,

Διαβάστε περισσότερα

Άσκηση 3 Υπολογισμός του μέτρου της ταχύτητας και της επιτάχυνσης

Άσκηση 3 Υπολογισμός του μέτρου της ταχύτητας και της επιτάχυνσης Άσκηση 3 Υπολογισμός του μέτρου της ταχύτητας και της επιτάχυνσης Σύνοψη Σκοπός της συγκεκριμένης άσκησης είναι ο υπολογισμός του μέτρου της στιγμιαίας ταχύτητας και της επιτάχυνσης ενός υλικού σημείου

Διαβάστε περισσότερα

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram.

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram. Η δοµή Formula Node 1. Η δοµή Formula Node επιτρέπει την εισαγωγή αναλυτικών σχέσεων στο Block Diagram µε πληκτρολόγηση, αποφεύγοντας έτσι την εισαγωγή των εικονίδιων συναρτήσεων απλών αλγεβρικών πράξεων

Διαβάστε περισσότερα

Ασκήσεις στη Κυκλική Κίνηση

Ασκήσεις στη Κυκλική Κίνηση 1 Ασκήσεις στη Κυκλική Κίνηση 1.Δυο τροχοί ακτινών R 1=40cm και R 2=10cm συνδέονται με ιμάντα και περιστρέφονται ο πρώτος με συχνότητα f 1=4Hz, ο δε δεύτερος με συχνότητα f 2. Να βρεθεί ο αριθμός των στροφών

Διαβάστε περισσότερα

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade Για να ελέγξετε το λογισμικό που έχει τώρα η συσκευή κάντε κλικ Menu > Options > Device > About Device Versions. Στο πιο κάτω παράδειγμα η συσκευή έχει έκδοση λογισμικού 6.0.0.546 με πλατφόρμα 6.6.0.207.

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

Διαβάστε περισσότερα

SPSS Statistical Package for the Social Sciences

SPSS Statistical Package for the Social Sciences SPSS Statistical Package for the Social Sciences Ξεκινώντας την εφαρμογή Εισαγωγή εδομένων Ορισμός Μεταβλητών Εισαγωγή περίπτωσης και μεταβλητής ιαγραφή περιπτώσεων ή και μεταβλητών ΣΤΑΤΙΣΤΙΚΗ Αθανάσιος

Διαβάστε περισσότερα

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό 5 ο Εργαστήριο Λογικοί Τελεστές, Δομές Ελέγχου Λογικοί Τελεστές > μεγαλύτερο = μεγαλύτερο ή ίσο!= διαφορετικό Οι λογικοί τελεστές χρησιμοποιούνται για να ελέγξουμε

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής Διάλεξη 1 Πράξεις Τελεστές Έλεγχος Ροής Διοργάνωση : ΚΕΛ ΣΑΤΜ Διαφάνειες: Skaros, MadAGu Παρουσίαση: MadAGu Άδεια: Creative Commons 3.0 Αριθμητικοί Τελεστές- Αριθμητικές Πράξεις 2 Internal use only Αριθμητικοί

Διαβάστε περισσότερα

2 Η ΠΡΟΟΔΟΣ. Ενδεικτικές λύσεις κάποιων προβλημάτων. Τα νούμερα στις ασκήσεις είναι ΤΥΧΑΙΑ και ΟΧΙ αυτά της εξέταση

2 Η ΠΡΟΟΔΟΣ. Ενδεικτικές λύσεις κάποιων προβλημάτων. Τα νούμερα στις ασκήσεις είναι ΤΥΧΑΙΑ και ΟΧΙ αυτά της εξέταση 2 Η ΠΡΟΟΔΟΣ Ενδεικτικές λύσεις κάποιων προβλημάτων Τα νούμερα στις ασκήσεις είναι ΤΥΧΑΙΑ και ΟΧΙ αυτά της εξέταση Ένας τροχός εκκινεί από την ηρεμία και επιταχύνει με γωνιακή ταχύτητα που δίνεται από την,

Διαβάστε περισσότερα

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro Για να μπορέσουμε να εισάγουμε δεδομένα από το πληκτρολόγιο αλλά και για να εξάγουμε εμφανίσουμε αποτελέσματα στην οθόνη του υπολογιστή χρησιμοποιούμε τις εντολές Εισόδου και Εξόδου αντίστοιχα. Σύνταξη

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Python scripts Ένα πρόγραμμα στην Python (συχνά αποκαλείται script) αποτελείται από μία ακολουθία ορισμών και εντολών. H ακολουθία των ορισμών και

Διαβάστε περισσότερα

ΟΜΑΛΗ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ ΥΛΙΚΟΥ ΣΗΜΕΙΟΥ

ΟΜΑΛΗ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ ΥΛΙΚΟΥ ΣΗΜΕΙΟΥ ΟΜΑΛΗ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ ΥΛΙΚΟΥ ΣΗΜΕΙΟΥ Οι δακτύλιοι του Κρόνου είναι ένα σύστημα πλανητικών δακτυλίων γύρω από αυτόν. Αποτελούνται από αμέτρητα σωματίδια των οποίων το μέγεθος κυμαίνεται από μm μέχρι m, με

Διαβάστε περισσότερα

ΜΜΚ 105: Πειραματική και Στατιστική Ανάλυση Δημιουργία Πινάκων και Γραφικών Παραστάσεων στην Excel 18/09/14

ΜΜΚ 105: Πειραματική και Στατιστική Ανάλυση Δημιουργία Πινάκων και Γραφικών Παραστάσεων στην Excel 18/09/14 ΜΜΚ 105: Πειραματική και Στατιστική Ανάλυση Δημιουργία Πινάκων και Γραφικών Παραστάσεων στην Excel 18/09/14 1. Δημιουργία Πίνακα 1.1 Εισαγωγή μετρήσεων και υπολογισμός πράξεων Έστω ότι χρειάζεται να υπολογιστεί

Διαβάστε περισσότερα

ΦΥΣΙΚΗ Β ΛΥΚΕΙΟΥ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ

ΦΥΣΙΚΗ Β ΛΥΚΕΙΟΥ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ ΜΑΝΩΛΗ ΡΙΤΣΑ ΦΥΣΙΚΗ Β ΛΥΚΕΙΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΣ ΘΕΤΙΚΩΝ ΣΠΟΥΔΩΝ Τράπεζα θεμάτων Β Θέμα ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ 16118 Δύο σφαιρίδια Σ 1 και Σ 2 βρίσκονται σε λείο οριζόντιο τραπέζι (κάτοψη του οποίου φαίνεται στο

Διαβάστε περισσότερα

MATLAB - Graphical User Interfaces. Σημειώσεις GUI για το εργαστήριο του μαθήματος Ασαφή Συστήματα. Δημήτριος Βαρσάμης Εργαστηριακός συνεργάτης

MATLAB - Graphical User Interfaces. Σημειώσεις GUI για το εργαστήριο του μαθήματος Ασαφή Συστήματα. Δημήτριος Βαρσάμης Εργαστηριακός συνεργάτης Tεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πληροφορικής & Επικοινωνιών MATLAB - Graphical User Interfaces Σημειώσεις GUI για το εργαστήριο του μαθήματος Ασαφή Συστήματα Δημήτριος

Διαβάστε περισσότερα

Προγραμματισμός στο Matlab

Προγραμματισμός στο Matlab Κλάδοι με την εντολή if Προγραμματισμός στο Matlab Σαν ένα απλό παράδειγμα κλάδου με την εντολή if ας θεωρήσουμε το παρακάτω παράδειγμα που υπολογίζει την απόλυτη τιμή ενός πραγματικού αριθμού. function

Διαβάστε περισσότερα

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών Λειτουργικά Αριστείδης Ηλίας Συστήματα Ι Φ ρ ο ν τ ι σ τ ή ρ ι ο Shell Scripting Εισαγωγή Ένα shell script είναι μια λίστα εντολών που εκτελούνται ακολουθιακά Εκτελούνται ανάλογα με το κέλυφος και για

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Nα κατασκευάσουν πίνακες από δεδομένα. Να κατασκευάσουν συναρτήσεις με πίνακες. Να κάνουν χρήση

Διαβάστε περισσότερα

Έναρξη Τερματισμός του MatLab

Έναρξη Τερματισμός του MatLab Σύντομος Οδηγός MATLAB Β. Χ. Μούσας 1/6 Έναρξη Τερματισμός του MatLab Η έναρξη της λειτουργίας του MatLab εξαρτάται από το λειτουργικό σύστημα. Στα συστήματα UNIX πληκτρολογούμε στη προτροπή του συστήματος

Διαβάστε περισσότερα

Εφαρμογές Η/Υ στη Χρηματοοικονομική. Εργαστήριο ΙI. Διδάσκων Καθηγητής: Αχιλλέας Ζαπράνης. Επιμέλεια Σημειώσεων: Ευστράτιος Λιβάνης

Εφαρμογές Η/Υ στη Χρηματοοικονομική. Εργαστήριο ΙI. Διδάσκων Καθηγητής: Αχιλλέας Ζαπράνης. Επιμέλεια Σημειώσεων: Ευστράτιος Λιβάνης Εφαρμογές Η/Υ στη Χρηματοοικονομική Εργαστήριο ΙI Διδάσκων Καθηγητής: Αχιλλέας Ζαπράνης Επιμέλεια Σημειώσεων: Ευστράτιος Λιβάνης 1.1 Εισαγωγή Το αντικείμενο αυτού του εργαστηρίου είναι η δημιουργία αρχείων

Διαβάστε περισσότερα

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Επειδή οι μεταγενέστερες εκδόσεις του Word δεν περιλαμβάνουν στο μενού τη δυνατότητα δημιουργίας πολλαπλών

Διαβάστε περισσότερα

Ψευδοκώδικας. November 7, 2011

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

Διαβάστε περισσότερα

Εισαγωγή στους Υπολογιστές

Εισαγωγή στους Υπολογιστές Εισαγωγή στους Υπολογιστές Ενότητα #5: Διαγράμματα ροής (Flow Charts), Δομές επανάληψης Καθ. Δημήτρης Ματαράς Πολυτεχνική Σχολή Τμήμα Χημικών Μηχανικών Διαγράμματα ροής (Flow Charts), Δομές επανάληψης

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να καταλάβουν την διαφορά ανάμεσα σε τοπικές και καθολικές μεταβλητές. Nα κάνουν αποσφαλμάτωση

Διαβάστε περισσότερα

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με: Αλγόριθμοι 2.2.1. Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά εντολών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Τα κυριότερα χρησιμοποιούμενα

Διαβάστε περισσότερα

ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ. 1. Β.2 Ο ωροδείκτης και ο λεπτοδείκτης ξεκινούν μαζί στις 12:00.

ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ. 1. Β.2 Ο ωροδείκτης και ο λεπτοδείκτης ξεκινούν μαζί στις 12:00. ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ ΚΥΚΛΙΚΗ ΚΙΝΗΣΗ ΘΕΜΑ 2 1. Β.2 Ο ωροδείκτης και ο λεπτοδείκτης ξεκινούν μαζί στις 12:00. Α) Να επιλέξετε τη σωστή απάντηση. Η πρώτη τους συνάντηση θα γίνει: α. Σε μια ώρα. β. Σε λιγότερο

Διαβάστε περισσότερα

Παράδειγμα για διαχείριση strings

Παράδειγμα για διαχείριση strings Παράδειγμα για διαχείριση strings Ας υποθέσουμε ότι έχουμε ένα string που αποτελείται από μια γωνία ακολουθούμενη από ένα γράμμα ή d για μοίρες ή r για ακτίνια. Για παράδειγμα μπορεί να είναι ένα string

Διαβάστε περισσότερα

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Δημιουργία ενός απλού παιχνιδιού με το Gamemaker (μετάφραση από το http://www.stuffucanuse.com/downloads/gamemaker-introductionlessons/free_game_downloads_gamemaker.htm)

Διαβάστε περισσότερα

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Όλοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι του 10000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Αν κάπου κάνετε κάποιες υποθέσεις

Διαβάστε περισσότερα

Διαγώνισμα Φυσικής Β Λυκείου Προσανατολισμού. Οριζόντια βολή Κυκλικές κινήσεις

Διαγώνισμα Φυσικής Β Λυκείου Προσανατολισμού. Οριζόντια βολή Κυκλικές κινήσεις Διαγώνισμα Φυσικής Β Λυκείου Προσανατολισμού Οριζόντια βολή Κυκλικές κινήσεις ~~Διάρκεια 2 ώρες~~ Θέμα Α 1) Δύο μαθητές παρακολουθούν το μάθημα της Φυσικής από τα έδρανα του εργαστηρίου του σχολείου τους.

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

Διαβάστε περισσότερα

1 ΦΕΠ 012 Φυσική και Εφαρμογές

1 ΦΕΠ 012 Φυσική και Εφαρμογές 1 ΦΕΠ 012 Φυσική και Εφαρμογές Διάλεξη 10 η Ομαλή κυκλική κίνηση Δθ = ω = σταθερό Δt X = Rσυν (ωt) => X 2 +Υ 2 = R 2 Υ = Rημ(ωt) Οι προβολές της κίνησης στους άξονες των x και y είναι αρμονικές ταλαντώσεις

Διαβάστε περισσότερα

Σχήµα 4.1: Εισαγωγή βρόγχου while-loop.

Σχήµα 4.1: Εισαγωγή βρόγχου while-loop. Ο βρόγχος While-loop 1. Ο βρόγχος while-loop εκτελείται έως ότου ικανοποιηθεί µία προκαθορισµένη συνθήκη. 2. Ο αριθµός των επαναλήψεων ενός βρόγχου while-loop δεν είναι εκ των προτέρων προκαθορισµένος,

Διαβάστε περισσότερα

επιµέλεια Θοδωρής Πιερράτος

επιµέλεια Θοδωρής Πιερράτος Βασικές έννοιες προγραµµατισµού Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως,

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB. Κολοβού Αθανασία Ε.Τ.Ε.Π.

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB. Κολοβού Αθανασία Ε.Τ.Ε.Π. ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB Κολοβού Αθανασία Ε.Τ.Ε.Π. http://users.uoa.gr/~akolovou/ MATRIX LABORATORY Μαθηματικό λογισμικό πακέτο Everything is a matrix Εύκολο να ορίσουμε τους πίνακες >> A = [6 3; 5 0] A = 6

Διαβάστε περισσότερα

ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΡΓΑΣΙΑ ΦΥΣΙΚΗΣ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ 2015 ΟΡΙΖΟΝΤΙΑ ΒΟΛΗ

ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΡΓΑΣΙΑ ΦΥΣΙΚΗΣ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ 2015 ΟΡΙΖΟΝΤΙΑ ΒΟΛΗ ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΡΓΑΣΙΑ ΦΥΣΙΚΗΣ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ 2015 ΟΡΙΖΟΝΤΙΑ ΒΟΛΗ Οριζόντια βολή: Είναι η κίνηση (παραβολική τροχιά) που κάνει ένα σώμα το οποίο βάλλεται με οριζόντια ταχύτητα U 0 μέσα στο πεδίο βαρύτητας

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

Μέτρηση της επιτάχυνσης της βαρύτητας με τη βοήθεια του απλού εκκρεμούς.

Μέτρηση της επιτάχυνσης της βαρύτητας με τη βοήθεια του απλού εκκρεμούς. Μ2 Μέτρηση της επιτάχυνσης της βαρύτητας με τη βοήθεια του απλού εκκρεμούς. 1 Σκοπός Η εργαστηριακή αυτή άσκηση αποσκοπεί στη μέτρηση της επιτάχυνσης της βαρύτητας σε ένα τόπο. Αυτή η μέτρηση επιτυγχάνεται

Διαβάστε περισσότερα

ΕΠΛ 012. JavaScripts

ΕΠΛ 012. JavaScripts ΕΠΛ 012 JavaScripts Γλώσσα JavaScript (JS) ηµιουργεί δυναµικές ιστοσελίδες και αλληλεπιδράσεις µε το χρήστη εν είναι Java, αλλά είναι αντικειµενοστραφής (απλό µοντέλο υποκειµένων) Objects, properties (τιµές

Διαβάστε περισσότερα

Συστήματα Αυτομάτου Ελέγχου

Συστήματα Αυτομάτου Ελέγχου ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΑΥΤΟΜΑΤΙΣΜΟΥ Καθ. Εφαρμογών: Σ. Βασιλειάδου Εργαστήριο Συστήματα Αυτομάτου Ελέγχου για Ηλεκτρολόγους Μηχανικούς Εργαστηριακές Ασκήσεις Χειμερινό

Διαβάστε περισσότερα

Εισαγωγή στο Περιβάλλον Επιστημονικού Προγραμματισμού MATLAB-Simulink. Δημήτριος Τζεράνης Λεωνίδας Αλεξόπουλος

Εισαγωγή στο Περιβάλλον Επιστημονικού Προγραμματισμού MATLAB-Simulink. Δημήτριος Τζεράνης Λεωνίδας Αλεξόπουλος Εισαγωγή στο Περιβάλλον Επιστημονικού Προγραμματισμού MATLAB-Simulink Δημήτριος Τζεράνης Λεωνίδας Αλεξόπουλος 1 Τι είναι τα Matlab και Simulink? Το Matlab (MATrix LABoratory) είναι ένα περιβάλλον επιστημονικού

Διαβάστε περισσότερα

Επεξεργασία πολλαπλών φύλλων εργασίας - Γραφημάτων Excel

Επεξεργασία πολλαπλών φύλλων εργασίας - Γραφημάτων Excel Επεξεργασία πολλαπλών φύλλων εργασίας - Γραφημάτων Excel 11.1. Πολλαπλά φύλλα εργασίας Στο προηγούμενο κεφάλαιο δημιουργήσαμε ένα φύλλο εργασίας με τον προϋπολογισμό δαπανών του προσωπικού που θα συμμετάσχει

Διαβάστε περισσότερα

Σχήµα 6.1: Εισαγωγή της εντολής Read From Spreadsheet File στο Block Diagram.

Σχήµα 6.1: Εισαγωγή της εντολής Read From Spreadsheet File στο Block Diagram. Εισαγωγή αρχείων δεδοµένων 1. Η εισαγωγή αρχείων δεδοµένων στο LaVIEW γίνεται στο Block Diagram µε την εντολή Read From Spreadsheet File. 2. Εισάγουµε την εντολή Read From Spreadsheet File στο Block Diagram

Διαβάστε περισσότερα

ΚΑΤΑΣΚΕΥΗ ΕΚΠΑΙ ΕΥΤΙΚΟΥ ΠΑΚΕΤΟΥ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΕΙΡΑΜΑΤΩΝ ΚΙΝΗΤΙΚΗΣ ΘΕΩΡΙΑΣ ΑΕΡΙΩΝ ΣΕ ΠΕΡΙΒΑΛΛΟΝ MATLAB

ΚΑΤΑΣΚΕΥΗ ΕΚΠΑΙ ΕΥΤΙΚΟΥ ΠΑΚΕΤΟΥ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΕΙΡΑΜΑΤΩΝ ΚΙΝΗΤΙΚΗΣ ΘΕΩΡΙΑΣ ΑΕΡΙΩΝ ΣΕ ΠΕΡΙΒΑΛΛΟΝ MATLAB ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΕ ΚΑΤΑΣΚΕΥΗ ΕΚΠΑΙ ΕΥΤΙΚΟΥ ΠΑΚΕΤΟΥ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΕΙΡΑΜΑΤΩΝ ΚΙΝΗΤΙΚΗΣ ΘΕΩΡΙΑΣ ΑΕΡΙΩΝ ΣΕ ΠΕΡΙΒΑΛΛΟΝ MATLAB Πτυχιακή εργασία

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εμφάνιση μηνυμάτων ή ενεργοποίηση και απενεργοποίηση της ηχούς εντολών.

Εμφάνιση μηνυμάτων ή ενεργοποίηση και απενεργοποίηση της ηχούς εντολών. ECHO [ON OFF] ECHO [μήνυμα] Εμφάνιση μηνυμάτων ή ενεργοποίηση και απενεργοποίηση της ηχούς εντολών. Πληκτρολογήστε ECHO χωρίς παράμετρο για εμφάνιση της τρέχουσας ρύθμισης. Παραδείγματα: echo this is a

Διαβάστε περισσότερα

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

Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων Σημαντικές δυνατότητες των σύγχρονων υπολογιστικών μηχανών: Γρήγορες προσθέσεις αριθμών Γρήγορες συγκρίσεις αριθμών Αξιόπιστη καταγραφή πολύ μεγάλου όγκου δεδομένων Σχετικά γρήγορη μετάδοση και πρόσληψη

Διαβάστε περισσότερα

Εισαγωγή στη Matlab Βασικές Συναρτήσεις

Εισαγωγή στη Matlab Βασικές Συναρτήσεις Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής με Εφαρμογές στη Βιοϊατρική Εργαστήριο Γραμμικής Άλγεβρας Εισαγωγή στη Matlab Βασικές Συναρτήσεις 2016-2017 Εισαγωγή στη Matlab Matlab

Διαβάστε περισσότερα

Visual Basic Γλώσσα οπτικού

Visual Basic Γλώσσα οπτικού Visual Basi Γλώσσα οπτικού προγραµµατισµού «Η αρχή είναι το ήµισυ του παντός» Κουλλάς Χρίστος www.oullas.om oullas 2 Στόχοι Μαθήµατος Οι µαθητές να µπορούν: να εξηγούν τι είναι η Visual Basi. ναεξηγούνταστάδιαδηµιουργίας

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II Strings Η κλάση String είναι προκαθορισμένη κλάση της Java που μας επιτρέπει να χειριζόμαστε αλφαριθμητικά. Ο τελεστής + μας επιτρέπει

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο

Διαβάστε περισσότερα

Εργαστήριο 2 - Άσκηση - Ανάλυση

Εργαστήριο 2 - Άσκηση - Ανάλυση Εργαστήριο 2 - Άσκηση - Ανάλυση Εκφώνηση: Δημιουργείστε την εφαρμογή Αριθμήτηριο σε Java Swing με χρήση NetBeans ακολουθώντας τις παρακάτω οδηγίες. 1. Η εφαρμογή θα σχεδιασθεί σε ένα εξωτερικό υποδοχέα

Διαβάστε περισσότερα

1. Κλικ στην καρτέλα Insert 2. Tables 3. Κλικ Table 4. Σύρουμε το δείκτη του ποντικιού και επιλέγουμε τον επιθυμητό αριθμό γραμμών και στηλών

1. Κλικ στην καρτέλα Insert 2. Tables 3. Κλικ Table 4. Σύρουμε το δείκτη του ποντικιού και επιλέγουμε τον επιθυμητό αριθμό γραμμών και στηλών ΜΑΘΗΜΑ 4 ΣΤΟΧΟΙ: 1. Προσθήκη Πίνακα (Table) 2. Εισαγωγή Και Μετακίνηση Κειμένου Σε Πίνακα 3. Εισαγωγή Στηλών Και Γραμμών Σε Πίνακα 4. Διαγραφή Στηλών Και Γραμμών Σε Πίνακα 5. Αλλαγή Πλάτους Στηλών Και

Διαβάστε περισσότερα

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΠΑΝΤΗΣΕΙΣ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ ΗΜΕΡΟΜΗΝΙΑ: 25/10/2015 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΑΡΧΩΝ ΜΑΡΚΟΣ

ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΠΑΝΤΗΣΕΙΣ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ ΗΜΕΡΟΜΗΝΙΑ: 25/10/2015 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΑΡΧΩΝ ΜΑΡΚΟΣ ΜΑΘΗΜΑ / ΤΑΞΗ : ΑΠΑΝΤΗΣΕΙΣ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ ΗΜΕΡΟΜΗΝΙΑ: 25/10/2015 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: ΑΡΧΩΝ ΜΑΡΚΟΣ ΘΕΜΑ Α Να γράψετε στο τετράδιο σας τον αριθμό καθεμιάς από τις παρακάτω προτάσεις

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Πως θα κατασκευάσω το πρώτο πρόγραμμα; Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να γίνει εξοικείωση το μαθητών με τον ΗΥ και το λειτουργικό σύστημα. - Επίδειξη του My Computer

Διαβάστε περισσότερα

περιφέρειας των δίσκων, Μονάδες 6 Δ2) το μέτρο της γωνιακής ταχύτητας του δίσκου (1), Μονάδες 5

περιφέρειας των δίσκων, Μονάδες 6 Δ2) το μέτρο της γωνιακής ταχύτητας του δίσκου (1), Μονάδες 5 15958 Στο σχήμα φαίνονται δύο δίσκοι με ακτίνες R1= 0,2 m και R2 = 0,4 m αντίστοιχα, οι οποίοι συνδέονται μεταξύ τους με μη ελαστικό λουρί. Οι δίσκοι περιστρέφονται γύρω από σταθερούς άξονες που διέρχονται

Διαβάστε περισσότερα

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος 4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος Μεταβλητές Συστήματος Η Processing χρησιμοποιεί κάποιες μεταβλητές συστήματος, όπως τις ονομάζουμε, για να μπορούμε να παίρνουμε πληροφορίες από το

Διαβάστε περισσότερα

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

Διαβάστε περισσότερα

ΓΡΑΠΤΗ ΕΞΕΤΑΣΗ ΣΤΗ ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ

ΓΡΑΠΤΗ ΕΞΕΤΑΣΗ ΣΤΗ ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ η εξεταστική περίοδος 03-4 - Σελίδα ΓΡΑΠΤΗ ΕΞΕΤΑΣΗ ΣΤΗ ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Β ΛΥΚΕΙΟΥ Τάξη: Β Λυκείου Τμήμα: Βαθμός: Ημερομηνία: 6-0-03 Διάρκεια: 3 ώρες Ύλη: Κυκλική κίνηση - Βολή - Ορμή - Κρούση Καθηγητής:

Διαβάστε περισσότερα

MATLAB Desktop (Επιφάνεια Εργασίας MATLAB) [1.]

MATLAB Desktop (Επιφάνεια Εργασίας MATLAB) [1.] Εισαγωγή στο MATLAB Το MATLAB αποτελεί ένα εμπορικό εργαλείο το οποίο προσφέρει ένα διαδραστικό προγραμματιστικό περιβάλλον στον χρήστη και χρησιμοποιείται σε ένα μεγάλο εύρος εφαρμογών. Ενσωματώνει μια

Διαβάστε περισσότερα

ΕΡΓΑΣΙΑ ΧΡΙΣΤΟΥΓΕΝΝΩΝ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ 25/12/2016 ΘΕΜΑ

ΕΡΓΑΣΙΑ ΧΡΙΣΤΟΥΓΕΝΝΩΝ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ 25/12/2016 ΘΕΜΑ ΕΡΓΑΣΙΑ ΧΡΙΣΤΟΥΓΕΝΝΩΝ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ 5//06 ΘΕΜΑ Στις παρακάτω ερωτήσεις - 7 να γράψετε στο τετράδιό σας τον αριθµό της ερώτησης και δίπλα σε κάθε αριθμό το γράµμα που αντιστοιχεί στη

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

Διαβάστε περισσότερα

Σύντοµο Εγχειρίδιο Χρήσης. του Λογισµικού Στατιστικής Επεξεργασίας. SPSS for Windows v. 8.0

Σύντοµο Εγχειρίδιο Χρήσης. του Λογισµικού Στατιστικής Επεξεργασίας. SPSS for Windows v. 8.0 Εθνικό & Καποδιστριακό Πανεπιστήµιο Αθηνών Τµήµα Μεθοδολογίας, Ιστορίας & Θεωρίας της Επιστήµης ιαπανεπιστηµιακό Πρόγραµµα Μεταπτυχιακών Σπουδών «Βασική και Εφαρµοσµένη Γνωσιακή Επιστήµη» Σύντοµο Εγχειρίδιο

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 2.4 Βασικές συνιστώσες/εντολές ενός αλγορίθμου 2.4.1 Δομή ακολουθίας ΚΕΦΑΛΑΙΟ 7 7.1 7.9 Σταθερές (constants): Προκαθορισμένες τιμές που παραμένουν

Διαβάστε περισσότερα

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo; Κεφάλαιο 2 Εισαγωγή Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo; Η Logo είναι μία από τις πολλές γλώσσες προγραμματισμού. Κάθε γλώσσα προγραμματισμού έχει σκοπό τη δημιουργία προγραμμάτων

Διαβάστε περισσότερα

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

Διαβάστε περισσότερα

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός

Διαβάστε περισσότερα

γραπτή εξέταση στη ΦΥΣΙΚΗ B κατεύθυνσης

γραπτή εξέταση στη ΦΥΣΙΚΗ B κατεύθυνσης η εξεταστική περίοδος από 4/0/5 έως 08//5 γραπτή εξέταση στη ΦΥΣΙΚΗ B κατεύθυνσης Τάξη: Β Λυκείου Τμήμα: Βαθμός: Ονοματεπώνυμο: Καθηγητές: Θ Ε Μ Α A Στις ερωτήσεις Α-Α4 να επιλέξετε τη σωστή απάντηση.

Διαβάστε περισσότερα

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Ιωάννης Γ. Τσούλος Εργασία Πρώτη - Αριθμομηχανή Με την χρήση του περιβάλλοντος AWT ή του SWING θα πρέπει να δημιουργηθεί αριθμομηχανή για την εκτέλεση

Διαβάστε περισσότερα

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

Διαβάστε περισσότερα

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ

Διαβάστε περισσότερα

Γραφικά περιβάλλοντα από τον χρήστη Graphical User Interfaces (GUI)

Γραφικά περιβάλλοντα από τον χρήστη Graphical User Interfaces (GUI) Γραφικά περιβάλλοντα από τον χρήστη Graphical User Interfaces (GUI) Θα γράψουμε το πρώτο μας GUI το οποίο : 1. Θα σχεδιάζει μια συνάρτηση 2. Θα παρέχει κουμπιά για να αλλάζουμε το χρώμα του γραφήματος

Διαβάστε περισσότερα

3 ο Εργαστήριο Μεταβλητές, Τελεστές

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

Διαβάστε περισσότερα

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

Διαβάστε περισσότερα

Ακτίνα καμπυλότητας - Ανάλυση επιτάχυνσης σε εφαπτομενική και κεντρομόλο συνιστώσα

Ακτίνα καμπυλότητας - Ανάλυση επιτάχυνσης σε εφαπτομενική και κεντρομόλο συνιστώσα Ακτίνα καμπυλότητας - Ανάλυση επιτάχυνσης σε εφαπτομενική και κεντρομόλο συνιστώσα Εξ ορισμού, ένας κύκλος έχει συγκεκριμένη και σταθερή καμπυλότητα σε όλα τα σημεία του ίση με 1/R όπου R η ακτίνα του.

Διαβάστε περισσότερα

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος...

Περιεχόμενα. Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών Μέρος 2: Χρήση υπολογιστή και διαχείριση αρχείων Πρόλογος... Περιεχόμενα Πρόλογος...11 Μέρος 1: Βασικές έννοιες Πληροφορικής και επικοινωνιών... 13 1.1 Εισαγωγή στους υπολογιστές... 15 1.2 Μονάδες μέτρησης... 27 1.3 Οι βασικές λειτουργίες ενός ηλεκτρονικού υπολογιστή...

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα