1 Generiranje matrice
Generiranje matrice čiji elementi su zadani nekom formulom
(%i1) | T: genmatrix(lambda([i,j],i-j), 5,4); |
(%i2) | M: genmatrix(lambda([i,j], if i>j then cos(i*%pi/2) else log(i+j)/log(2)), 3, 4); |
2 Operacije s matricama
1. zadatak
(%i3) |
A: matrix( [1,2], [0,-3], [5,4] ); |
(%i4) |
B:matrix( [1,0,-2,5], [8,4,-1,3] ); |
(%i5) | A.B; |
(%i6) | B.A; |
(%i7) | transpose(A); |
2. zadatak
(%i8) |
A: matrix( [3,1,-4], [-4,6,-2], [5,8,5] ); |
(%i9) |
B: matrix( [3,7,-4], [2,1,0], [-5,3,2] ); |
(%i10) | A.B; |
(%i11) | B.A; |
(%i12) | 3*A.B-7*B.A; |
3. zadatak
(%i13) | A: matrix([3,-2],[-1,5]); |
(%i14) | A^^2; |
(%i15) | A^^3; |
(%i16) | diag_matrix(1,1); |
(%i17) | A^^3+2*A^^2+3*diag_matrix(1,1); |
Oprez. Uočite razliku između sljedećih operacija
(%i18) | A: matrix([3,1,-4],[-4,6,-2],[5,8,5]); |
(%i19) | B: matrix([3,7,-4],[2,1,0],[-5,3,2]); |
Oprez: * (zvjezdica) samo množi matrice po pozicijama
(%i20) | A*B; |
(%i21) | B*A; |
Pomoću . (točkica) maxima vrši pravo množenje matrica
(%i22) | A.B; |
(%i23) | B.A; |
Oprez: ^ samo potencira matrice po elementima
(%i24) | A^2; |
^^ obavlja pravo potenciranje matrica
(%i25) | A^^2; |
ako ne želimo ispisati matrice
(%i26) | A: matrix([3,1,-4],[-4,6,-2],[5,8,5])$ |
(%i27) | B: matrix([3,7,-4],[2,1,0],[-5,3,2])$ |
4. zadatak
(%i29) |
A: matrix([2,-2,0],[1,-2,1])$ B: matrix([2],[1],[3])$ |
(%i30) | A.B; |
5. zadatak
(%i32) |
A: matrix([2,3],[1,5])$ B: 9/5*matrix([1,0,4],[3,6,8])$ |
(%i33) | A.B; |
3 Determinante
1. zadatak
(%i36) |
A: matrix([2,5],[1,-3]); B: matrix([x-a,-a],[a,x+a]); C: matrix([sin(a),cos(a)],[sin(b),cos(b)]); |
(%i37) | determinant(A); |
(%i38) | determinant(B); |
(%i39) | expand(determinant(B)); |
(%i40) | determinant(C); |
(%i41) | trigreduce(determinant(C)); |
možemo i direktno izračunati determinatu bez spremanja matrice u varijablu
(%i42) | determinant(matrix([2,5],[1,-3])); |
2. zadatak
(%i43) | A: matrix([9,4,-5],[8,7,-2],[2,-1,8])$ |
(%i44) | determinant(A); |
3. zadatak
(%i45) | A: matrix([2,-5,1,2],[-3,7,-1,4],[5,-9,2,7],[4,-6,1,2])$ |
(%i46) | determinant(A); |
4. zadatak
(%i47) | A: matrix([3,a,3,a],[6,3,6,3],[7,7,6,6],[a,5,a,5])$ |
(%i48) | determinant(A); |
(%i49) | expand(determinant(A)); |
mogli smo determinantu spremiti u neku varijablu i zatim pojednostavniti taj izraz
(%i50) | izraz: determinant(A); |
(%i51) | expand(izraz); |
5. zadatak
(%i52) | A: matrix([a,a,a,a,a],[-2,a,a,a,a],[2,0,a,a,a],[-4,0,0,a,a],[4,0,0,0,a])$ |
(%i53) | determinant(A); |
6. zadatak
(%i54) | A: matrix([4+x,2,2],[7,x-1,2],[x+1,5,5]); |
(%i55) | det: determinant(A); |
pojednostavljenje izraza za determinantu
(%i56) | expand(det); |
rješavanje jednadžbe det(A)=0
(%i57) | solve(expand(det)=0,x); |
računanje izraza det(A^T)+5*det(A^3)-2*det(1/2*A) za x=-1
(%i58) | rezultat2: determinant(transpose(A))+5*determinant(A^^3)-2*determinant(1/2*A); |
(%i59) | expand(rezultat2); |
(%i60) | subst(-1,x,expand(rezultat2)); |
mogli smo najprije x=-1 uvrstiti u matricu A kako smo to radili i na seminarima
(%i61) | B: subst(-1,x,A); |
(%i62) | determinant(transpose(B))+5*determinant(B^^3)-2*determinant(1/2*B); |
7. zadatak
(%i63) | A: matrix([x-3,3,3,3],[3,2*x+3,3,3],[3,3,x-3,3],[3,3,3,2*x+3]); |
(%i64) | determinant(A); |
(%i65) | izraz: expand(determinant(A)); |
(%i66) | solve(izraz=0,x); |
4 Inverzna matrica
1. zadatak
(%i67) | A: matrix([2,1],[-5,4]); |
dva načina traženja inverza matrice
(%i68) | invert(A); |
(%i69) | A^^-1; |
Oprez: Dolje navedena naredba samo daje matricu inverznih elemenata, a ne inverznu matricu matrice A
(%i70) | A^-1; |
želimo li kod invertiranja matrice determinantu izlučiti izvan matrice
(%i74) |
detout: true$ doallmxops: false$ doscmxops: false$ invert(A); |
jednom kad smo varijablu detout postavili na true, tada samo mijenjanjem vrijednosti varijable doallmxops prelazimo iz jednog u drugi način pisanja inverza matrice
(%i75) | doallmxops: true$ |
(%i76) | invert(A); |
mogli smo i jednostavnije izlučiti determinantu izvan inverzne matrice tako da posebno odredimo adjunktu, a posebno determinantu
(%i77) | adjoint(A); |
(%i78) | determinant(A); |
2. zadatak
(%i79) | B: 2/3*matrix([3,5],[1,-3]); |
(%i80) | B^^-1; |
3. zadatak
(%i81) | E: matrix([-3,4,-5],[4,-3,2],[1,-3,4]); |
(%i82) | invert(E); |
(%i84) |
doallmxops: false$ invert(E); |
adjunkta i determinanta
(%i85) | adjoint(E); |
(%i86) | determinant(E); |
4. zadatak
(%i87) | A: 5/3*matrix([1,5,8],[2,3,-1],[4,-5,-9]); |
problem???
(%i88) | invert(A); |
rješenje problema: treba barem jednu od varijabli doallmxops ili doscmxops postaviti na true
(%i90) |
doscmxops: true$ A: 5/3*matrix([1,5,8],[2,3,-1],[4,-5,-9]); |
(%i91) | invert(A); |
želimo li determinatu izlučiti izvan matrice tada moramo varijablu doscmxops postaviti na false (jer smo ju maloprije gore postavili na true)
(%i93) |
doscmxops: false$ invert(A); |
(%i94) | doallmxops: true$ |
5. zadatak
(%i95) | [A: matrix([a,1,-1],[-1,1,1],[-2,0,0]),B: matrix([1,0,0],[0,a^2-1,1],[b,0,1])]; |
(%i96) | determinant(A); |
(%i97) | determinant(B); |
(%i98) | determinant(A.B); |
(%i99) | solve(determinant(A.B)=0,a); |
6. zadatak
(%i100) | A: matrix([0,1,-1,4],[2,1,0,1],[3,2,2,5],[-2,-4,-1,1]); |
(%i101) | invert(A); |
(%i103) |
doallmxops: false$ invert(A); |
(%i104) | doallmxops: true$ |
adjunkta i determinanta
(%i105) | adjoint(A); |
(%i106) | determinant(A); |
5 Rang matrice
(%i107) | A: matrix([2,6,-4,1,2],[4,-12,8,0,-4],[-3,9,2,-2,3]); |
(%i108) | rank(A); |
(%i109) | B: matrix([1,-2,0,4,3,0],[-2,0,5,2,6,1],[0,1,1,3,-2,-1],[-1,-2,5,6,9,1],[1,0,2,10,-1,-2]); |
(%i110) | rank(B); |
(%i111) | C: matrix([3,2,0,1],[1,-1,1,1],[4,2,-1,1],[0,0,2,1]); |
(%i112) | rank(C); |