Vous êtes sur la page 1sur 39

Universidad Politcnica de Madrid

Ingeniera de Minas

COMANDOS BSICOS DE LGEBRA COMANDOS BSICOS DE LGEBRA LINEAL EN MAPLE LINEAL EN MAPLE
Prof. Carlos Conde Lzaro Prof. Arturo Hidalgo Lpez Prof. Alfredo Lpez Benito
Marzo, 2007
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Manipulacin de expresiones algebraicas Manipulacin de expresiones algebraicas


Se usan los comandos: [> simplify( expresin) simplifica

[>simplify(x*(x-5)**3+x**2-x*(x+4)*(x-3)/(x*(x-2)));
x 5 17x 4 + 106x 3 278x 2 + 249x + 12 x2

[> expand( expresin)

expande

[>expand(x*(x-5)**3+x**2-x*(x+4)*(x-3)/(x*(x-2)));
x2 x 12 x 15x + 76x 125x + x2 x2 x2
4 3 2

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Manipulacin de expresiones algebraicas Manipulacin de expresiones algebraicas


[> factor( expresin) factoriza

[> factor(x^3-6*x^2+12*x-8);
(x-2)3

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Manipulacin de expresiones algebraicas Manipulacin de expresiones algebraicas


[> solve( {ecuaciones},{incgnitas}) [> eq:=x^3-6*x^2+12*x-8=4: [> solve(eq);
2
2 3 1 3 1 1 3 1 3 + 2, - 2 + I 3 2 , - 2 I 3 2 3 2 2 2 2 2 2 2 2

resuelve ecs.

[> eq1:=x+y=0;eq2:=x+3*y=17; [> solve({eq1,eq2},{x,y});


17 17 , y= x = 2 2
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Manipulacin de expresiones algebraicas Manipulacin de expresiones algebraicas


[> fsolve( {ecuaciones},{incgnitas}) resuelve ecs. proporcionando soluciones reales

[> eq:=x^3-6*x^2+12*x-8=4: [> fsolve(eq);


3.58740105

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

CONJUNTOS EN MAPLE CONJUNTOS EN MAPLE


CONJUNTO: Grupo de elementos NO ORDENADOS En MAPLE se definen escribindolos entre llaves ( {...} ) y separando sus elementos por comas (,). Los elementos repetidos slo se consideran una vez. Pueden asignarse a un nombre. Ejemplo: [> C:={'manolo',x=2.4*x**2-y,A, B, aa, B, 2, 4, 7.14, Pi, 2}: [> C;
{2, 4, A, B, aa, , x=2.4x2-y, 7.14, manolo}
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

LISTAS EN MAPLE LISTAS EN MAPLE


LISTA: Grupo de elementos ORDENADOS En MAPLE se definen escribindolos entre corchetes ([...]) y separando sus elementos por comas (,). Los elementos repetidos se consideran tantas veces como aparezcan. Ejemplo: Pueden asignarse a un nombre.

[> L:=['manolo',x=2.4*x**2-y,A, B, aa, B, 2, 4, 7.14, Pi, 2]: [> L;


{manolo, x=2.4x2-y, A, B, aa, B, 2, 4, 7.14, , 2}
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

LISTAS EN MAPLE LISTAS EN MAPLE


Un elemento de una lista (o de un conjunto) puede referenciarse con el nombre de la lista (o del conjunto) seguido del ndice que en ella ocupa entre corchetes. EJEMPLO: Con el conjunto y la lista de las diapositivas anteriores se tiene que: [> C[1];C[2];
2 4

[> L[9];
7.14

[> C[1]+L[9];
9.14

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

VECTORES EN MAPLE VECTORES EN MAPLE


Definicin de vectores en Maple: Dimensionado de un vector de n componentes o [> nombre_vector:=array(1..n); [> nombre_vector:=array(1..n, [c1, ,cn]); Definicin de un vector con sus componentes Ejemplo: Para definir el vector v = (1.5, 2, - 3) [> v:=array(1..3,[1.5, 2, -3]); v[1] v[2] v[3]
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

VECTORES EN MAPLE VECTORES EN MAPLE


La instruccin array exige definir el lmite inferior de la dimensin, por lo que su uso es obligado cuando ste es diferente a 1. [> nombre_vector:=array(ind_nor..ind_mayor);

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

VECTORES EN MAPLE VECTORES EN MAPLE


Otra forma de definir vectores en Maple: Dimensionado de un vector de n componentes [> nombre_vector:=vector(n); o [> nombre_vector:=vector(n, [c1, , cn]); Definicin de un vector con sus componentes Ejemplo: Para definir el vector w = (-1, 2.5, - 3.3) [> w:=vector(3,[-1, 2.5, -3.3]); w[1] w[2] w[3]

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

VECTORES EN MAPLE VECTORES EN MAPLE


La instruccin vector toma lmite inferior de los subndices el valor 1, por lo que su uso es equivalente a: [> array(1..n);

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

VECTORES EN MAPLE VECTORES EN MAPLE


EJEMPLO: 1) Define en Maple el vector: a = (2. 3,e(2.x+1) ,sen(2.x),ln(18)) 2) Escribe las componentes a1, a2, a3. Solucin: 1)[> a:=array(1..4, [2*sqrt(3),exp(2*x+1),sin(2*x),ln(18)]); [> a:=vector(4, [2*sqrt(3),exp(2*x+1),sin(2*x),ln(18)]);
(2 x + 1) a := [ 2 3 , e , sin( 2 x ), ln( 18 ) ]

2) [> a[1]; a[2]; a[3];


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON VECTORES EN MAPLE OPERACIONES CON VECTORES EN MAPLE


Suma de vectores. Operador: + Resta de vectores . Operador: Producto escalar: Producto vectorial: dotprod ( ) o innerprod( )

crossprod ( )

Las dos ltimas operaciones requieren haber cargado la librera linalg mediante la instruccin: [> with(linalg):
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON VECTORES EN MAPLE OPERACIONES CON VECTORES EN MAPLE


Ejercicio: Sean los vectores: v = (1.5, 2, - 3) y w = (-1, 2.5, - 3.3) Se pide: 1. Definir los vectores v y w. 2. Calcular el producto escalar: (v, w) 3. Calcular el producto vectorial: (v-w) x (v+w)

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON VECTORES EN MAPLE OPERACIONES CON VECTORES EN MAPLE


1. Definicin de los vectores: [> v:=array(1..3,[1.5,2, -3]); [> w:=vector(3,[-1, 2.5, -3.3]); 2. Clculo del producto escalar [> pesc:=dotprod(v,w); Solucin pesc := 13.4

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON VECTORES EN MAPLE OPERACIONES CON VECTORES EN MAPLE


3. Clculo del producto vectorial [> pvect:=crossprod(v-w,v+w); Solucin pvect := [1.80, 15.90, 11.50]

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

MATRICES EN MAPLE MATRICES EN MAPLE


Dimensionado de una matriz de m filas y n columnas [> A:=array(1..m,1..n); o
[> A:=array(1..m,1..n,[[A11A1n],[A21,A2n],,[Am1,,Amn]);

Definicin de una matriz especificando sus elementos Ejemplo:


2 -7 4 A = 5 8 -11

[> A:=array(1..2,1..3,[[2,-7,4],[5,8,-11]]); A[1,2]


Departamento de Matemtica Aplicada y Mtodos Informticos

A[2,3]

Universidad Politcnica de Madrid

Ingeniera de Minas

MATRICES EN MAPLE MATRICES EN MAPLE


Otra forma de dimensionar una matriz: [> nombre_matriz:=matrix(m, n); La instruccin array exige definir el ndice inferior de las filas y columnas de la matriz, por lo que su uso es obligado cuando ste es diferente a 1.

> A:=array(ind_fila_inf..ind_fila_sup, ind_col_inf..ind_col_sup);

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

MATRICES EN MAPLE MATRICES EN MAPLE


Ejemplo (Matriz Cuadrada):

1 -2 0.5 0 2 A = 4 -1 11 9

[>A:=array(1..3,1..3, [[1,-2,0.5],[0,2,4],[-1,11,9]]);

O tambin
[> A:=matrix(3,3,[[1,-2,0.5],[0,2,4],[-1,11,9]]);

O tambin
[> A:=matrix(3, 3,[1,-2,0.5,0,2,4,-1,11,9]);
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

MATRICES EN MAPLE MATRICES EN MAPLE


Ejercicio: 1) Define en Maple la matriz:
ex 2 -0.5 1 A = 3 0 2 3 -7.5 9

2) Escribe las componentes A11, A23, A32:


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

MATRICES EN MAPLE MATRICES EN MAPLE


Solucin: 1) Cualquiera de las siguientes formas es vlida: [>A:=array(1..3,1..3, [[exp(x),2,-0.5],[3,0,1/2],[sqrt(3),-7.5,9]]); [>A:=matrix(3,3, [exp(x),2,-0.5],[3,0,1/2],[sqrt(3),-7.5,9]]); [>A:=matrix(3,3, [exp(x),2,-0.5,3,0,1/2,sqrt(3),-7.5,9]);

2) [> A[1,1]; A[2,3]; A[3,2];


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON MATRICES EN MAPLE OPERACIONES CON MATRICES EN MAPLE


Suma de matrices. El operador es: + Resta de matrices. El operador es: Producto de matrices. El operador es: &* Producto de escalar por matriz. El operador es: *

IMPORTANTE: EMPLEAR SIEMPRE evalm AL EVALUAR EXPRESIONES MATRICIALES.


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON MATRICES EN MAPLE OPERACIONES CON MATRICES EN MAPLE


Ejemplo. Sumar las matrices:
2 -7 4 ; M= 5 8 -11 1 2 3 N= 4 5 6

Almacenando el resultado en una matriz llamada SMAT

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON MATRICES EN MAPLE OPERACIONES CON MATRICES EN MAPLE


Solucin: Introduccin de las matrices
[> SMAT := array(1..2,1..3): (Recomendable) [> M := array(1..2,1..3,[[2,-7,4],[5,8,-11]]); [> N := array(1..2,1..3,[[1,2,3],[4,5,6]]);

Realizacin de la suma:
[> SMAT := evalm(M+N);

Resultado 3 -5 7 SMAT := 9 13 -5

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON MATRICES EN MAPLE OPERACIONES CON MATRICES EN MAPLE


Ejemplo. Producto de un escalar por una matriz Se considera la matriz:
0 1/2 -1 0 M = 3.2 0 4.1 -0.6 8.4 44 2 6 5 2 1

Obtener la matriz 7.M y almacenar el resultado en la matriz ML


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OPERACIONES CON MATRICES EN MAPLE OPERACIONES CON MATRICES EN MAPLE


Solucin: Introduccin de las matrices [> ML := matrix(5, 3): [> M := matrix(5, 3,[0, 1/2, sqrt(2), -1, 0, 6,3.2, 0, 5, 4.1, -0.6, 2, 8.4, 44, 1]); Resultado Realizacin del producto:
[> ML := evalm(7 * M);
0 -7 ML := 22.4 28.7 58.8 7 2 0 0 -4.2 308 7 2 42 35 14 7

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

OTRAS OPERACIONES CON MATRICES EN OTRAS OPERACIONES CON MATRICES EN MAPLE MAPLE
Inversa de una matriz: inverse ( ) Determinante de una matriz: det ( ) Traspuesta de una matriz: transpose ( ) Traza de una matriz: trace ( ) Rango de una matriz: rank ( ) Valores propios de una matriz: eigenvals ( ) Vectores propios de una matriz:
eigenvects ( )

Las operaciones anteriores requieren haber cargado la librera linalg .


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

LA LIBRERA linalg LA LIBRERA linalg


La librera linalg permite realizar muchas ms operaciones:
[> with(linalg);
[ BlockDiagonal, GramSchmidt , JordanBlock, LUdecomp , QRdecomp, Wronskian, addcol, addrow, adj , adjoint , angle, augment , backsub , band, basis, bezout, blockmatrix , charmat , charpoly, cholesky, col, coldim, colspace, colspan, companion, concat, cond, copyinto, crossprod, curl, definite, delcols, delrows, det, diag, diverge, dotprod, eigenvals, eigenvalues, eigenvectors, eigenvects, entermatrix , equal, exponential, extend , ffgausselim, fibonacci, forwardsub, frobenius, gausselim, gaussjord, geneqns, genmatrix , grad, hadamard, hermite, hessian, hilbert, htranspose, ihermite, indexfunc , innerprod, intbasis, inverse, ismith, issimilar, iszero, jacobian, jordan, kernel, laplacian, leastsqrs, linsolve, matadd , matrix , minor, minpoly, mulcol, mulrow, multiply, norm, normalize, nullspace, orthog, permanent , pivot , potential, randmatrix , randvector , rank , ratform , row, rowdim, rowspace, rowspan, rref, scalarmul, singularvals, smith, stackmatrix , submatrix , subvector , sumbasis, swapcol, swaprow, sylvester, toeplitz, trace, transpose, vandermonde , vecpotent , vectdim , vector , wronskian ]
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
Ejemplo: Dada la matriz
Calcular:

1 -3 3 3 -5 3 A = 6 -6 4

1. 2. 3. 4. 5. 6. 7.

Inversa de A Determinante de A Traspuesta de A Traza de A Rango de A Valores propios de A Vectores propios de A


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
Comenzamos.... [> restart:with(linalg): Definimos la matriz....
[> A := matrix(3,3,[1,-3,3,3.,-5,3,6,-6,4]);

Si queremos que Maple la escriba:


[> evalm(A); o bien: [> print(A);
1 3. 6 -3 -5 -6 3 3 4

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
1. Inversa de la matriz A:
[> A1 := array(1..4,1..4): [> A1 := inverse(A);

Resultado:
-0.1250000000 0.3750000000 0.7500000000 -0.3750000000 -0.8750000000 -0.7500000000 0.3750000000 0.3750000000 0.2500000000

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
2. Determinante de la matriz A:
[> DD := det(A);

Resultado:

DD := 16.
3. Traspuesta de la matriz A:
[> T := transpose(A);

Solucin:
1 AT := -3 3 3. -5 3 6 -6 4

Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
4. Traza de la matriz A:
[> tr := trace(A);

Resultado:
tr := 0

5. Rango de la matriz A:
[> R := rank(A);

Resultado:

R := 3
Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
6. Autovalores de la matriz A: [> lambda := eigenvals(A); 7. Autovectores de la matriz A:
[> vp := eigenvects(A);
Que se interpreta: vp[1] (multiplicidad algebraica doble)

Resultado:
:= 4., -2. , -2.

[ -2.00000 , 2, { [ 0.500002, 1.50000, 1.00001 ], [ -0.559017 , 0.559017, 1.11804 ] } ]


vp[2]

[ 4.00000, 1, { [ 0.447213, 0.447214, 0.894428 ] } ]


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
Sean los vectores: v (1.5, 2, - 3) y w (-1, 2.5, - 3.3) y la matriz: 1 2 3 4 5 6 A = 7 8 9

Se pide: 1. Calcular el producto escalar: (v, w) 2. Calcular el producto vectorial: v x w 3. Calcular: v A


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
Definicin de los vectores y la matriz:
[> v:=array(1..3,[1.5,2, -3]); [> w:=vector(3,[-1, 2.5, -3.3]); [> A:=matrix(3,3,[[1, 2, 3],[4, 5, 6],[7, 8, 9]]);

1. Clculo del producto escalar


[> pesc:=dotprod(v,w);

Solucin pesc := 13.4


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Ejercicios Ejercicios
2. Clculo del producto vectorial
[> pvect:=crossprod(v,w);

Solucin pvect := [0.9, 9.95, 5.75] 3. Clculo de v A


[> matv:=evalm(v&*A);

Solucin matv := [-11.5, -11, -10.5]

(que, obviamente, es un vector)


Departamento de Matemtica Aplicada y Mtodos Informticos

Universidad Politcnica de Madrid

Ingeniera de Minas

Departamento de Matemtica Aplicada y Mtodos Informticos

Vous aimerez peut-être aussi