Inleiding matlab

546 views

Published on

Published in: Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
546
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Inleiding matlab

  1. 1. Inleiding tot het gebruik van MATLAB Cursus Chemometrie Piet Van Espen
  2. 2. <ul><li>omgeving voor het uitvoeren van numerische berekeningen en visualisering </li></ul><ul><li>Matlab is sinds enkele jaren de de-facto standaard in de chemometrie. </li></ul><ul><li>Specifieke functies worden gewaard in m-bestanden (m-files) een collectie van deze m-bestanden, ontwikkeld voor een bepaalde toepassing, noemt men een toolbox . </li></ul><ul><li>Matlab werd oorspronkelijk ontwikkeld door Cleve Moler en wordt thans verdeeld door &quot;The MathWorks, Inc., Mass., USA (http://www.mathworks.com). </li></ul>MATLAB (MATrix LABoratory)
  3. 3. 1. Gebruik van Matlab Commando venster Voorbeeld
  4. 4. 2. Essentiële elementen van de Matlab taal Matriches omgeven door vierkante haken [ ] , &quot; ; &quot; geeft het einde van een rij aan. A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ] A = 1 2 3 4 5 6 7 8 9 X = [ -1.3 sqrt(3) (1+2+3)*4/5 ] X = -1.3000 1.7321 4.8000 Elementen van de matrix : ronde haken ( ) X(5) = abs( X(1) ) X = -1.3000 1.7321 4.8000 0 1.3000
  5. 5. Een matrix kan geconstrueerd worden uitgaande van andere matriches R = [ 10 11 12 ]; A=[A;R] A = 1 2 3 4 5 6 7 8 9 10 11 12 Een submatrix kan geëxtraheerd worden uit een matrix Z=A(1:2,:) Z = 1 2 3 4 5 6 de eerste 2 rijen en alle kolommen uit A.
  6. 6. Commando's en variabelen variabele = uitdrukking of uitdrukking 1900/81 ans = 23.4568 y = 1900/81 ; commandolijn over meer dan een regel : &quot;...&quot; s= 1 - 1/2 + 1/3 - 1/4 +1/5 -1/6 +1/7 ... -1/8 +1/9 -1/10 +1/11 -1/12
  7. 7. De werkomgeving (Workspace) Alle variabelen opgeslagen in de werkomgeving De inhoud van de werkomgeving kan getoond worden met de functie who who Your variables are: A R Z s B X ans Om de dimensies van deze variabelen te zien, gebruik je de functie whos whos Name Size Elements Bytes Density Complex A 4 by 3 12 96 Full No B 3 by 3 9 72 Full No R 1 by 3 3 24 Full No X 1 by 5 5 40 Full No Z 2 by 3 6 48 Full No ans 1 by 1 1 8 Full No s 1 by 1 1 8 Full No Grand total is 37 elements using 296 bytes
  8. 8. Hulp functies Om hulp te vragen omtrent Matlab functies en procedures, kan je help typen help HELP topics: toolboxlocal - Local function library. matlabdatafun - Data analysis and Fourier transform … matlabelfun - Elementary math functions. . . For more help on directory/topic, type &quot;help topic&quot;.
  9. 9. help exp EXP Exponential. EXP(X) is the exponential of the elements of X, e to the X. See also LOG, LOG10, EXPM, ARITH, POW2. help elfun Elementary math functions. Trigonometric. sin - Sine. sinh - Hyperbolic sine. ... Exponential. exp - Exponential. log - Natural logarithm .
  10. 10. Beëindigen van Matlab. <ul><li>quit of exit </li></ul><ul><li>save -> werkruimte bewaren in een bestand &quot;matlab.mat“ </li></ul><ul><li>load -> volgende Matlab sessie variabelen terug te laden. </li></ul><ul><li>Je kan save /load ook een bestandsnaam opgeven. : </li></ul><ul><li>save les1 </li></ul><ul><li>maakt het bestand les1.mat aan. </li></ul>
  11. 11. Getallen en bewerkingen rekenkundige bewerkingen: + optelling – aftrekking * vermenigvuldiging / deling ^ machtsverheffing f=12.5+(2/3 - 1.2e-2)/2^3 f = 12.5818 Deze bewerkingen zijn toepasbaar op scalaire grootheden, vectoren en matriches. Het getal p wordt gegeven door de functie pi. pi ans = 3.1416
  12. 12. D e waarden oneindig (inf) en onbepaald (NaN, Not a Number) 1/0 Warning: Divide by zero ans = Inf 0/0 Warning: Divide by zero ans = NaN Complexe gatallen worden gevormd door i of j te plaatsen bij het imaginaire deel z=3+4*i z = 3.0000 + 4.0000i
  13. 13. sqrt(-1) ans = 0 + 1.0000i imag(log(-1)) ans = 3.1416 exp(-pi*i) ans = -1.0000 - 0.0000i
  14. 14. Functies I ngebouwde functies F uncties beschikbaar via m-files Door gebruiker ontwikkelde functies x=sqrt(log(3)) x = 1.0481 x=[23 46 87 1 26 0 -4]; Xmax=max(x) Xmax = 87 [Xmax,Imax]=max(x) Xmax = 87 Imax = 3
  15. 15. 3. Matriches en Vectoren Transponeren A=[1 2 3; 4 5 6; 7 8 0] A = 1 2 3 4 5 6 7 8 0 B=A' B = 1 4 7 2 5 8 3 6 0 x=[-1 0 2]; x=x' x = -1 0 2
  16. 16. Optelling en aftrekking Optellen en aftrekken : matriches en vectoren van dezelfde dimensie C=A+B C = 2 6 10 6 10 14 10 14 0 en tussen een matrix of een vectoren en een scalaire grootheid C-10 ans = -8 -4 0 -4 0 4 0 4 -10
  17. 17. Vermenigvuldiging en deling A k x n *B n x m -> C k x m x=[-1 0 2]; (1x3) y=[-2 -1 1]'; (3x1) y*x ans = 2 0 -4 1 0 -2 -1 0 2 (3x3) x*y ans = 4 (1x1)
  18. 18. <ul><li>De deling van twee matriches wordt als volgd geinterpreteerd </li></ul><ul><li>X = AB is de oplossing van de vergelijking AX = B, of X = A -1 B </li></ul><ul><li>X = B/A is de oplossing van de vergelijking XA = B, of X = BA -1 </li></ul>Voor vectoren bestaat er nog de operatie .* element per element vermenigvuldiging x=[1 2 3]; y=[4 5 6]; z=x.*y z = 4 10 18
  19. 19. Genereren van vectoren Om vectoren op te vullen met getallen gebruikt men het ' : ' karakter, bijvoorbeeld x=1:5 x = 1 2 3 4 5
  20. 20. Elementen van een vector of matrix Deze kunnen aangeduid worden door gebruik te maken van haakjes ( ) en door gebruik te maken van het &quot;:&quot; karakter. A=[1 2 3; 4 5 6; 7 8 9] A = 1 2 3 4 5 6 7 8 9 A(1,3)+A(3,1) ans = 10 A(:,3) de derde kolom ans = 3 6 9 A(1:2,2:3) de rijen 1 en 2 en kolommen 2 en 3 ans = 2 3 5 6
  21. 21. 4. Inlezen van gegevens bestand met naam count.dat, dat de volgende gegevens bevat: 11 57 291 43 178 1011 38 163 1095 ... 10 51 286 load count.dat => gegevens in de matrix count
  22. 22. 5. Grafieken <ul><li>functie plot( ) </li></ul><ul><ul><li>plot(y) : grafiek y(i) tov i </li></ul></ul><ul><ul><li>plot(x,y) : grafiek y t ov x </li></ul></ul>t=0:pi/100;pi*2; x=sin(t); y1=sin(t+0.25); y2=sin(t+0.5); plot(x,y1,'o',x,y2,'+')
  23. 23. Matlab DEMO

×