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
Οικονομίδης Δημήτρης

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] a matrix x = [1 2 3; 5 1 4; 3 2 -1]
a matrix x = [1 2 3; 5 1 4; ] transpose y = x.’ y = 1 2 5

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

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 pi … j imaginary unit, i same as j

8 Generating Vectors from functions
x = zeros(1,3) x = x = ones(1,3) x = rand(1,3) 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)

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

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)
plot linear plot stem discrete plot grid add grid lines xlabel add X-axis label ylabel add Y-axis label title add graph title subplot divide figure window figure create new figure window pause wait 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 save it in myfunction.m call it with y=myfunction(x,y)
function f=myfunction(x,y) f=x+y; save it in myfunction.m call it with y=myfunction(x,y)

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

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

18 Getting Help Using the Help Browser (.html, .pdf) Type Running demos
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 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 observations of the sum of two fair dies

23 Sum of Two Dies Simulate 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)/10000 ans = p[2]=0.0278 sum(y==3)/10000 ans = p[3]=0.0556 sum(y==4)/10000 ans = p[4]=0.0833 sum(y==5)/10000 ans = p[5]=0.1111 sum(y==6)/10000 ans = p[6]=0.1389 sum(y==7)/10000 ans = p[7]=0.1667 sum(y==8)/10000 ans = p[8]=0.1389 sum(y==9)/10000 ans = p[9]=0.1111 sum(y==10)/10000 ans = p[10]=0.0833 sum(y==11)/10000 ans = p[11]=0.0556 sum(y==12)/10000 ans = p[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) Bernoulli 1720 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