L3 Alg effective TP 3

AuthorFX D
Date2016-12-13T14:05:14
Projectef241cce-6ed3-4b3c-a245-894d31a4f1ed
LocationTP3.sagews
Original fileTP3.sagews

L3 Alg effective TP 3

17 octobre 2016

Opérations sur les lignes et les colonnes
'm'+str(1)
'm1'
p=3;q=4
m=var(['m'+str(i)+str(j) for i in [1..p] for j in [1..q]])
m[4*(2-1)+(1-1)]
m21
A=matrix(p,m)
A
[m11 m12 m13 m14] [m21 m22 m23 m24] [m31 m32 m33 m34]
2*A
[2*m11 2*m12 2*m13 2*m14] [2*m21 2*m22 2*m23 2*m24] [2*m31 2*m32 2*m33 2*m34]
def E(n,i,j):    return(matrix(ZZ,n,n,{(i-1,j-1):1}))
E(3,1,2)
[0 1 0] [0 0 0] [0 0 0]
E(3,1,2)*M
[m21 m22 m23 m24] [ 0 0 0 0] [ 0 0 0 0]
def I(n):    return(identity_matrix(n))
(I(3)+2*E(3,1,2))*A
[m11 + 2*m21 m12 + 2*m22 m13 + 2*m23 m14 + 2*m24] [ m21 m22 m23 m24] [ m31 m32 m33 m34]
A*E(4,2,3)
[ 0 0 m12 0] [ 0 0 m22 0] [ 0 0 m32 0]
A*(I(4)+2*E(4,2,3))
[ m11 m12 2*m12 + m13 m14] [ m21 m22 2*m22 + m23 m24] [ m31 m32 2*m32 + m33 m34]
(I(3)+2*E(3,1,2))*(I(3)-2*E(3,1,2))
[1 0 0] [0 1 0] [0 0 1]
def M(n,i,j,x):    return(I(n)+x*E(n,i,j))
M(2,1,2,1)
[1 1] [0 1]
def D(l):    n=len(l)    D=matrix(ZZ,n,n,0)    for i in [0..n-1]:        D[i,i]=l[i]    return(D)
D([1,-1])
[ 1 0] [ 0 -1]
D([1,-1])*M(2,1,2,1)*M(2,2,1,-1)*M(2,1,2,1)
[0 1] [1 0]
def P(n,i,j):    P=I(n)    P[i-1,i-1]=0    P[i-1,j-1]=1    P[j-1,i-1]=1    P[j-1,j-1]=0    return(P)
P(3,1,3)
[0 0 1] [0 1 0] [1 0 0]
P(3,1,2)*A
[m21 m22 m23 m24] [m11 m12 m13 m14] [m31 m32 m33 m34]
A*P(4,2,4)
[m11 m14 m13 m12] [m21 m24 m23 m22] [m31 m34 m33 m32]
B=matrix(ZZ,1,3,[30,42,105]);B #Cf Feuille de TD 4 ex 2.
[ 30 42 105]
gcd(gcd(30,42),105)
3
BB=1/3*B;BB
[10 14 35]
BB*M(3,1,2,-1) # col2 remplacée par col2 - col1
[10 4 35]
BB*M(3,1,2,-1)*M(3,2,1,-2) #col1 de la nouvelle matrice remplacée par col1 -2col2
[ 2 4 35]
BB*M(3,1,2,-1)*M(3,2,1,-2)*M(3,1,2,-2) #etc.
[ 2 0 35]
BB*M(3,1,2,-1)*M(3,2,1,-2)*M(3,1,2,-2)*M(3,1,3,-17)
[2 0 1]
BB*M(3,1,2,-1)*M(3,2,1,-2)*M(3,1,2,-2)*M(3,1,3,-17)*M(3,3,1,-2)
[0 0 1]
BB*M(3,1,2,-1)*M(3,2,1,-2)*M(3,1,2,-2)*M(3,1,3,-17)*M(3,3,1,-2)*P(3,1,3) #échange de la col3 avec la col1
[1 0 0]
PP=M(3,1,2,-1)*M(3,2,1,-2)*M(3,1,2,-2)*M(3,1,3,-17)*M(3,3,1,-2)*P(3,1,3);PP #matrice de changement de base
[-51 -7 105] [ 34 5 -70] [ 1 0 -2]
PP*vector([1,0,0])
(-51, 34, 1)
B*PP*vector([1,0,0]) # on a bien obtenu une relation de Bezout !
(3)
B*PP*vector([0,1,0]) # le 1er vecteur d'une base de solutions de l'équation homogène
(0)
B*PP*vector([0,0,1]) # le 2ème vecteur
(0)
a=[-1,2,0,0,3];a
[-1, 2, 0, 0, 3]
min(abs(x) for x in a if x!=0 )
1
[x for x in a if x!=0]
[1, 2, 3]
A
[m11 m12 m13 m14] [m21 m22 m23 m24] [m31 m32 m33 m34]
[A[i][j] for i in [0..2] for j in [0..3]]
[m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34]

Taille d’une matrice

Faire une recherche sur le web telle celle-ci ou bien lire la feuille de référence Sage - algèbre linéaire

A.nrows()
3
A.ncols()
4
A[:,1]=A[:,1]-2*A[:,3];A
[ m11 m12 - 2*m14 m13 m14] [ m21 m22 - 2*m24 m23 m24] [ m31 m32 - 2*m34 m33 m34]
A[0,:]=A[0,:]+A[2,:]
show(A)
$\displaystyle \left(\begin{array}{rrrr} m_{11} + m_{31} & m_{12} - 2 \, m_{14} + m_{32} - 2 \, m_{34} & m_{13} + m_{33} & m_{14} + m_{34} \\ m_{21} & m_{22} - 2 \, m_{24} & m_{23} & m_{24} \\ m_{31} & m_{32} - 2 \, m_{34} & m_{33} & m_{34} \end{array}\right)$