Matlab Εισαγωγικές έννοιες C. C. Katsidis
m-file editor Εισαγωγή στο Matlab
Command Window Εισαγωγή στο Matlab
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 )
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 ) 10000 9000 8000 7000 6000 5000 4000 3000 2000 1000 0 0 20 40 60 80 100 120
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 ) plot(y)
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 ) 16 x 104 14 12 10 8 6 4 2 0 0 20 40 60 80 100 120
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 ) plot (x,y)
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 ) linspace(x_start,x_end,number of points)
Ορισμός και γραφικές παραστάσεις συναρτήσεων στο matlab (συνάρτηση y=x 2 ) 16 x 104 14 12 10 8 6 4 2 Τιμές x 0 0 50 100 150 200 250 300 350 400
Ορισμός και γραφικές παραστάσεις πολυωνυμικών συναρτήσεων στο matlab Παράδειγμα: y=2x 4-3x 3-4
Ορισμός και γραφικές παραστάσεις πολυωνυμικών συναρτήσεων στο matlab Παράδειγμα: y=2x 4-3x 3-4 2.5 x 104 2 1.5 1 0.5 0-0.5-10 -8-6 -4-2 0 2 4 6 8 10
Επιλογές πλοταρίσματος Εισαγωγή στο Matlab
y values Εισαγωγή στο Matlab Επιλογές πλοταρίσματος 1500 Plot demo 1000 500 0 POLYONYMO 4ou VATHMOU -500-5 -4-3 -2-1 0 1 2 3 4 5 x values
Επιλογές πλοταρίσματος Εισαγωγή στο Matlab
y values Επιλογές πλοταρίσματος Εισαγωγή στο Matlab 3500 3000 Plot demo y1 y2 2500 2000 1500 1000 500 0-500 -5-4 -3-2 -1 0 1 2 3 4 5 x values
Επιλογές πλοταρίσματος Εισαγωγή στο Matlab
y values y values 2 γραμμές 1 στήλη Εισαγωγή στο Matlab Plot demo 3000 y1 2000 1000 0-5 -4-3 -2-1 0 1 2 3 4 5 x values Plot demo 3000 y2 2000 1000 0-5 -4-3 -2-1 0 1 2 3 4 5 x values
y values y values Εισαγωγή στο Matlab 1 γραμμή 2 στήλες 3500 Plot demo y1 3500 Plot demo y2 3000 3000 2500 2500 2000 2000 1500 1500 1000 1000 500 500 0 0-500 -5 0 5 x values -500-5 0 5 x values
plot3 Εισαγωγή στο Matlab
values of z Εισαγωγή στο Matlab plot3 10 5 0 1 0.5 0 values of y -0.5-1 -1-0.5 0 values of x 0.5 1
Surface plot Εισαγωγή στο Matlab
z Εισαγωγή στο Matlab Surface plot 0.2 0.1 0.1 0.05 0-0.1 0-0.05-0.2 2 1 y 0-1 -1 0 x 1 2-0.1
Bar chart Εισαγωγή στο Matlab
index u w w Εισαγωγή στο Matlab Bar chart 30 30 20 20 10 10 0 1 2 3 4 5 index 0 2 4 6 8 10 u 5 4 3 2 1 10 8 6 4 2 0 10 20 30 w 0 10 20 30 w
Εύρεση ριζών πολυωνύμου- συνάρτηση roots Πολυώνυμο P(x)=x 2-1 Κώδικας 1. clear all, close all, clc 2. c=[1 0-1] 3. roots(c) Αποτέλεσμα c = 1 0-1 ans = -1 1
Εύρεση ριζών πολυωνύμου- συνάρτηση roots Πολυώνυμο P(x)=2x 3 +x 2-1 Κώδικας 1. clear all, close all, clc 2. c=[2 1 0-1] 3. roots(c) Αποτέλεσμα c = 2 1 0-1 ans = -0.5786 + 0.6526i -0.5786-0.6526i 0.6573 Εισαγωγή στο Matlab
Εύρεση ριζών πολυωνύμου- συνάρτηση fzero Πολυώνυμο P(x)=2x 3 +x 2-1 Κώδικας 1 clear all, close all, clc 2 myfun = @(x) 2*x.^3+x.^2-1; 3 x = fzero(myfun,[-1 1]) Αποτέλεσμα x = 0.6573 Αναζητούμε τις ρίζες του πολυωνύμου κοντά στο διάστημα [-1 1]. Προσδιορίστηκε μόνο η πραγματική ρίζα
Επίλυση υπερβατικής «transcendental» εξίσωσης [παράδειγμα χ=tan(x) ] με χρήση της fzero Κώδικας 1. clear all, close all, clc 2. myfun = @(x) x-tan(x); 3. x = fzero(myfun,pi) Αποτέλεσμα x = 4.4934 (=1.43 π) Στην ουσία αναζητούμε τη ρίζα της συνάρτησης x-tan(x) κοντά στην τιμή x=π
Επίλυση υπερβατικής «transcendental» εξίσωσης [παράδειγμα sin(x)=x ] με χρήση της solve Κώδικας 1. clear all, close all, clc 2. syms x; 3. s='sin(x)=x' 4. solve(s) Αποτέλεσμα s = sin(x)=x ans = matrix([[0]]) δηλαδή x=0
Επίλυση υπερβατικής «transcendental» εξίσωσης [παράδειγμα sin(x)=x 2-1 ] με χρήση της solve Κώδικας 1. clear all, close all, clc 2. syms x; 3. s='sin(x)=x^2-1' 4. solve(s) Αποτέλεσμα s = sin(x)=x^2-1 ans = matrix([[-0.63673265080528201088799090383828]]) δηλαδή x= - 0.63673
Πίνακες Ορισμός πίνακα >> Α = [2 5 3; 1 1 4] A = 2 5 3 1 1 4 Επιλογή σειράς >> A(2, :) ans = 1 1 4 Επιλογή στήλης >> A(:, 3 ) ans= 3 4
Πίνακες >> Α = zeros(4) % 4x4 πίνακας με μηδενικά στοιχεία >> m =1:4; >> A(:, 2) = m ; % δεύτερη στήλη >> Α(2, :) = m; % δεύτερη γραμμή Α = 0 1 0 0 1 2 3 4 0 3 0 0 0 4 0 0
Πίνακες >> Α = [1 2; 3 4] >> B = [1 1; 1 3] >> A.^B ans = 1 2 3 64 >> Α = [1 2; 3 4] >> B = A. ^2 ans = 1 4 9 16 >> Α = [1 2; 3 4] >> B = 2. ^A ans = 2 4 8 16
Πίνακες επίλυση συστημάτων εξισώσεων Πρώτο σύστημα 2x+3y=7 x-y=1 Δεύτερο σύστημα 2x+3y=-2 x-y=8 2 3 x 7 2 1 1 y 1 8 A=[2 3; 1-1] B=[7-2; 1 8] X=A\B X= 2.0000 4.4000 1.0000-3.6000
Ορισμός πίνακα με χρήση nested loops Αποτέλεσμα: A = 5 8 11 14 7 10 13 16 9 12 15 18 11 14 17 20
Προσπέλαση αρχείου filename.dat που βρίσκεται σε τυχαία θέση στο σκληρό δίσκο (π.χ. c:\folder\) και πλοτάρισμα των στοιχείων του (π.χ. για αρχείο με δύο στήλες δεδομένων, πλοτάρισμα των στοιχείων της δεύτερης στήλης σα συνάρτηση των στοιχείων της πρώτης) load c:\folder\filename.dat -ascii plot(filename(:,1),filename(:,2)) Στοιχεία πρώτης στήλης Στοιχεία δεύτερης στήλης
Σας ευχαριστώ! Καλή ενασχόληση με το Matlab! C. C. Katsidis