Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

1 Matlab Εαρινό εξάμηνο 2005 Πέτρος Κωμοδρόμος

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "1 Matlab Εαρινό εξάμηνο 2005 Πέτρος Κωμοδρόμος"— Μεταγράφημα παρουσίασης:

1 1 Matlab Εαρινό εξάμηνο 2005 Πέτρος Κωμοδρόμος ΠΠΜ 221: Στατική Ανάλυση των Κατασκευών ΙI

2 2 Περιεχόμενα  Εισαγωγή στο Matlab  Βασικές λειτουργίες  Διανύσματα και μητρώα  Γραφικές απεικονίσεις και παραστάσεις  γραφικές απεικονίσεις σημείων και ευθύγραμμων τμημάτων  γραφικές παραστάσεις συναρτήσεων  γραφικές παραστάσεις πολλαπλών συναρτήσεων  πολλαπλές γραφικές παραστάσεις  πολλαπλά γραφικά σχήματα  Αρχεία Μatlab  Αρχεία Εντολών - Αρχεία Δεδομένων  Προγραμματισμός με το Matlab  Αρχεία συναρτήσεων  Λογικά τεστ  Βρόγχοι

3 3 Πρόγραμμα αριθμητικών υπολογισμών: Matlab

4 4 Πληροφορίες/βοήθεια για το Matlab Εκκίνηση προγράμματος Εκκίνηση προγράμματος >> help ( >> more on) >> help ( >> more on) >> help matlab\general >> help beep >> help matlab\general >> help beep >> demos >> demos Ιστοσελίδα κατασκευαστών: Ιστοσελίδα κατασκευαστών: >> doc >> doc Χρήση σαν απλή υπολογιστική Χρήση σαν απλή υπολογιστική

5 5 ( ) ^ *, / +, -, > &, | Βασικές λειτουργίες Matlab (17+3)/2+6/3 >> who Your variables are: a ans r >> clear >> whos >> pi ans = >> r = 5 r =5 >> pi * r ^ 2 ans = >> a = ans; >> a a = >> a = pi * r ^ 2 a = Τελεστές: Τελεστές: Προτεραιότητα τελεστών Προτεραιότητα τελεστών Αριθμητικές εκφράσεις Αριθμητικές εκφράσεις Μεταβλητές: Μεταβλητές: >> help ops >> help colon 17+3/2+6/3

6 6 Διανύσματα και μητρώα >> a(2) >> a(1) = 6; >> a >> c(2,3) >> c(1,1:2) >> c(2,2) = -5; >> c

7 7 Διανύσματα και μητρώα (συνεχ.) >> d = a * b >> e = c * a >> a’ >> c’ >> sum(a) >> sum(c,2) 30

8 8 Διανύσματα και μητρώα (συνεχ.) x = [ ] y = [ ] v = x.* y >> w = x * y’ u = x * y = [ ] = [ ] >> inv(w)= [ ] >> w * inv(w)= [ ] >> det(w)= -44 >> eye(3) = [ ] >> zeros(2,3) = [ ]

9 9 Γραφικές απεικoνίσεις σημείων >> x1 = 5; >> y1 = 7; >> plot(x1,y1,'*') % Σχεδιασμός σημείων (x1,y1) >> grid on % Προσθήκη κύριων γραμμών στο διάγραμμα >> title('Sxediash Shmeioy') % Προσθήκη τίτλου >> xlabel('X') >> ylabel('Y') % Προσθήκη τίτλων στους άξονες σχεδίασης

10 10 Γραφικές απεικόνισεις σημείων >> clf >> x1 = 5; >> y1 = 7; >> plot(x1,y1,'*') >> grid on >> title('Sxediash Shmeioy') >> xlabel('X') >> ylabel('Y') >> hold on >> axis equal >> myAxes = [ ]; >> axis(myAxes) >> plot(7,6,'o')

11 11 Γραφικές απεικόνισεις σημείων και ευθειών >> clf ; clear; >> x1 = 5; y1 = 7; >> x2 = 7; y2 = 6; >> x3 = 4.2; y3 = 5.5; >> x = [x1 x2 x3]; >> y = [y1 y2 y3]; >> axis equal >> axis([ ]); >> hold on >> plot(x,y,’*') >> x(4)=x1; y(4)=y1; >> plot(x,y) >> grid on >> title(’Sxediasmos shmeiwn kai trigwnoy') >> xlabel('X') >> ylabel('Y')

12 12 Γραφικές παραστάσεις >> x = 0:0.25:15; (αρχή:βήμα:τέλος) % Αυτόματος καθορισμός διανύσματος με τιμές γωνιών >> y = sin(x); % Αυτόματος υπολογισμός διανύσματος με τιμές ημιτόνων >> plot(x,y) % Σχεδιασμός σημείων (x,y) >> grid on % Προσθήκη κύριων γραμμών στο διάγραμμα >> title('Sxediash Hmitonoy') % Προσθήκη τίτλου >> xlabel('X') >> ylabel('Y') % Προσθήκη τίτλων στους άξονες σχεδίασης

13 13 Παράδειγμα Σχεδιάστε την γραφική παράσταση της εξίσωσης: όπου: 0 <= theta <= 100 >> clf >> clear >> theta = 0:0.5:100 >> z = 15*cos(theta/2) >> z = z * sin(theta/5); >> plot(theta,z) >> grid on >> title('Askhsh 2h') >> xlabel('Theta') >> ylabel('Z')

14 14 Πολλαπλές γραφικές παραστάσεις >> figure(1) >> clf >> x = 0:0.25:15; >> y = sin(x); >> plot(x,y,’r’) >> grid on >> title('Sxediash Hmitonoy') >> xlabel('X') >> ylabel(’Hmitono,Synhmitono‘) >> z = cos(x); >> hold on >> plot(x,z) >> plot(x,z,’or’) Eναλλακτικά: plot(x,y,'r',x,z, x,z,'or')

15 15 Πολλαπλά γραφικά σχήματα figure(2) subplot(3,2,1) plot(x,y,'-') title('X-Y Plot ') subplot(3,2,3) plot(x,y,'--') grid on title('X-Y Plot with grid') subplot(3,2,4) plot(x,z) grid on title('X-Z Plot with grid') subplot(3,2,6) plot(x,z, 'o') title('X-Z Plot: o ') subplot(3,2,5) plot(x,z, '*') title('X-Z Plot: *')

16 16 Γραφικές παραστάσεις και απεικονίσεις: Σχεδιάστε τα σημεία (-3,-2), (0,1), (2,2), (4,5) και (7,9) χρησιμοποιώντας το σύμβολα ‘ο’ και διακεκομμένη γραμμή στο 3 ον τομέα ενός σχήματος αποτελούμενου από 2 γραμμές και 2 στήλες, όπως πιο κάτω: >> x = [ ]; >> y = [ ] >> subplot(2,2,3) >> plot(x,y,'o') >> grid on >> hold on >> plot(x,y,'--')

17 17 Αρχεία Matlab: αρχεία Μ (M-files) >> myMFile >> myMFile myMFile.m File Set Path

18 18 Αρχεία δεδομένων Matlab >> load w.dat >> w >> w(2,1)

19 19 Αρχεία Matlab: load/save >> x = 1:2:11; >> y = [ ]; >> save C:\mySaved1 x >> save C:\mySaved2 >> clear all >> load C:\mySaved1 >> x >> y >> load C:\mySaved2 >> y ??? Undefined function or variable ’y'

20 20 Σχεδίαση με βάση αρχεία Matlab >> temperatures temps.dat temperatures.m

21 21 Αρχεία συναρτήσεων Matlab myMFile1.m a = 2.5; e = pi * a ^ 2; >> myMFile1 >> e e = Απλές εντολές σε M-file: myFunction1.m function embado=myFunction1(x) embado = pi * x ^2; embado = pi * x ^2;return >> e = myFunction1(10) e = >> myFunction1(0.5) ans = >> x=myFunction1(17.5) x = Συναρτήσεις:

22 22 Συναρτήσεις myFun1.m function y=myFun1(x) y = x*x*x; y = x*x*x;return Ορισμός συναρτήσεως: function apotelesma = synarthsh1(parametroi) myFun2.m function myFun2(x,y) x + y x + yreturn >> clear all >> z=myFun1(8) >> y ??? Undefined function or variable 'y'. >> z z = 512 >> myFun2(8,7) ans = 15 Ορισμός συνάρτησης Σώμα συνάρτησης

23 23 Λογικά τέστς Τελεστές: Τελεστές: > = = < = = = ~ = & | ~ >> x = 5; >> y = 7; >> x > x < y >> x >= y - 3 >> x == y - 3 >> 0 y >> 0 x >> ~ (x > ~ (x < 5)

24 24 Διακλαδώσεις if έκφραση1 εκτελείται μόνο αν η έκφραση1 είναι αληθής εκτελείται μόνο αν η έκφραση1 είναι αληθήςend if έκφραση1 εκτελείται μόνο αν η έκφραση1 είναι αληθής εκτελείται μόνο αν η έκφραση1 είναι αληθής elseif έκφραση2 εκτελείται μόνο αν η έκφραση1 δεν είναι αληθής και η έκφραση2 είναι αληθής εκτελείται μόνο αν η έκφραση1 δεν είναι αληθής και η έκφραση2 είναι αληθήςelse εκτελείται αν καμία έκφραση δεν είναι αληθής εκτελείται αν καμία έκφραση δεν είναι αληθήςend if έκφραση1 εκτελείται μόνο αν η έκφραση1 είναι αληθής εκτελείται μόνο αν η έκφραση1 είναι αληθήςelse εκτελείται μόνο αν η έκφραση1 δεν είναι αληθής εκτελείται μόνο αν η έκφραση1 δεν είναι αληθήςend

25 25 Παράδειγμα διακλαδώσεων rand1.m

26 26 Βρόγχοι for μεταβλητή = αρχική τιμή : (προαιρετικό) βήμα : τελική τιμή εντολές εντολέςend for i=1:5 for i=1:5 disp(i^2) disp(i^2) end end for i=5:-1:1 for i=5:-1:1 if i == 3 continue if i == 3 continue end end disp(i^2) disp(i^2) end end

27 27 Βρόγχοι (συνεχ.) i = 0; i = 0; while i<10 while i<10 i = i + 2 i = i + 2 end end disp(i) disp(i) while λογική έκφραση εντολές εντολέςend (μέσα στις οποίες πρέπει κάτι σχετικό με την λογική έκφραση να αλλάζει, ή να υπάρχει κάποιο break, ώστε να αποφεύγεται βρόγχος επ’άπειρον) i = 2 i = 4 i = 6 i = 8 i = continue: συνέχεια με επόμενη εκτέλεση βρόγχου for ή while continue: συνέχεια με επόμενη εκτέλεση βρόγχου for ή while break: τερματισμός εκτέλεσης βρόγχων for και while break: τερματισμός εκτέλεσης βρόγχων for και while i = 0; i = 0; while 1 while 1 if i>=10 if i>=10 break break end end i = i + 2 i = i + 2 end end disp(i) disp(i)

28 28 Σύγκριση Matlab και άλλων γλωσσών προγραμματισμού Matlab Matlab σε σύγκριση με: Fortran Fortran C/C++ C/C++ Java Java Visual Basic/VB.net Visual Basic/VB.net C# C#

29 29 Είσοδος δεδομένων/Έξοδος αποτελεσμάτων io1.m a = input('Aktina kykloy: '); p = 2 * pi * a; e = pi * a ^ 2; fprintf(' Dokimh: %s ', 'Matlab') fprintf('\n Aktina = %f ', a) fprintf('\n Perimetros = %.3f ', p) fprintf(' \n Epifaneia = %f ', e) fprintf(' p = %f \t e = %f ', p, e) fprintf(' %s = %f ', 'a', a) fprintf(' %s = %f ', 97, a) >> io1 Aktina kykloy: 5 Dokimh: Matlab Aktina = Perimetros = Epifaneia = p= e = a = 5

30 30 Άλλες χρήσιμες εντολές >> format long ; pi ans = >> format short ; pi ans = >> disp(pi) >> s='2*3-5+3/2’ >> eval(s)ans = >> print >> help print >> t= 'Testing' ; disp(t) Testing >> realMaxans =1.7977e+308 >> realMinans =2.2251e-308 >> help InF >> help NaN


Κατέβασμα ppt "1 Matlab Εαρινό εξάμηνο 2005 Πέτρος Κωμοδρόμος"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google