Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Matlab Οικονομίδης Δημήτρης

Similar presentations


Presentation on theme: "Introduction to Matlab Οικονομίδης Δημήτρης"— Presentation transcript:

1 Introduction to Matlab Οικονομίδης Δημήτρης doikon@telecom.tuc.gr http://www.telecom.tuc.gr

2 Desktop Tools (Matlab v6) Command Window –type commands Workspace –view program variables –clear to clear –double click on a variable to see it in the Array Editor Command History –view past commands –save a whole session using diary Launch Pad –access tools, demos and documentation

3 Matlab Files (.m) Use predefined functions or write your own functions Reside on the current directory or the search path –add with File/Set Path Use the Editor/Debugger to edit, run

4 Matrices a vector x = [1 2 5 1] x = 1 2 5 1 a matrix x = [1 2 3; 5 1 4; 3 2 -1] x = 1 2 3 5 1 4 3 2 -1 transpose y = x.’ y = 1 2 5 1

5 Matrices x(i,j) subscription whole row whole column y=x(2,3) y = 4 y=x(3,:) y = 3 2 -1 y=x(:,2) y = 2 1 2

6 Operators (arithmetic) +addition -subtraction *multiplication /division ^power ‘complex conjugate transpose.*element-by-element mult./element-by-element div.^element-by-element power.‘transpose

7 Operators (relational, logical) ==equal ~=not equal <less than <=less than or equal >greater than >=greater than or equal &AND |OR ~NOT pi3.14159265… jimaginary unit, isame as j

8 Generating Vectors from functions zeros(M,N)MxN matrix of zeros ones(M,N)MxN matrix of ones rand(M,N)MxN matrix of uniformly distributed random numbers on (0,1) x = zeros(1,3) x = 0 0 0 x = ones(1,3) x = 1 1 1 x = rand(1,3) x = 0.9501 0.2311 0.6068

9 Operators [ ]concatenation ( )subscription x = [ zeros(1,3) ones(1,2) ] x = 0 0 0 1 1 x = [ 1 3 5 7 9] x = 1 3 5 7 9 y = x(2) y = 3 y = x(2:4) y = 3 5 7

10 Matlab Graphics x = 0:pi/100:2*pi; y = sin(x); plot(x,y) xlabel('x = 0:2\pi') ylabel('Sine of x') title('Plot of the Sine Function')

11 Multiple Graphs t = 0:pi/100:2*pi; y1=sin(t); y2=sin(t+pi/2); plot(t,y1,t,y2) grid on

12 Multiple Plots t = 0:pi/100:2*pi; y1=sin(t); y2=sin(t+pi/2); subplot(2,2,1) plot(t,y1) subplot(2,2,2) plot(t,y2)

13 Graph Functions (summary) plotlinear plot stemdiscrete plot gridadd grid lines xlabeladd X-axis label ylabel add Y-axis label titleadd graph title subplotdivide figure window figurecreate new figure window pausewait for user response

14 Math Functions Elementary functions (sin, cos, sqrt, abs, exp, log10, round) –type help elfun Advanced functions (bessel, beta, gamma, erf) –type help specfun –type help elmat

15 Functions function f=myfunction(x,y) f=x+y; save it in myfunction.m call it with y=myfunction(x,y)

16 Flow Control if A > B 'greater' elseif A < B 'less' else 'equal' end for x = 1:10 r(x) = x; end if statement switch statement for loops while loops continue statement break statement

17 Miscellaneous Loading data from a file –load myfile.dat Suppressing Output –x = [1 2 5 1];

18 Getting Help Using the Help Browser (.html,.pdf) –View getstart.pdf, graphg.pdf, using_ml.pdf Type –help –help function, e.g. help plot Running demos –type demos –type help demos

19 Random Numbers x=rand(100,1); stem(x); hist(x,100)

20 Coin Tosses Simulate the outcomes of 100 fair coin tosses x=rand(100,1); p=sum(x<0.5)/100 p = 0.5400 Simulate the outcomes of 1000 fair coin tosses x=rand(1000,1); p=sum(x<0.5)/1000 p = 0.5110

21 Coin Tosses Simulate the outcomes of 1000 biased coin tosses with p[Head]=0.4 x=rand(1000,1); p=sum(x<0.4)/1000 p = 0.4160

22 Sum of Two Dies Simulate 10000 observations of the sum of two fair dies

23 Sum of Two Dies Simulate 10000 observations of the sum of two fair dies x1=floor(6*rand(10000,1)+1); x2=floor(6*rand(10000,1)+1); y=x1+x2; sum(y==2)/10000ans = 0.0275p[2]=0.0278 sum(y==3)/10000ans = 0.0554p[3]=0.0556 sum(y==4)/10000ans = 0.0841p[4]=0.0833 sum(y==5)/10000ans = 0.1082p[5]=0.1111 sum(y==6)/10000ans = 0.1397p[6]=0.1389 sum(y==7)/10000ans = 0.1705p[7]=0.1667 sum(y==8)/10000ans = 0.1407p[8]=0.1389 sum(y==9)/10000ans = 0.1095p[9]=0.1111 sum(y==10)/10000ans = 0.0794p[10]=0.0833 sum(y==11)/10000ans = 0.0585p[11]=0.0556 sum(y==12)/10000ans = 0.0265p[12]=0.0278

24 Sum of Two Dies for i=2:12 z(i)=sum(y==i)/10000 end bar(z)

25 Bernoulli Trials-Binomial Distribution k=0:20; y=binopdf(k,20,0.5); stem(k,y) Bernoulli1720 k=0:20; y=binopdf(k,20,0.2); stem(k,y)

26 Combinatorics Permutations:n objects Permutations:choose k objects from n (hint: fill 2 spaces on a bookshelf with books chosen from 5 available books) Combinations:choose k objects from n without regard to the order (hint: make a committee of 2 people chosen from a group of 5 people)


Download ppt "Introduction to Matlab Οικονομίδης Δημήτρης"

Similar presentations


Ads by Google