Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

Matrius i Sistemes

with(LinearAlgebra);

 Escriure Matrius

Matrix ([[2,-1,1],[3,0,5]]);

A:= Matrix([[2,-1,1],[3,0,5]]);

 Escriure Vectors

Vector([2,1,-2]);

v:=Vector([2,1,-2]);

Per escriure en fila: Vector[row]([2,1,-2]);

Matrius i vectors especials

o Matriu identitat

IdentityMatrix(4);

o Matrius i vectors nuls

ZeroMatrix(3) (dimensión 3x3)

ZeroVector(4) (columna de 4)

o Matrius diagonals

DiagonalMatrix([3,2,1,-5]);

Cd := Vector([3,2,1,-5]);

DiagonalMatrix(cd);

Operacions:

 Transposta: Transpose(A);
 Suma: A + B; (matrius) v + w (vectors)

 Productes: 3 * A; 3 * v;

 Productes de matrius: A . C; (punt normal)

 Producte de matriu per vector:

E := Matrix([[1,2],[3,4]]);

v1:=Vector([2,3]);

E . v1;

 Potència d’una matriu: F^3;

 Inversa: G^(-1);

 Determinant: Determinant(K);

 Rang: Rank(J);

Ajuntar matrius i vectors

 Per ajuntar dues matrius una al costat de l'altra: <A|B>;


 I per ajuntar dues matrius una sota l'altra: <A,B>;
 També es poden ajuntar matrius i vectors:
v:= Vector([-1,9]);
<A|v>;

Obtenir coeficients de matrius i vectors

 Per obtenir els coeficients d'una matriu donada cal indicar la posició [fila , columna] de l'element
desitjat: A[1,2];

Submatrius

 Obtenir la submatriu formada per les files de la 2 a la 3 i les columnes 1 i 3: H[2..3,[1,3]];


 ... vol dir de la columna 2 fins a la 3
Reducció pel mètode de Gauss

 Per simplificar una matriu pel mètode de Gauss a una matriu esgalonada es pot fer servir la
instrucció GaussianElimination: GaussianElimination(K);

Producte escalar

 v:=Vector([2,1,-2]);
 w:=Vector([3,5,0]);
 DotProduct(v,w);

Longitud d'un vector

 Norm(v,2);
 L'argument 2 de la instrucció Norm indica quin tipus de norma s'utilitza. El 2 correspon a la
quadràtica que és la que s'utilitza normalment, ja que hi ha altres tipus de normes que no
s'estudien en aquest curs.

Angle entre vectors

 a:= VectorAngle(v,w);
 Per a conèixer el seu valor numèric (radiants): evalf(a);
 Per a conèixer el valor en graus cal fer la conversió: evalf(a*180/Pi);

Producte vectorial

 CrossProduct(v,w);

Obtenir les matrius a partir de les equacions

GenerateMatrix([3*x+4*t=26,-y+2*t=7,x+3*z=14,4*x-3*y+2*t=9],[x,y,z,t]);

Per assignar noms, cal fer-ho així, per la matriu i pel vector: A, v:= GenerateMatrix...

També es pot generar la matriu ampliada directament afegint l'opció augmented=true a l'ordre
GenerateMatrix:

GenerateMatrix([3*x+4*t=26,-y+2*t=7,x+3*z=14,4*x-3*y+2*t=9],[x,y,z,t], augmented=true );

Obtenir les equacions a partir de la matriu

s:= GenerateEquations(H,[x,y,z,t]);
Equacions per separat: eq1 := s[1];eq2 := s[2];eq3 := s[3];eq4 := s[4];

Resolució de sistemes lineals:

solve({3*x+4*t=26,-y+2*t=7,x+3*z=14,4*x-3*y+2*t=9}); {t = 5, x = 2, y = 3, z = 4}

LinearSolve(A,v); A partir de matriu, vector i només sistemes lineals. "x = 2, y = 3, z = 4, t = 5"

Per resoldre un sistema Ax = v, on x és el vector de les incògnites, cal fer x = "A-1 v`"

A^(-1).v;

Si es vol resoldre en funció d’una variable, no s’escriu la variable:

solve([x-2...],[x,y,z]) [x = 1 - t, y = -2 + t, z = 3*t]

subs(t=2,%); substituint t = 2 en el resultat anterior

You might also like