%Demo av vektorer/matriser i Matlab
disp('Demo av vektorer/matriser i Matlab')
disp('  ')
disp('A) VEKTORER')
disp('  ')
disp('x=[1:1:4]   skapar en radvektor')
x=[1:1:4]
disp('tryck p� RETURN-knappen')
pause
disp('x=[1:1:4];   semikolon undertrycker utskrift')
x=[1:1:4];
disp('tryck p� RETURN-knappen')
pause
disp('y=[1 3 6]''  skapar en kolumnvektor')
y=[1 3 6]'
pause
disp('z=linspace(0,5,11) genererar 11 punkter mellan 0 och 5')
z=linspace(0,5,11)
pause
disp('z(3) avl�ser ett vektorelements v�rde')
z(3)
pause
disp('z(2:4)  avl�ser flera vektorelement')
z(2:4)
pause
disp('n=length(z)  avl�ser vektorns l�ngd')
n=length(z)
pause
disp('f�r att skapa en tabell')
disp('x=[0:1:5]'';')
disp('y=sin(x);')
disp('z=cos(x);')
disp('tabell=[x y z]')
x=[0:1:5]';
y=sin(x);
z=cos(x);
tabell=[x y z]
echo off
pause
disp('  ')
disp('B) MATRISER')
disp(' ')
disp('A=[1 2;3 4]  skapar en matris genom uppr�kning av elementen')
A=[1 2;3 4]
pause
disp('B=[1:3;4:6] skapar en matris med :-notation')
B=[1:3;4:6]
pause
disp('C=[[1:3]'' [4:6]'']   annat ex')
C=[[1:3]' [4:6]']
disp('n�gra speciella matriser')
disp('A=ones(2,2)')
A=ones(2,2)
pause
disp('A=zeros(3,3)')
A=zeros(3,3)
pause
disp('A=eye(4,4)')
A=eye(4,4)
pause
disp('A=diag([1:3])')
A=diag([1:3])
pause
disp('A=diag([1:3],-1)')
A=diag([1:3],-1)
pause
disp('[m,n]=size(A)  avl�ser matrisens storlek')
[m,n]=size(A)
pause
disp('A(3,2)   avl�ser ett element i matrisen')
A(3,2)
pause
disp('A(:,1)  avl�ser kolumn 1 i matrisen')
A(:,1)
pause
disp('A(1,:) avl�ser rad 1 i matrisen')
A(1,:)
pause
disp('a=sparse(A) g�r en GLES matris av en FULL matris')
a=sparse(A)
pause
disp('  ')
disp('C) N�GRA MATRISOPERATIONER')
disp('  ')
disp('A=[1 2;3 4], b=[3 7]''   skapa f�rst en matris och en kolumnvektor')
A=[1 2;3 4],b=[3 7]'
pause
disp('detA=det(A)   determinanten f�r A')
detA=det(A)
pause
disp('invA=inv(A)   inversen till A')
invA=inv(A)
pause
disp('eigA=eig(A)    egenv�rdena till A')
eigA=eig(A)
pause
disp('x=A\b   l�ser det linj�ra ekvationssystemet')
x=A\b
pause
A=[1 2;2 4]
disp('Varnar om matrisen �r singul�r, dvs det(A)=0')
x=A\b
pause
disp('L�sning av ett glest linj�rt ekvationssystem, ex tridiagonalt')
d=[1 5 5 5 5]';
q=[0 2 2 2 2]';
p=[2 2 2 2 0]';
disp('Diagonalerna �r')
td=[p d q]
pause
disp('G�r en gles matris med a=spdiags([p d q],-1:1,5,5);')
a=spdiags([p d q],-1:1,5,5)
pause
disp('Utskriven som full matris blir den')
A=full(a)
pause
disp('Bilda ett h�gerled')
b=ones(5,1)
pause
disp('L�s med GLES Gausselimination x=a\b')
x=a\b
pause
disp('Kontroll av l�sningen: bilda residualvektorn r=a*x-b')
r=a*x-b
pause
disp('  ')
disp('D) Matrisalgebra i Matlab')
disp('  ')
disp('x=[1 2 3]''  A=[1 2 3;4 5 6;7 8 10] skapa f�rst en vektor och en matris')
x=[1 2 3]', A=[1 2 3;4 5 6;7 8 10]
pause
disp('y=2*x   multiplicera vektorn med 2')
y=2*x
pause
disp('z=x.*y  kompnentvis multiplikation')
z=x.*y
pause
disp('z=x.^2 komponentvis kvadrering')
z=x.^2
pause
disp('z=x*x blir fel!! (matrisdimensioner st�mmer ej)')
pause
disp('s=x''*x   skal�rprodukten')
s=x'*x
pause
disp('u=x+y  vektoraddition')
u=x+y
pause
disp('w=x/y   VARNING, VARNING!')
w=x/y
pause
disp('w=x./y  komponentvis division')
w=x./y
pause
disp('B=2*A   multiplicera metrisen med 2')
B=2*A
pause
disp('z=A*y   matrisvektormultiplikation')
z=A*y
pause
disp('C=A*B  matrismultiplikation')
C=A*B
pause
disp('N�gra allm�nna kommandon')
pause
disp('help ....  ger hj�lp f�r funktionen ....  Ex help abs')
help abs
pause
disp('help help  ger alla hj�lpkommandon')
help help
pause
disp('clear suddar arbetsminnet')
pause
disp('clf suddar figurf�nstret')
pause
disp('L�s f.�. i MATLAB-manualen MATLAB 7 i korthet')
pause



