Presentation laddar. Vänta.

Presentation laddar. Vänta.

Föreläsning 15 Matlab överkurs KTH, CSC, Vahid Mosavat.

Liknande presentationer


En presentation över ämnet: "Föreläsning 15 Matlab överkurs KTH, CSC, Vahid Mosavat."— Presentationens avskrift:

1 Föreläsning 15 Matlab överkurs KTH, CSC, Vahid Mosavat

2 Standardmatriser zeros(n) ger nxn-matris med bara nollor.
zeros(m,n) ger motsvarande mxn-matris. ones(n) ger nxn-matris med bara ettor. ones(m,n) ger motsvarande mxn-matris. eye(n) ger nxn-identitetsmatrisen (ettor på diagonalen och nollor annars) eye(m,n) ger motsvarande mxn-matris

3 Hjälp med Matlab Skumma igenom häftet från studentexpeditionen.
Använd Matlabs inbyggda hjälp: Klicka på menyn ”Help” och välj alternativet ”Product Help”. Där kan man söka efter nyckelord. Googla!

4 Elementvisa operationer
Om vi har en mxn-matris A och en nxk-matris B så gör följande en matrismultiplikation: C=A*B C=A.*B gör istället elementvis multiplikation. Motsvarande gäller / och ./, och ^ och . ^. Varför finns det inte en operator .+?

5 Inversen av matris En nxn-matris A har en invers om det existerar en matris B sådan att A*B=I, där I är identitetsmatrisen. inv(A) ger inversen till A i Matlab. Vi kan (om lösbart) lösa A*x=b i Matlab enligt: x=inv(A)*A*x=inv(A)*b Varför är x=A\b ett bättre sätt att göra detta?

6 Matrisfunktioner Låt A vara en matris:
rank(A) ger rangen för matrisen A. det(A) ger matrisens determinant om A är kvadratisk. [D,V]=eig(A) ger matrisens egenvärden som diagonalmatris D och egenvektorer som kolumnvektorer i V. Dvs: A*V=V*D

7 Formattering av utdata
disp(x) skriver ut objektet x, men det finns flera olika standardformat: short, long, short e, short g, long e, long g, bank, hex, rat, compact, loose. Prova och se vad som händer!

8 switch-sats När man har många alternativ beskrivna av ett tal:
switch (uttryck) case värde, vad som skall göras otherwise, end

9 Komplexa tal Komplexa tal förekommer relativt ofta i tekniska tillämpningar. Matlab kan hantera komplexa tal. Bokstäverna i och j representerar den imaginära enheten. Tänk igenom vad ni plottar om ni använder komplexa tal! (lätt att göra fel)

10 Slumptal rand ger likformigt fördelat tal i [0,1].
rand(n) ger nxn-matris med sådana tal. rand(m,n) ger motsvarande mxn-matris. randn ger normalfördelat tal. Randint(m,n,[3,5]) ger likformigt fördelad mxn-heltalsmatris.

11 Rita upp funktionsgraf
Skapa vektor med evalueringspunkter: x=0:0.1:2*pi Skapa vektor med funktionsvärden: y=sin(x) Rita linjer mellan punkterna: plot(x,y)

12 Andra sätt att visualisera data
bar(x,y) stapeldiagram barh(x,y) horisontellt stapeldiagram pie(y) tårtdiagram stairs(x,y) trapstegsdiagram stem(x,y) variant på stapeldiagram

13 Enklare sätt att rita funktionsgraf
ezplot – ”easy-plot”: Ange funktion och intervall: ezplot(’sin’,[0,2*pi]) Glöm inte enkelfnuttarna! fplot fungerar liknande som ezplot, men väljer punkter adaptivt.

14 Enklare sätt att rita funktionsgraf
fplot kan också användas enligt: fplot(f,[0,2*pi]) fplot(’x^2’,[0,10])

15 Histogram Skapa 1000 normalfördelade värden: y=randn(1000,1)
Rita histogram med 15 intervall: hist(y,15)

16 3D-kurva Skapa punkter: t=0:0.1:10; x=exp(-0.2*t).*cos(2t);
y=exp(-0.2*t).*sin(2t); Rita upp kurvan: plot3(x,y,t)

17 Rita yta i rummet Skapa ett nät av evalueringspunkter:
[x,y]=meshgrid(-4:0.1:4, -4:0.1:4); Evaluera funktion i varje sådan punkt: z=exp(-0.5*(x.^2+y.^2)); Rita upp resultatet: mesh(x,y,z);

18 Aspekter av yta i rummet
Rita upp höjdkurvor för ytan: contour(x,y,z); Rita upp ytan och inte bara nätet: surf(x,yz)

19 Lägg till information legend(’kurva1’, ’kurva2’) ger faktaruta
xlabel(’text på x-axeln’) ylabel(’text på y-axeln’) zlabel(’text på z-axeln’) title(’Min titel på grafen’) text(3,4,’extra info’)

20 Flera kurvor samtidigt (Alt 1)
Alternativ 1: x=0:0.1:10; y=x.^2 z=z.^3 plot(x,y,x,z)

21 Flera kurvor samtidigt (Alt 2)
x=0:0.1:10; y=x.^2 plot(x,y) hold on z=x.^2 plot(x,z) hold off

22 Färger och linjer x=0:0.1:10; y=x.^2 plot(x,y,’g--’)
Färger: b,g,r,c,m,y,k,w Linjer: :

23 Delfönster x=0:0.1:10; y=x.^2 subplot(1,1,1) plot(x,y) z=x.^2
plot(x,z)

24 Lycka till!


Ladda ner ppt "Föreläsning 15 Matlab överkurs KTH, CSC, Vahid Mosavat."

Liknande presentationer


Google-annonser