ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η...

24
1 η ΕΝΟΤΗΤΑ ΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB) ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ΕΠΙΛΥΣΗΣ ΜΕ Η/Υ Ν.Δ. Λαγαρός – Μ. Φραγκιαδάκης – Α. Στάμος

Transcript of ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η...

Page 1: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

1η ΕΝΟΤΗΤΑΕΙΣΑΓΩΓΗ (Προγραμματισμός & MATLAB)

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

ΜΕΘΟΔΟΙ ΕΠΙΛΥΣΗΣ ΜΕ Η/Υ

Ν.Δ. Λαγαρός – Μ. Φραγκιαδάκης – Α. Στάμος

Page 2: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Άδεια Χρήσης

Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειεςΧρήσης Creative Commons.για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειταισε άδεια χρήσης άλλου τύπου, αυτή πρέπει νααναφέρεται ρητώς.

2

Page 3: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Περιγραφή Μαθήματος

Ποιοι είναι οι στόχοι;

• Χρήση του Ηλεκτρονικού Υπολογιστή για την επίλυση προβλημάτων

Μηχανικού.

• Γλώσσα Προγραμματισμού: MATLAB.

• Γενικά παραδείγματα. Προγράμματα με ειδικές μορφές εκτύπωσης.

Προβλήματα γεωμετρικά και αλγεβρικά.

• Αριθμητική ολοκλήρωση, ελάχιστα τετράγωνα, σειρές Fourier.

• Πίνακες: αντιστροφή, ιδιοτιμές, επίλυση γραμμικών συστημάτων.

• Εφαρμογές από τους τομείς: Δομοστατικής, Υδατικών Πόρων και

Περιβάλλοντος, Μεταφορών και Συγκοινωνιακής Υποδομής,

Γεωτεχνικής και Προγραμματισμού & Διαχείρισης Τεχνικών Έργων.

• Γραφικές απεικονίσεις.

• Κλπ.

3

Page 4: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Σχετικά με το Μάθημα

Ασκήσεις:

• Στα πλαίσια του μαθήματος θα δοθούν ασκήσεις οι οποίες θα

παραδίδονται σε συγκεκριμένη ημερομηνία.

Εργασία Εξαμήνου:

• Ομάδες 2 ή 3 ατόμων θα αναλάβουν ένα θέμα μεταξύ των

προτεινόμενων από τους Τομείς ή δικής τους επιλογής.

Αξιολόγηση:

• Οι ασκήσεις και η εργασία εξαμήνου είναι προαιρετικές και θα

προσμετρηθούν (μόνο θετικά) εφόσον ο βαθμός της τελικής

εξέτασης είναι μεγαλύτερος ή ίσος με 4.

Τρόπος Εξέτασης:

• Η εξέταση γίνεται σε Η/Υ.

4

Page 5: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Νικόλαος Δ. Λαγαρός

Επίκουρος Καθηγητής

Εργαστήριο Στατικής & Αντισεισμικών Ερευνών

τηλ: 210.772-2625

[email protected]

http://users.ntua.gr/nlagaros/

Μιχαήλ Φραγκιαδάκης

Λέκτορας

Εργαστήριο Αντισεισμικής Τεχνολογίας

τηλ: 210.772-1185

[email protected]

http://users.ntua.gr/mfrag/

Αθανάσιος Στάμος

ΕΔΙΠ

Τομέας Δομοστατικής

τηλ: 210.772-3665

[email protected]

Διδάσκοντες

5

Page 6: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

MATLAB

Τι είναι το MATLAB;

MATLAB (MATrix LABoratory)

• Γλώσσα προγραμματισμού υψηλών επιδόσεων (high-performance

language for technical computing).

• Υπολογισμοί, απεικόνιση, προγραμματισμός σε φιλικό περιβάλλον

(an easy-to-use environment).

Τυπική χρήση:

• Μαθηματικά και υπολογισμοί

• Ανάπτυξη αλγορίθμων

• Προσομοίωση

• Ανάλυση δεδομένων, απεικόνιση

• Γραφήματα

• Ανάπτυξη εφαρμογών, συμπεριλαμβανομένου περιβάλλοντος

χρήσης (Graphical User Interface-GUI)

6

Page 7: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Γιατί MATLAB;

Αποτελεί μια καλή επιλογή για την ανάπτυξη προγραμμάτων:

• Εύκολο και πολύ ταχεία προτυποποίηση.

• Γρήγορη εκμάθηση και καλή τεκμηρίωση.

• Διαθέτει καλή βιβλιοθήκες λειτουργιών και επεξεργασίας εικόνας.

• Εξαιρετικές δυνατότητες απεικόνισης.

• Χρησιμοποιείται ευρέως για τη διδασκαλία και την έρευνα στα

πανεπιστήμια και τη βιομηχανία!

7

Page 8: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

MATLAB συστατικά μέρη

MATLAB αποτελείται:

Η γλώσσα MATLAB

υψηλού επιπέδου γλώσσα για πίνακες με εντολές ελέγχου ροής,

λειτουργίες, δομές δεδομένων, εντολές εισόδου/εξόδου και διαθέτει

χαρακτηριστικά για αντικειμενοστραφή προγραμματισμό.

Το περιβάλλον εργασίας του MATLAB

διαθέτει σύνολο εργαλείων που βοηθούν το χρήστη ή προγραμματιστή,

συμπεριλαμβανομένων των εργαλείων για την ανάπτυξη, τη διαχείριση,

τον εντοπισμό σφαλμάτων.

Handle Graphics

το σύστημα γραφικών MATLAB. περιλαμβάνει εντολές υψηλού επιπέδου

για δισδιάστατη και τρισδιάστατη οπτικοποίηση δεδομένων, επεξεργασία

εικόνας, animation, γραφήματα.

8

Page 9: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

MATLAB συστατικά μέρη (συν.)

Η βιβλιοθήκη λειτουργιών MATLAB.

τεράστια συλλογή υπολογιστικών αλγορίθμων, από στοιχειώδεις

λειτουργίες όπως άθροισμα, ημίτονο, συνημίτονο, και αριθμητική

μιγαδικών μέχρι πιο εξελιγμένες λειτουργίες όπως η αντίστροφη

μητρώων, ιδιοτιμές μητρώων, λειτουργίες Bessel, μετασχηματισμούς

Fourier, καθώς και επεξεργασίας εικόνας.

Το MATLAB Application Program Interface (API)

βιβλιοθήκη που σας επιτρέπει να γράψετε προγράμματα σε γλώσσες C

και Fortran τα οποία αλληλεπιδρούν με το περιβάλλον MATLAB.

Δυνατότητα για να κληθούν ρουτίνες από το MATLAB (δυναμική

σύνδεση-dynamic linking).

9

Page 10: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

MATLAB: Βασικά χαρακτηριστικά

Μερικά βασικά χαρακτηριστικά:

• Τα πάντα στο MATLAB είναι μητρωικά!

• MATLAB είναι μια ερμηνευμένη γλώσσα (interpreted language), δεν

απαιτείται μεταγλώττιση (compilation), αλλά είναι δυνατόν.

• Το MATLAB δεν χρειάζεται δηλώσεις μεταβλητών, δηλώσεις

διάστασης, δηλώσεις κατανομής αποθήκευσης

• Τα προγράμματα μπορούν να εκτελούνται βήμα προς βήμα, με

πλήρη πρόσβαση σε όλες τις μεταβλητές, τις λειτουργίες κ.λ.π.

10

Page 11: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Πως είναι ο κώδικας Matlab;

Ένα απλό παράδειγμα:

>> a = 1

>> while length(a) < 10

a = [0 a] + [a 0]

end

Εκτυπώνει το τρίγωνο του Pascal:

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

1 6 15 20 15 6 1

1 7 21 35 35 21 7 1

1 8 28 56 70 56 28 8 1

1 9 36 84 126 126 84 36 9 1

11

Page 12: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Πως είναι ο κώδικας Matlab; (συν.)

Ένα άλλο παράδειγμα:

>> t = 0:pi/100:2*pi;

>> y = sin(t);

>> plot(t,y)

12

Page 13: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Πως είναι ο κώδικας Matlab; (συν.)

Ένα άλλο παράδειγμα:

t = 0:pi/100:2*pi;

y = sin(t);

plot(t,y)

Θυμηθείτε:

Τα πάντα στο MATLAB είναι μητρωικά!

Δημιουργεί μητρώο 1 200

Όρισμα και αποτέλεσμα: μητρώο 1 200

13

Page 14: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Δεν υπάρχει ανάγκη για τύπους μεταβλητών:

Όλες οι μεταβλητές που δημιουργούνται είναι διπλής ακρίβειας εκτός αν ορίζεται διαφορετικά και είναι μητρώα.

Μετά από αυτές τις δηλώσεις, οι μεταβλητές είναι πίνακες 11 διπλής ακρίβειας.

int a;

double b;

float c;

Example:

>>x=5;

>>x1=2;

Μεταβλητές στο Matlab

14

Page 15: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Command Window

Σύνταξη των εντολών

Current Directory

Φάκελοι και m-files

Workspace

Μεταβλητές

Με double click στην μεταβλητή την βλέπουμε αναλυτικά στον Array Editor

Command History

Βλέπουμε προηγούμενες εντολές

Το περιβάλλον του Matlab

Περιβάλλον εργασίας Matlab

15

Page 16: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

https://cloudfront0.central.ntua.gr

Χρήση του Matlab από το σπίτι

Οδηγίες:

http://www.central.ntua.gr/wiki/cloud/cloudfront

16

Page 17: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Λογικά Διαγράμματα (Διαγράμματα Ροής)

Τα τέσσερα βήματα για την ανάπτυξη ενός προγράμματος

1. Περιγραφή, ανάλυση και καθορισμός του προβλήματος.

2. Ανάπτυξη της λογικής του προγράμματος (αλγόριθμος) και

προετοιμασία του λογικού διαγράμματος (διαγραμματική μορφή

απεικόνισης μίας διαδικασίας).

3. Σύνταξη Κώδικα

4. Συγγραφή κώδικα, αποσφαλμάτωση (συντακτικά λάθη),

προετοιμασία δεδομένων για δοκιμές, εκτέλεση δοκιμών,

αποσφαλμάτωση (λογικά λάθη).

Ολοκλήρωση της τεκμηρίωσης.

17

Page 18: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Λογικά Διαγράμματα (Διαγράμματα Ροής) (συν.)

18

Page 19: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Λογικά Διαγράμματα (Διαγράμματα Ροής) (συν.)

19

Page 20: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Λογικά Διαγράμματα (Διαγράμματα Ροής) (συν.)

20

Page 21: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

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

1. Διαδοχική

2. Επιλογή

3. Επανάληψη

Λογικά Διαγράμματα (Διαγράμματα Ροής) (συν.)

21

Page 22: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Λογικά Διαγράμματα (Διαγράμματα Ροής) (συν.)

22

Page 23: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Λογικά Διαγράμματα (Διαγράμματα Ροής) (συν.)

23

Page 24: ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΕΜΠ ΜΕΘΟΔΟΙ ... · 2015-06-06 · Η γλώσσα matlab υψηλού επιπέδου γλώσσα για πίνακες

Σχολή Πολιτικών Μηχανικών ΕΜΠ: Μέθοδοι επίλυσης με Η/Υ

Χρηματοδότηση

Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί σταΠλαίσια του εκπαιδευτικού έργου του διδάσκοντα.Το έργο «Ανοιχτά Ακαδημαϊκά Μαθήματα Ε.Μ.Π.» έχειχρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού.Το έργο υλοποιείται στο πλαίσιο του ΕπιχειρησιακούΠρογράμματος «Εκπαίδευση και Δια Βίου Μάθηση» καισυγχρηματοδοτείται από την Ευρωπαϊκή Ένωση.

24