40
ALGEBRA Pr´ actica 1 1 o A–Ingenier´ ıaInform´atica N. Boal, F.J. Gaspar, M.L. Sein-Echaluce Una introducci´on a MATLAB 1 Generalidades MATLAB (MATrix LABoratory) es un paquete interactivo basado en matrices que permite la realizaci´on de c´alculos cient´ ıficos (aritm´ eticos y simb´ olicos), es f´acil de usar y , en prin- cipio, no requiere el conocimiento de un lenguaje de programaci´on. Este sistema ofrece excelentes posibilidades gr´aficas (en dos y tres dimensiones), tiene gran cantidad de fun- ciones predefinidas y adem´as permite al usuario crear sus propias funciones de modo que se aumenta la aplicabilidad del sistema. Destacar tambi´ en que MATLAB posee unas toolboxes (que se adquieren por separado) con las que se pueden resolver problemas espec´ ıficos como, por ejemplo, procesado de se˜ nales, simulaci´ on de sistemas din´amicos, redes neuronales, etc. Otra de las posibilidades que ofrece este programa es la de interaccionar con otros lenguajes de programaci´on como son C o Fortran. Antes de empezar a trabajar con MATLAB conviene dar unas indicaciones de car´acter general: >>” es el prompt de MATLAB e indica que est´a listo para aceptar ´ordenes. Hay que respetar la sintaxis utilizada por el programa y tener en cuenta que MATLAB, por defecto, distingue entre may´ usculas y min´ usculas. Para ejecutar una orden basta pulsar la tecla ENTER. Una sentencia termina con un retorno de carro. Si ocupa m´as de una l´ ınea se puede continuar en la siguiente, para ello basta poner tres punto suspensivos (...) y pulsar retorno de carro. Terminar una orden con punto y coma (;) indica que no queremos visualizar en pantalla el resultado de una expresi´on. Se pueden escribir varias sentencias en la misma l´ ınea separadas por una coma o por un punto y coma. >> diary nombre fichero.txt: permite grabar en un fichero texto la sesi´on de trabajo. Con diary off y diary on desactivamos y activamos la grabaci´on en el fichero. >> help nombre funcion: para consultar cualquier funci´on del programa. >> clear: elimina todas las variables no permanentes. Es posible borrar ´ unicamente algunas de las variables del espacio de trabajo con la orden clear nombre variable. >> who: visualiza las variables creadas en la sesi´on actual de trabajo. (>> whos da una informaci´onm´asamplia). % indica que lo que sigue es un comentario y no se ha de ejecutar. 1

Una introducción a MATLAB

  • Upload
    lydan

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Una introducción a MATLAB

ALGEBRA Practica 1

1o A–Ingenierıa Informatica N. Boal, F.J. Gaspar, M.L. Sein-Echaluce

Una introduccion a MATLAB

1 Generalidades

MATLAB (MATrix LABoratory) es un paquete interactivo basado en matrices que permitela realizacion de calculos cientıficos (aritmeticos y simbolicos), es facil de usar y , en prin-cipio, no requiere el conocimiento de un lenguaje de programacion. Este sistema ofreceexcelentes posibilidades graficas (en dos y tres dimensiones), tiene gran cantidad de fun-ciones predefinidas y ademas permite al usuario crear sus propias funciones de modo que seaumenta la aplicabilidad del sistema. Destacar tambien que MATLAB posee unas toolboxes(que se adquieren por separado) con las que se pueden resolver problemas especıficos como,por ejemplo, procesado de senales, simulacion de sistemas dinamicos, redes neuronales, etc.Otra de las posibilidades que ofrece este programa es la de interaccionar con otros lenguajesde programacion como son C o Fortran.

Antes de empezar a trabajar con MATLAB conviene dar unas indicaciones de caractergeneral:

• “>>” es el prompt de MATLAB e indica que esta listo para aceptar ordenes.

• Hay que respetar la sintaxis utilizada por el programa y tener en cuenta que MATLAB,por defecto, distingue entre mayusculas y minusculas.

• Para ejecutar una orden basta pulsar la tecla ENTER.

• Una sentencia termina con un retorno de carro. Si ocupa mas de una lınea se puedecontinuar en la siguiente, para ello basta poner tres punto suspensivos (...) y pulsar retornode carro.

• Terminar una orden con punto y coma (;) indica que no queremos visualizar en pantallael resultado de una expresion.

• Se pueden escribir varias sentencias en la misma lınea separadas por una coma o por unpunto y coma.

• >> diary nombre fichero.txt: permite grabar en un fichero texto la sesion de trabajo.Con diary off y diary on desactivamos y activamos la grabacion en el fichero.

• >> help nombre funcion: para consultar cualquier funcion del programa.

• >> clear: elimina todas las variables no permanentes. Es posible borrar unicamentealgunas de las variables del espacio de trabajo con la orden clear nombre variable.

• >> who: visualiza las variables creadas en la sesion actual de trabajo. (>> whos da unainformacion mas amplia).

• % indica que lo que sigue es un comentario y no se ha de ejecutar.

1

Page 2: Una introducción a MATLAB

2 Uso de matrices

MATLAB trabaja esencialmente con matrices de numeros reales o complejos. Las matrices1×1 las interpreta como escalares y las matrices fila o columna como vectores. A continuacionpresentamos unas instrucciones para el manejo basico de matrices.

• Definicion de matrices y submatrices

>> A=[1 2 3; 4 5 6] % Los espacios en blanco se pueden sustituir por comas

>> A(1,2) % elemento de la primera fila y segunda columna

>> f1=A(1,:) % la primera fila de A, la primera columna: c1=A(:,1)

Ejercicio. Define una matriz B de tamano 3×3.

Ejercicio. Define un vector v que sea igual a la tercera fila de B.

Ejercicio. ¿Que hace?

>> B1=B([1,3],:)

Ejercicio. Ejecuta las sentencias

>> [A;B]

>> [A B]

¿Que ocurre en cada caso?

• Operaciones con matrices

>> A+B % suma de matrices; la resta serıa A-B

>> 3*A % producto de la matriz A por el escalar 3

>> A*B % producto de matrices

>> A.*B % producto elemento a elemento.

Nota. Si las operaciones se realizan con matrices de tamano incompatible se obtiene unmensaje de error.

Ejercicio. Introduce la matriz

A =

1 2 5 7−1 2 1 −2

4 6 8 0

.

Calcula:

a) a13 + a32,

b) tres veces la primera columna de A,

c) dos veces la segunda columna mas tres veces la cuarta,

d) A.*A y A*A explica cual es el resultado en cada caso.

2

Page 3: Una introducción a MATLAB

Ejercicio. Dadas las matrices

A =

1 2 34 5 67 8 9

, B =

1 11 20 3

, C =

(1 1 1 12 3 1 2

), D =

1 0 0 00 1 0 00 0 1 0

calcula (si es posible):

a) AB, b) 3A−D, c) B2, d) ABC + 2D.

• Funciones matriciales

>> inv(A) % inversa de una matriz regular

>> det(A) % determinante de una matriz cuadrada

>> A’ % traspuesta de A

>> rank(A) % rango de A

Ejercicio. Considera la matriz A del ejercicio anterior y calcula A′, |A|, rang A. ¿Que ocurresi calculamos con MATLAB A−1?

• Funciones para construir matrices especiales

>> eye(n) % matriz identidad

>> zeros(m,n) % matriz nula de tamano m× n

>> ones(m,n) % matriz de unos de tamano m× n

Ejercicio. Considera las matrices

A1 =

(2 13 5

), A2 =

1 2 −23 1 10 1 3

.

a) Construye la matriz diagonal por bloques

A =

(A1 OO A2

).

b) Comprueba que A1 y A2 son regulares.

c) Sin hacer ningun calculo con MATLAB contesta de forma razonada a las siguientes pre-guntas:

i) ¿La matriz A es regular?

ii) ¿Cual es su inversa?

d) Utiliza MATLAB para comprobar si has contestado bien a las preguntas anteriores.

e) Comprueba que |A| = |A1| |A2|.

3

Page 4: Una introducción a MATLAB

3 Una aplicacion de las matrices

Con frecuencia los gobiernos, las agencias nacionales de seguridad y las empresas se interesanen la transmision de mensajes codificados que sean difıciles de descifrar por otros, en caso deser interceptados, pero que se decodifiquen con facilidad por quienes lo escriben. Hay muchasformas interesantes de cifrar o codificar un mensaje, y en su mayor parte usan la teorıa denumeros o el algebra lineal. A continuacion describimos uno que es eficaz, en especial cuandose usa una matriz regular de gran tamano.

Sea M una matriz regular, solo conocida por quienes la transmiten y quienes la reciben.Por ejemplo,

M =(−3 4−1 2

)

Supongamos que se desea codificar el mensaje

AT A C A R A H O R A

Reemplazamos cada letra por el numero que le corresponde a su posicion en el alfabeto(un espacio se representa por 0). Con lo que el mensaje se ha convertido en la sucesion denumeros

{1, 21, 1, 3, 1, 19, 0, 1, 8, 16, 19, 1}que agrupamos de dos en dos para formar los vectores columna

(121

),

(13

),

(119

),

(01

),

(816

),

(191

).

Multiplicamos esos vectores a izquierda por M y se obtienen unos nuevos vectores columnaque nos dan la siguiente lista de numeros

{81, 41, 9, 5, 73, 37, 4, 2, 40, 24, −53, −17}Este es el mensaje cifrado. Para decodificarlo es necesario hallar la inversa de la matriz My multiplicarla por los vectores codificados para obtener los numeros originales.

Ejercicio. Basado en el metodo anterior, decodifica el mensaje dado por los numeros

{−2,−18, 19, 0,−1, 1,−8,−20, 20,−6,−8, 15, 0,−4, 9, 26, 10,−5, 10, 15,−5, 13,−3, 6,−4, 2, 7}conocida la matriz

M−1 =

1 0 10 1 10 1 2

.

Ejercicio. Dadas A y B matrices de Mn(IK) razona si son ciertas o falsas las siguientesafirmaciones.

a) (A + B)2 = A2 + 2AB + B2.

b) (A + B)(A−B) = A2 −B2.

c) Si AX = BX para todo X ∈Mn×1(IK) se cumple A = B.

4

Page 5: Una introducción a MATLAB

ALGEBRA Practica 2

1o A–Ingenierıa Informatica N. Boal, M.L. Sein-Echaluce

Matrices y sistemas lineales

4 Matrices elementales

En esta seccion vamos a crear funciones en MATLAB que nos permitan construir matriceselementales. Para ello, en primer lugar, abrimos un m-fichero nuevo:

File → New → m− file

y en este fichero en blanco copiamos:

function P=pij(i,j,n) P=eye(n); P(i,i)=0; P(j,j)=0; P(i,j)=1;

P(j,i)=1; return

Guardamos el fichero con el mismo nombre que le hemos dado a la funcion, es decir,

File → Save as : pij.m

Ya tenemos la funcion que nos genera las matrices elementales Pij. Comprueba que funcionacorrectamente con los siguientes ejemplos y antes de ejecutar las ordenes piensa cual debeser el resultado que se debe obtener.

>> pij(1,2,3)

>> A=[1 2 3;4 5 6; 7 8 9]

>> pij(1,2,3)*A

>> A*pij(2,3,3)

Completa el fichero pijt(i,j,t,m) de forma que con la funcion que en el se define seconstruyan las matrices elementales Pij(t).

function P=pijt(i,j,t,n) P=eye(n); P(i,j)=.......... return

Comprueba que esta funcion esta bien definida ejecutando las siguientes ordenes en MAT-LAB; al igual que antes piensa antes de ejecutarlas cual es el resultado que se debe obtener.

>> pijt(1,2,3,3)

>> pijt(2,1,-1,3)*A

>> A*pijt(2,1,-1,3)

>> A*pijt(1,2,-1,3)

>> pijt(2,3,-1,5)*A

5

Page 6: Una introducción a MATLAB

Procede de forma analoga a los casos anteriores y define una funcion en MATLAB de laforma qis(i,s,n) con la que se construyan las matrices Qi(s). Comprueba que lo has hechobien ejecutando los siguientes ejemplos:

>> qis(3,-4,5)

>> qis(3,-4,3)*A

>> A*qis(1,2,3)

5 Calculo de la inversa

En esta seccion vamos a utilizar las matrices elementales para calcular la inversa de unamatriz regular. Termina el siguiente ejemplo:

>> A=[3 -2 1; 1 1 3; -1 2 1]

>> A1=[A eye(3)]

>> A2=pij(1,2,3)*A1

>> A3=pijt(2,1,-3,3)*A2

>> %continua el ejercicio

Comprueba que lo has hecho bien utilizando la orden en MATLAB inv(A).

Nota: Tambien podrıamos haber calculado A−1 haciendo operaciones elementales por colum-nas.

6 Eliminacion gaussiana

Considera el sistema lineal Ax = b. La tecnica de eliminacion de Gauss consiste en realizaroperaciones elementales sobre las ecuaciones de este sistema de forma que se obtenga unsistema equivalente

Ux = y

donde la matriz de coeficientes U es triangular superior. Si utilizamos notacion matricial,la idea es la hacer operaciones elementales sobre la matriz ampliada hasta “triangular” lamatriz de coeficientes, es decir,

(A|b) − operaciones elemetales → (U |y)

con U matriz triangular superior.

Trasforma el sistema

1 −2 11 1 3−1 2 1

x1

x2

x3

=

−152

en un sistema triangular superior equivalente.

6

Page 7: Una introducción a MATLAB

7 Factorizacion LU

Sea A una matriz regular. La factorizacion LU consiste en descomponer la matriz A comoproducto de dos matrices

A = LU

donde L es triangular inferior con elementos diagonales lii = 1 y U es una matriz triangularsuperior.

Esta factorizacion no siempre existe, el siguiente resultado nos da una condicion suficientepara la existencia de esta factorizacion.

Teorema. Sea A una matriz regular tal que las n submatrices

Ak =

a11 . . . a1k...

. . ....

ak1 . . . akk

, k = 1, . . . , n

son todas regulares. Entonces existen una unica matriz triangular inferior L con lii = 1 yuna unica matriz U triangular superior tales que A = LU.

En la practica, se comprueba que esta factorizacion existe cuando es posible aplicar latecnica de eliminacion de Gauss sin intercambio de filas, de hecho, la factorizacion LU sepuede interpretar como “la version matricial” de la eliminacion gaussiana (sin intercambiode filas). La matriz U es la matriz triangular superior obtenida tras aplicar el proceso deeliminacion de Gauss a la matriz A. De modo que, si denotamos por P1, P2, . . . Pr a lasmatrices elementales utilizadas en el proceso de triangulacion de la matriz A, se tiene que

Pr . . . P2P1A = U,

luegoA = (P−1

1 )(P−12 ) . . . (P−1

r )U.

Si cada una de estas matrices elementales utilizadas son del tipo Pij(t) con i > j (triangularesinferiores con 1’s en la diagonal), entonces

L = (P−11 )(P−1

2 ) . . . (P−1r ).

Recuerda: (Pij(t))−1 = Pij(−t).

Completa el siguiente ejemplo.

>> A=[1 -2 1; 1 1 3; -1 2 1]

A =

1 -2 1

1 1 3

-1 2 1

>> A1=pijt(2,1,-1,3)*A

A1 =

7

Page 8: Una introducción a MATLAB

1 -2 1

0 3 2

-1 2 1

>> % continua

>> A2=...

¿Cual es la factorizacion LU de A?

Observa que la matriz L es tal que

L =

1 0 . . . 0l21 1 . . . 0...

.... . . 0

ln1 ln2 . . . 1

donde los elementos lij con 1 ≤ j < i ≤ n son los opuestos de los multiplicadores utilizadospara “conseguir” un cero en el elemento aij.

Como ya se ha comentado, no siempre existe la factorizacion LU de una matriz regularA, sin embargo siempre es posible reordenar sus filas de modo que la matriz “reordenada”B = PA (P matriz permutacion) sı admite factorizacion LU.

Si A admite factorizacion LU, podemos utilizar dicha descomposicion para resolver elsistema Ax = b, ası,

LUx = b ⇒{

Ly = b (sistema triangular inferior),Ux = y (sistema triangular superior).

Esta forma de proceder es mas practica (desde el punto de vista computacional) cuando setienen que resolver varios sistemas con la misma matriz de coeficientes y distintos terminosindependientes. En este caso, solo sera necesario realizar una sola vez la factorizacion LU yluego resolver una coleccion de sistemas triangulares.

8 Ejercicios propuestos

1. Considera el sistema de ecuaciones lineales

1 −1 2 1−2 3 −4 1−2 3 −4 21 0 1 1

x1

x2

x3

x4

=

3−2−13

.

(a) Resuelve el sistema de ecuaciones lineales utilizando el metodo de Gauss.

(b) Utiliza las matrices elementales para realizar la factorizacion LU de la matriz decoeficientes (reordenando, previamente, sus filas si fuera necesario).

(c) Usa convenientemente esta factorizacion para obtener la solucion del sistema ypara calcular el determinante de la matriz de coeficientes.

8

Page 9: Una introducción a MATLAB

2. Discute si los siguientes sistemas de ecuaciones son compatibles (determinado o inde-terminado) o incompatibles.

a)

1 −1 2−2 3 −4−1 2 −2

x1

x2

x3

=

2−3−1

. b)

1 0 1−2 3 −4−1 2 −2

x1

x2

x3

=

211

.

c)

−2 1 11 −2 11 1 −2

x1

x2

x3

=

000

.

3. Determina la factorizacion LU de la matriz

A =

4 2 12 5 21 2 4

.

9 Algoritmo de eliminacion gaussiana

El objetivo de esta seccion es el de construir un m-fichero en el cual programemos el metodode eliminacion de Gauss con estrategia de pivote parcial. A continuacion se detallan unaslıneas de codigo del metodo sin intercambio de filas.

elim gauss.m

function x=elim_gauss(A,b)

% Resolvemos el sistema Ax=b utilizando eliminacion

% gaussiana, sin intercambiar filas.

%

% Argumentos de entrada: A matriz de coeficientes

% b trrmino independiente (vector columna)

%

% Argumentos de salida: x vector solucion

n=size(A,1);

Ab=[A,b]; % matriz ampliada

for i=1:n

% Hacemos ceros por debajo de la diagonal principal

for j=i+1:n

mult=Ab(j,i)/Ab(i,i);

Ab(j,:)=Ab(j,:)-mult*Ab(i,:);

end

end

U=Ab(:,1:n); % estas asignaciones en realidad no son necesarias;

y=Ab(:,n+1); % se puede seguir trabajando con la matriz Ab

9

Page 10: Una introducción a MATLAB

x=zeros(n,1); % es conveniente dimensionar los vectores

% Ahora resolvemos el sistema triangular superior U*x=y

x(n)=y(n)/U(n,n); for i=n-1:-1:1

suma=U(i,i+1:n)*x(i+1:n);

x(i)=(y(i)-suma)/U(i,i);

end

Modifica el programa anterior de forma que se incorpore la estrategia de pivote parcialy se chequee si la matriz de coeficientes es o no inversible. Para cada valor del ındice i laestructura sera la siguiente:

[pivote,j]=max(abs(Ab(i:n,i))); if pivote==0.

error(’matriz no inversible’ )

return % salimos del programa

end fila=i+j-1;

if fila~=i % cambiamos filas

aux=Ab(fila,:);

Ab(fila,:)=Ab(i,:);

Ab(i,:)=aux;

end

Llama a la nueva funcion elim gaus parcial para distinguirla de la anterior y compruebaque tu programa funciona correctamente resolviendo los sistemas

a)

1 2 3 42 4 6 72 −1 6 81 3 4 2

x1

x2

x3

x4

=

10191510

, b)

1 2 3 42 4 6 82 −1 6 81 3 4 2

x1

x2

x3

x4

=

10191510

.

10

Page 11: Una introducción a MATLAB

ALGEBRA Practica 3

1o A–Ingenierıa Informatica N. Boal, M.L. Sein-Echaluce

Espacios Vectoriales

10 Familias equivalentes de vectores

Recuerda: Sea V un espacio vectorial sobre IK y consideramos dos familias de vectores de Vque denotamos por {ai}i∈I y {bj}j∈J , respectivamente. Estas familias se dicen equivalentessi

IK〈{ai}i∈I〉 = IK〈{bj}j∈J〉.

Ejercicio. A partir de la familia de vectores de IR4 {a1, a2, a3, a4, a5} determina una familiaequivalente y libre.

>> a1=[2 -1 0 3];a2=[-1 -4 12 -15];a3=[1 1 -4 6];a4=[-5 9 6 8];a5=[-3 4 5 1];

>> A=[a1;a2;a3;a4;a5]

A =

2 -1 0 3

-1 -4 12 -15

1 1 -4 6

-5 9 6 8

-3 4 5 1

>> A1=pijt(5,1,3/2,5)*pijt(4,1,5/2,5)*pijt(3,1,-1/2,5)*pijt(2,1,1/2,5)*A

A1 =

2 -1 0 3

0 -9/2 12 -27/2

0 3/2 -4 9/2

0 13/2 6 31/2

0 5/2 5 11/2

>> %termina el ejercicio

Considera los subespacios S = IR〈{a1, a2, a3, a4, a5}〉, T1 = IR〈{(1, 1, 1, 1), (0, 0, 0, 1)}〉. En-tonces:

1. Estudia si S y T1 son suplementarios respecto de IR4.

2. Determina un nuevo subespacio T2 que sea suplementario a S respecto de IR4.

3. A partir de las bases de S y T2 construye una base de IR4.

11

Page 12: Una introducción a MATLAB

11 Cambio de base

Ejercicio. Considera la base de IR4

{b1, b2, b3, b4} = {(2,−1, 0, 3), (0,−9/2, 12,−27/2), (0, 0, 35/3,−2), (0, 0, 0, 1)}y los vectores u = (2,−1, 0, 4) y v = (0,−18, 48,−54). Calcula las coordenadas de u y vrespecto de la base {b1, b2, b3, b4}.Nota. La orden >>A\b nos proporciona la solucion del sistema lineal Ax = b.

Recuerda: Sean {v1, · · · , vn} y {v1, · · · , vn} dos bases de V . Como los vectores vi estan enV , tendran unas coordenadas respecto de la base {vi}, es decir

v1 = λ11 v1 + · · ·+ λn1 vn

...

vn = λ1n v1 + · · ·+ λnn vn

Matricialmente

( v1 | · · · | vn ) = ( v1 | · · · | vn )

λ11 | | λ1n... | · · · | ...

λn1 | | λnn

equivalentemente:(vj)

t = (vi)tP

siendo P la matriz regular cuyas columna i-esima esta formada por las coordenadas de vi

respecto de la base {vi}ni=1 y que se denomina matriz de cambio de base.

Sean v ∈ V y denotamos por:

X = (x1, · · · , xn)t coordenadas de v respecto de la base {vi}X = (x1, · · · , xn)t coordenadas de v respecto de la base {vj}

Como (vj)t = (vi)

tP (P matriz de cambio de base), se tiene que

v = x1v1 + · · ·+ xnvn = (vi)tX

v = x1v1 + · · ·+ xnvn = (vi)tX = (vi)

tPX

}=⇒ X = PX

(relacion entre las coordenadas de ambas bases).

Ejercicio. Halla la matriz de cambio de base entre la base canonica de IR4 y la nueva base{b1, b2, b3, b4}.

Ejercicio. Utiliza la matriz de cambio de base calculada en el apartado anterior para com-probar que has calculado bien las coordenadas de u y v respecto de la base {b1, b2, b3, b4}.

Ejercicio. Considera V = M2(IR) y la base

B1 =

(2 −10 3

), B2 =

(0 −9/212 −27/2

), B3 =

(0 0

35/3 −2

), B4 =

(0 00 1

).

12

Page 13: Una introducción a MATLAB

Justifica (haciendo uso del isomorfismo coordenado) cuales han de ser las coordenadas de lamatriz

B =

(2 −10 4

)

respecto de la base {B1, B2, B3, B4} y cual sera la matriz de cambio de base entre la basecanonica de M2(IR) y la nueva base {B1, B2, B3, B4}.

12 Ejercicios propuestos

1. En cada uno de los siguientes casos determina una base de S subespacio de V :

(a) V = IR5 y S = IR < {(1,−1, 0, 2, 0), (0, 0,−1, 0, 1), (1,−1, 1, 1, 0), (0, 0, 1, 1, 1)} >

(b) V = IR3[x] y S = IR < { (x2 − 1), (3x2 + 1), x3, (2x3 + 4x2) } > .

(c) V = M2(IR) y S = IR < {A1, A2, A3, A4} >, donde

A1 =

(1 10 1

), A2 =

(−1 20 −1

), A3 =

(0 10 0

), A4 =

(1 11 1

).

2. Considera el polinomio p(x) = 5x4 + 6x3 − 4x + 2 ∈ IR4[x].

(a) Halla las coordenadas de p(x) respecto de las bases

B1 = { 1, (x− 2), (x− 2)2, (x− 2)3, (x− 2)4 },B2 = { 1, x, x(x− 1), x(x− 1)(x− 2), x(x− 1)(x− 2)(x− 3) }.

(b) Determina las matrices de cambio de bases entre:

• la base canonica de IR4[x] y B1 (denota a esta matriz por P1),

• la base canonica de IR4[x] y B2 (denota a esta matriz por P2).

(c) Deduce, en terminos de las matrices P1 y P2, la matriz de cambio de base entrelas bases B1 y B2.

3. Considera la familia de matrices B = {A1, A2, A3, A4} con

A1 =

(1 10 1

), A2 =

(−1 20 0

), A3 =

(0 10 0

), A4 =

(1 11 1

).

(a) Comprueba que B = {A1, A2, A3, A4} es una base de M2(IR).

(b) Calcula las coordenadas (respecto de la base B) de las matrices

C1 =

(2 7−3 1

), C2 =

(1 11 1

), C3 =

(1 20 1

).

4. Sea V = IR3 y se consideran los subespacios vectoriales:

S = IR < {(1, 2, 1), (1, 3, 2)} >, T = IR < {(1, 1, 0), (3, 8, 5), (2, 7, 5)} > .

Estudia si S = T.

13

Page 14: Una introducción a MATLAB

5. Determina todos los valores de a para los cuales {(a2, 0, 1), (0, a, 2), (1, 0, 1)} es unabase de IR3. Nota: define a como una variable simbolica, esto es,

>> syms a

>> A=[a^2 0 1; 0 a 2; 1 0 1]

>> %sigue

13 Matrices elementales

En la practica anterior definimos las funciones en MATLAB para construir las matriceselementales:

function P=pij(i,j,n)

P=eye(n);

P(i,i)=0;

P(j,j)=0;

P(i,j)=1;

P(j,i)=1;

return

function P=pijt(i,j,t,n)

P=eye(n);

P(i,j)=t;

return

function P=qis(i,s,n)

P=eye(n);

P(i,i)=s;

return

14

Page 15: Una introducción a MATLAB

14 Aplicaciones Lineales

1. Sea f ∈ Hom(IR4, IR3) definido por:

f(x1, x2, x3, x4) = (x1 + x2, x3 − x1, x2 + 2x4).

(a) Determina la ecuacion coordenada de f respecto de las bases canonicas (Y = AX).

>> f=[x1+x2,x3-x1,x2+2*x4]

f = [ x1+x2, x3-x1, x2+2*x4]

>> fe1=subs(f,{x1,x2,x3,x4},{1,0,0,0})

fe1 =

1 -1 0

>> fe2=subs(f,{x1,x2,x3,x4},{0,1,0,0})

fe2 =

1 0 1

%continua

(b) Halla una base de Imf .

(c) Halla el subespacio Kerf .

Nota. La orden null(A,’r’) nos proporciona una bases del nucleo de f.

(d) Comprueba que dimIR4 = dim Kerf + dim Imf.

(e) Considera

{(1, 0, 0, 1), (0, 1, 0, 0), (0, 1, 1, 0), (2, 0, 0, 1)} base de IR4,

{(1, 0, 2), (−1, 1, 0), (−3, 1, 1)} base de IR3.

Determina la ecuacion coordenada de f respecto de estas bases (Y = BX).

(f) Comprueba que las matrices A y B son equivalentes.

2. Considera f ∈ Hom(IR2[x], IR1[x]) dado por:

f(ax2 + bx + c) = (a + b)x + (2c + a).

(a) Halla la matriz coordenada respecto de las bases canonicas ( {x2, x, 1}, {x, 1} ).

(b) Estudia si f es una aplicacion inyectiva o suprayectiva.

(c) Estudia si los polinomios p(x) = x2 + x + 1 y q(x) = x2 + 2x + 6 pertenecen o noal subespacio

S = {ax2 + bx + c ∈ IR2[x] / c = 5a + b/2}.(d) Determina f(S).

3. Sean f, h ∈ End(IR3) con ecuaciones coordenadas respecto de la base canonica Y = AXe Y = BX, respectivamente, donde

A =

3 −1 10 1 22 −1 4

, B =

0 1 10 1 0−1 1 2

.

Estudia si h ◦ f es una aplicacion biyectiva.

15

Page 16: Una introducción a MATLAB

ALGEBRA Practica 4

1o A–Ingenierıa Informatica N. Boal, M.L. Sein-Echaluce

Aplicaciones lineales

15 Ejemplo resuelto

A continuacion se presenta un ejercicio resuelto para ilustrar como funcionan las “nuevas” or-denes en MATLAB que puedes necesitar para resolver los ejercicios propuestos en la practica.

Considera f ∈ Hom (IR3, IR2) dada por

f(x1, x2, x3) = (x2 + x3, 2x2 + 2x3).

1. Dado v = (1, 2,−5) ∈ IR3, determina f(v).

>>%Definimos f

>> syms x1 x2 x3

>> f=[x2+x3,2*x2+2*x3]

f =

[ x2+x3, 2*x2+2*x3]

>> fv=subs(f,{x1,x2,x3},{1,2,-5})

fv =

[ -3, -6]

2. Calcula Im f .

Sabemos que si {v1, v2, v3} es una base de IR3, entonces Im f = IR〈{f(v1), f(v2), f(v3)}〉.Luego, considerando las bases canonicas de IR3 y IR2 se tiene:

>> fe1=subs(f,{x1,x2,x3},{1,0,0})

fe1 =

[ 0, 0]

>> fe2=subs(f,{x1,x2,x3},{0,1,0})

fe2 =

[ 1, 2]

>> fe3=subs(f,{x1,x2,x3},{0,0,1})

fe3 =

[ 1, 2]

De donde se deduce que: Im f = IR〈{(1, 2)}〉, luego f no es suprayectiva ni inyectiva,puesto que dim Ker f = 2.

3. Matriz coordenada (por columnas) de f respecto de las bases canonicas.

16

Page 17: Una introducción a MATLAB

>> A=[fe1’ fe2’ fe3’]

A =

[ 0, 1, 1]

[ 0, 2, 2]

>>% observa que

>> rank(A)

ans =

1

4. Base del nucleo

>> null(A)

ans =

[ 1, 0]

[ 0, -1]

[ 0, 1]

Nota. La orden null(A,’r’) nos proporciona una base (“racional”) del nucleo.

Luego {(1, 0, 0), (0,−1, 1)} es una base del nucleo. Recuerda que ya sabıamos que ladimension del nucleo era dos (dim IR3 = dim Ker f + dim Im f). Por tanto,

Ker f = { (x1, x2, x3) / x2 + x3 = 0 }.

5. Determina B, matriz coordenada de f respecto del par de bases

{vi}3i=1 = {(1, 1, 1), (1, 0, 1), (1, 0, 0)}

{wj}2j=1 = {(1, 2), (0,−1)}

Sean {ei}3i=1 y {Ej}2

j=1 las bases canonicas de IR3 y IR2 respectivamente. Entonces, si

v ∈ IR3 tal que v = (ei)t X entonces f(v) = (Ej)

t Y donde Y = AX.

De forma analoga, considerando {vi}3i=1 y {wj}2

j=1 bases de IR3 y IR2, respectivamente,

se tiene que v ∈ IR3 tal que v = (vi)t X entonces f(v) = (wj)

t Y donde Y = BX.

Si denotamos por R y S a las matrices de cambio de base tales que

(vi)t = (ei)

tR, (wj)t = (Ej)

tS

se tiene que S B = AR o equivalentemente B = S−1 AR. Ası,

>> R=[1 1 1;1 0 0; 1 1 0]

R =

1 1 1

1 0 0

1 1 0

>> S=[1 0;2 -1]

S =

1 0

17

Page 18: Una introducción a MATLAB

2 -1

>> B=inv(S)*A*R

B =

[ 2, 1, 0]

[ 0, 0, 0]

Comprueba que f(v1) = 2w1, f(v2) = w1 y f(v3) = (0, 0).

>> fv1=subs(f,{x1,x2,x3},{1,1,1})

fv1 =

[ 2, 4]

>> % continua....

16 Ejercicios propuestos

1. Sea f ∈ Hom(IR4, IR3) definido por:

f(x1, x2, x3, x4) = (x1 + x2, x3 − x1, x2 + 2x4).

(a) Determina la ecuacion coordenada de f respecto de las bases canonicas (Y = AX).

(b) Halla una base de Imf .

(c) Halla el subespacio Kerf .

(d) Comprueba que dimIR4 = dim Kerf + dim Imf.

(e) Considera

{(1, 0, 0, 1), (0, 1, 0, 0), (0, 1, 1, 0), (2, 0, 0, 1)} base de IR4,

{(1, 0, 2), (−1, 1, 0), (−3, 1, 1)} base de IR3.

Sea B la matriz coordenada de f respecto de estas bases (Y = BX). Justificaque las matrices A y B son equivalentes.

(f) Halla la matriz B.

2. Considera f ∈ End(IR3) dado por f(0, 0,−1) = (0, 0,−2) y f(s) = 3s, ∀s ∈ S, siendo

S = { (x, y, z) ∈ IR3 / x + y + z = 0 }.

(a) Determina A, matriz coordenada de f respecto de la base de IR3

{(0, 0,−1), (1, 1, 0), (1, 0, 1)}.

(b) Utiliza la semejanza de matrices para calcular la matriz coordenada de f respectode la base canonica de IR3.

3. Sea h ∈ End ( IR4 ) verificando:

• Kerh = { ( x, y, z, t ) ∈ IR4 | x + y + z = 0, t = 0 }

18

Page 19: Una introducción a MATLAB

• Los vectores ( 1, 1, 1, 0 ) y ( 0, 0, 0, 1 ) son fijos.

(a) Construye la matriz coordenada de h respecto de

la base canonica de IR4.

(b) Determina la matriz del endomorfismo respecto de la base:

B′ = { ( 1, 1, 1, 1 ), ( 0, 1, 1, 1 ), ( 0, 0, 1, 1 ), ( 0, 0, 0, 1 ) }.

4. Considera f ∈ Hom(IR2[x], IR1[x]) dado por:

f(a0 + a1x + a2x2) = (a1 + a2) + (a1 + a2)x.

(a) Halla f(1 + 2x− 5x2).

(b) Determina la matriz coordenada de f respecto de las bases canonicas {1, x, x2} y{1, x}.

(c) Calcula bases de los subespacios Im f y Ker f.

(d) Justifica la equivalencia entre las matrices A y B, siendo B la matriz coordenadade f respecto de las bases:

{1 + x + x2, 1 + x2, 1}, {1 + 2x, −1}.

5. Considera f ∈ Hom(IR2[x], IR1[x]) dado por:

f(ax2 + bx + c) = (a + b)x + (2c + a).

(a) Halla la matriz coordenada respecto de las bases canonicas ( {x2, x, 1}, {x, 1} ).

(b) Estudia si f es una aplicacion inyectiva o suprayectiva.

(c) Estudia si los polinomios p(x) = x2 + x + 1 y q(x) = x2 + 2x + 6 pertenecen o noal subespacio

S = {ax2 + bx + c ∈ IR2[x] / c = 5a + b/2}.(d) Determina f(S).

6. Sean f, h ∈ End(IR3) con ecuaciones coordenadas respecto de la base canonica Y = AXe Y = BX, respectivamente, donde

A =

3 −1 10 1 22 −1 4

, B =

0 1 10 1 0−1 1 2

.

Estudia si h ◦ f es una aplicacion biyectiva.

19

Page 20: Una introducción a MATLAB

ALGEBRA Practica 5

1o A–Ingenierıa Informatica N. Boal, M.L. Sein-Echaluce

Diagonalizacion

17 Ejemplo resuelto

A continuacion se presenta un ejercicio resuelto para ilustrar como funcionan las “nuevas” or-denes en MATLAB que puedes necesitar para resolver los ejercicios propuestos en la practica.

Considera f ∈ End (IR3) de ecuacion coordenada respecto de la base canonica Y = AXdonde

>> A=[0 1 1;0 2 2;0 0 1]

A =

0 1 1

0 2 2

0 0 1

El polinomio caracterıstico de h:

>> syms x

>> pol=det(x*eye(3)-A)

pol =

x*(x-2)*(x-1)

OBS: es obvio puesto que A es triangular superior. Ademas el endomorfismo es diagonaliz-able es IR puesto que todos los valores propios son reales y distintos.

Subespacios fundamentales:

>> M1=(1*eye(3)-A)

M1 =

1 -1 -1

0 -1 -2

0 0 0

>> V1=null(M1,’r’)

V1 =

-1

-2

1

>> M2=(2*eye(3)-A)

20

Page 21: Una introducción a MATLAB

M2 =

2 -1 -1

0 0 -2

0 0 1

>> V2=null(M2,’r’)

V2 =

1/2

1

0

>> V0=null(A,’r’)

V0 =

1

0

0

Base de vectores propios: {v1, v2, v3} = {(−1,−2, 1), (1/2, 1, 0), (1, 0, 0)}.

Ejercicio: Justifica que A es semejante a la matriz

D =

1 0 00 2 00 0 0

.

Halla una matriz P tal que D = P A P−1.

18 Otras ordenes en MatLab

>> null(A,’r’) % base ‘‘racional’’ del conjunto de soluciones de AX=O

>> diag(v) %matriz diagonal con las coordenadas v_i en la diagonal

>> eig(A) %proporciona los valores propios de A

>> [V,D]=eig(A)%las columnas de V son las coordenadas de una base ...

%vectores propios y D es matriz diagonal con los ...

%valores propios en la diagonal

>> % solve(’ecu1’,’ecu2’,...): Para resolver ecuaciones

>> poly(A) %halla los coeficientes del polinomio caracter\’{\i}stico de A

>> factor(p) % factorizar el polinomio p.

19 Ejercicios propuestos

1. Sea h ∈ End(IR3) que respecto de la base canonica tiene por ecuacion Y = AX donde

A =

−1 −2 −4 −22 1 2 4−4 −2 −1 −22 4 2 1

.

21

Page 22: Una introducción a MATLAB

Estudia si es diagonalizable y, si lo es, construye una matriz regular P tal que P−1 APsea diagonal.

2. Sean f, h ∈ End(IR3) con ecuaciones coordenadas respecto de la base canonica Y = AXe Y = BX, respectivamente, donde

A =

3 −1 10 1 22 −1 −2

, B =

0 1 10 1 0−1 1 2

.

Determina los subespacios fundamentales de h ◦ f y estudia si es diagonalizable.

3. Comprueba que la matriz

A =

−1 1 −1−2 2 −1−2 2 −1

es diagonalizable. Halla, si existen, A300 y A1/2.

4. Considera el endomorfismo h ∈ End (IR2[x]) tal que

h(a0 + a1 x + a2 x2) = −a2 + (a0 + a1 + a2) x + (a0 + 2a2) x2.

Calcula los subespacios fundamentales y, en caso de ser h un endomorfismo diagonal-izable, determina una matriz Q tal que D = Q AQ−1, con D matriz diagonal.

5. Sean M2(IR), {E1, E2, E3, E4} la base canonica y h ∈ End (M2(IR)) tal que

• E1, E2 ∈ Ker (h),

• el polinomio caracterıstico de h es x2(x− 1)(x + 2),

• h(E3) = −2E1 + E3,

• h(E4) = −2E2 − 2E4.

(a) Sin hacer ningun calculo y teniendo en cuenta unicamente los datos que te danen el enunciado, justifica que h es un endomorfismo diagonalizable.

(b) Comprueba que los vectores A1 = E2 + E4 y A2 = −2E1 + E3 son vectorespropios de h.

(c) Da una base de vectores propios de h y calcula D, la matriz coordenada de hrespecto de esa base.

(d) Si A es la matriz coordenada de h respecto de la base canonica, halla P regulartal que A = P D P−1.

(e) ¿h es biyectivo?

(f) Halla Im f.

22

Page 23: Una introducción a MATLAB

20 Sucesion de Fibonacci

Leonardo de Pisa (1175-1250) (cuyo sobrenombre ”Fibonacci” se debe al matematico francesEdouard Locus, 1842-1891) estudio el siguiente problema de crecimiento de poblacion: “Cal-cular el numero de conejos que resultan en un ano, si se comienza con una sola pareja quecrıa otra al final de cada mes. Cada nueva pareja comienza a reproducirse de igual maneraal cabo de un mes de nacimiento, y se supone que ningun conejo muere”.

Este problema se resuelve a partir de la relacion de Fibonacci{

Fn+2 = Fn+1 + Fn,F0 = 0, F1 = 1

(1)

contenida en la obra ”Liber Abaci” en 1202 y que es el origen del estudio de las Ecuacionesen Diferencias.

Averiguar el numero de parejas de conejos al cabo de 100 meses se reducirıa a calcularF100.

Una manera de resolver el problema serıa calcular F2, F3, · · · , F99, (es decir, los sucesivosterminos de la sucesion de Fibonacci 0, 1, 1, 2, 3, 5, 8, 13, 21, · · ·) pero vamos a evitar esoscalculos nada gratos con una tecnica basada en la diagonalizacion de matrices.

Consideramos la ecuacion en diferencias (1) expresada en forma matricial como

(Fn+2

Fn+1

)=

(1 11 0

) (Fn+1

Fn

)

y definimos A y xn, n ≥ 0 por

A =(

1 11 0

), xn =

(Fn+1

Fn

), n ≥ 0, x0 =

(10

),

entonces la ecuacion (1) se reduce a

xn+1 = Axn.

Conocemos x0 y queremos determinar x99. Observamos que

x1 = Ax0, x2 = Ax1 = A2x0, x3 = Ax2 = A3x0, · · ·y se puede demostrar por induccion que

xn = Anx0

con lo que el problema se reduce a calcular la potencia A99 para hallar x99.

Ejercicio: Estudia si la matriz A es diagonalizable.

Ejercicio: Si lo es, utiliza esta caracterıstica para calcular cualquier potencia de A comoproducto de matrices, sin necesidad de realizar las potencias sucesivas de A.

Ejercicio: Calcula el numero de pares de conejos que habra al cabo de dos anos.

23

Page 24: Una introducción a MATLAB

Observacion: Si calculamos los cocientes Fn+1/Fn para valores de n muy grandes, seobtienen valores que se van aproximando al numero (1 +

√5)/2 que fue llamado por los

griegos razon de oro o numero de aureo. El numero aureo aparece en diversas areas comola geometrıa. Los rectangulos mas esteticos tienen sus lados en la razon 1.6 : 1 como sabentodos los artistas y carpinteros.

1. En una pequena localidad hay dos supermercados de alimentacion: X e Y . Se sabeque de los clientes del supermercado X de un ano, el 70% lo sigue siendo el siguiente, mientras que el 30% se pasa a la competencia. De la misma forma, el 60% de losclientes del autoservicio Y de un ano vuelve a serlo el siguiente, mientras que el 40%restante cambia de establecimiento. En el ano 1989 el supermercado Y recibio 1200clientes.

(a) Calcula cuantos clientes tuvo el supermercado X sabiendo que en el ano 1990 en-traron el mismo numero de clientes que en el ano 1989 en ambos establecimientos.

(b) Determina cuantos clientes entraron en el ano 2002.

24

Page 25: Una introducción a MATLAB

ALGEBRA Practica 6

1o A–Ingenierıa Informatica N. Boal, M.L. Sein-Echaluce

Formas cuadraticas

21 Ejemplo resuelto

A continuacion se presenta un ejercicio resuelto para ilustrar como funcionan las “nuevas” or-denes en MATLAB que puedes necesitar para resolver los ejercicios propuestos en la practica.

Sea la forma cuadratica q : IR2 → IR definida por

q(x1, x2) = 3x21 + 2x1x2 + 5x2

2.

La matriz coordenada (respecto de la base canonica) es

A =

(3 11 5

)

Diagonalizamos por congruencias la matriz A

>> A=[3 1;1 5];

>> A1=pijt(2,1,-1/3,2)*A*pijt(1,2,-1/3,2)

A1 =

3 0

0 14/3

>> P=pijt(2,1,-1/3,2)

P =

1 0

-1/3 1

>> D=P*A*P’

3 0

0 14/3

Luego la forma cuadratica q es definida positiva y una base A-conjugada de IR2 es: {(1, 0), (−1/3, 1)}respecto de la cual la matriz coordenada de la forma cuadratica es la matriz diagonal D.

Vamos a representar graficamente la forma cuadratica q e interpretaremos que significaque sea definida positiva. Para ello, generamos un m-file, llamado repre grafica con elsiguiente contenido:

function repre_grafica

%generamos la malla de puntos

%en la que evaluaremos la funcion

x=-1:0.02:1;

y=x;

25

Page 26: Una introducción a MATLAB

[X,Y]=meshgrid(x,y);

%definimos la funcion

Z=3*X.^2+2*X.*Y+5*Y.^2;

%plano z=0

n=size(x,2);

Z0=zeros(n,n);

% dibujamos

hold on

mesh(x,y,Z)

mesh(x,y,Z0)

hold off

Nota. X e Y son matrices y cuando ponemos el “.” al operar estamos realizando la operacionelemento a elemento. Ası, con X.*Y multiplicamos el elemento X(i,j) por el elementoY(i,j), y con X.^2 elevamos al cuadrado cada elemento de X.

Si ejecutamos

>> repre grafica

−1−0.500.51−1 −0.5 0 0.5 1

0

1

2

3

4

5

6

7

8

9

10

Luego efectivamente q(x, y) > 0 para todo (x, y) 6= (0, 0).

22 Ejercicios propuestos

1. Clasifica las siguientes formas cuadraticas definidas en IR2 a partir de su representaciongrafica. En segundo lugar, halla su signatura para comprobar que lo has hecho correc-tamente.

(a) q(x1, x2) = −2x21 + 2x1x2 + 3x2

2.

(b) q(x1, x2) = 4x21 + 2x1x2 + 3x2

2.

(c) q(x1, x2) = x21 + 2x1x2 + x2

2.

(d) q(x1, x2) = −2x21 + 2x1x2 − 4x2

2.

26

Page 27: Una introducción a MATLAB

Observa que en las formas cuadraticas anteriores, el origen (0, 0) es un punto crıtico.Indica que tipo de punto es (maximo relativo, mınimo relativo, punto silla). (Verseccion 3).

2. Sea la forma cuadratica q : IR4 → IR definida por

q(x1, x2, x3, x4) = 3x21 + 5x2

2 + 6x23 + 4x2

4 + 2x1x2 − 2x2x3 + 4x3x4.

(a) Si denotamos por A a la matriz coordenada de q respecto de la base canonica deIR4, determina una base de vectores de IR4 A-conjugada.

(b) Comprueba que A es definida positiva.

(c) Halla la factorizacion de Cholesky.

(d) Utiliza la factorizacion anterior para resolver el sistema Ax = b con b = (4, 5, 7, 6)′.

3. Sea la forma cuadratica q : IR4 → IR definida por

q(x1, x2, x3, x4) = 2x21 + 2x2

2 + 2x23 + 2x2

4 + 2x1x3 + 2x1x4 + 2x2x4 + 2x3x4.

(a) Diagonaliza por congruencias la forma cuadratica q.

(b) Halla, si existe, la factorizacion de Cholesky.

(c) Utiliza las factorizaciones anteriores para resolver el sistema Ax = b con b =(5, 5, 5, 5)′.Nota. Recuerda que con la orden >> B\c MatLab proporciona la solucion delsistema lineal Bx = c y que para trasponer una matriz A basta ejecutar >> A’

4. Determina la factorizacion de Cholesky de

A =

3 0 −1 10 9 2 0−1 2 1 01 0 0 1

23 Extremos relativos de formas cuadraticas

Sean A ∈Mn(IR) simetrica y la forma cuadratica q : IRn → IR definida por

q(X) = X ′ AX =1

2X ′ (2A) X.

Se tiene que q ∈ C∞(IRn) y ademas

∇q(X) = 2AX, (gradiente)

H(X) = 2A, (hessiana)

Por otra parte es inmediato observar que X0 = (0, . . . , 0)′ es un punto crıtico de q, (∇q(X0) =(0, . . . , 0) )′. Luego, si

• A es definida positiva, entonces X0 es mınimo relativo,

• A es definida negativa, entonces X0 es maximo relativo,

• A es indefinida, entonces X0 es punto silla.

27

Page 28: Una introducción a MATLAB

24 Otros criterios de clasificacion de formas cuadraticas

Criterio de los menores. Sea A ∈Mn(IR) simetrica y consideramos los menores

4k = det

a11 . . . a1k...

. . ....

ak1 . . . akk

, k = 1, . . . , n.

1. A es definida positiva si y solo si 4k > 0 para todo k.

2. A es definida negativa si y solo si 4k > 0 si k es par y 4k < 0 si k es impar.

3. Si 4k 6= 0 para todo k y no estamos en ninguna de las situaciones anteriores, entoncesA es indefinida.

Observaciones.

• En 3) el recıproco no es cierto, luego este criterio nos proporciona una condicion sufi-ciente, no necesaria.

• Este criterio es muy costoso y solo se emplea para matrices de orden bajo. Ademas nopermite clasificar todos los casos.

Criterio de los valores propios. Sea A ∈ Mn(IR) simetrica y λ1, . . . , λn sus valorespropios (que son todos reales). Entonces:

1. A es definida positiva si y solo si λi > 0 para todo i.

2. A es definida negativa si y solo si λi < 0 para todo i.

3. A es semidefinida positiva si y solo si λi ≥ 0 para todo i con algun λi = 0.

4. A es semidefinida negativa si y solo si λi ≤ 0 para todo i con algun λi = 0.

5. A indefinida si y solo si λi > 0 para algun i y λj < 0 para algun j.

28

Page 29: Una introducción a MATLAB

ALGEBRA Practica 7

1o A–Ingenierıa Informatica N. Boal, M.L. Sein-Echaluce

Espacios Euclıdeos

25 Ejercicios propuestos

1. Dada la matriz

A =

3 1 11 3 11 1 3

definimos en IR3 el producto escalar

( u, v )A = X t AY,

siendo X e Y las coordenadas de los vectores u y v en la base canonica, respectivamente.Determina una base de IR3 ortonormal respecto del producto escalar ( · , · )A.

2. Considera el espacio euclıdeo V = IR2[x] con el producto escalar

( p(x), q(x) ) =∫ 1

0p(x)q(x) dx.

Estudia si los polinomios 1 + x y x2 son ortogonales.

3. Halla la factorizacion QR de la matriz

A =

1 −1 13 2 05 1 11 0 0

.

4. Comprueba que el sistemax + z = 1,

2x + y + z = 1,x + y = 1,

x + 2z = 2.

es incompatible. Utiliza la factorizacion QR (de la matriz de coeficientes A) paraencontrar la mejor aproximacion de la solucion del sistema.

5. Resuelve el sistema sobredeterminado

3x− z + t = 2,9y + 2z = 15,

−x + 2y + z = 2,x + t = 0,

2x + 2y + t = 0.

29

Page 30: Una introducción a MATLAB

6. Determina la parabola que mejor se ajusta a los puntos del plano: (−1, 1), (0,−1),(1, 0) y (2, 2).

7. Un profesor de algebra mantiene las estadısticas, que se muestran en la tabla, delporcentaje de notables otorgados durante un perıodo de seis semestres. Aproximandopor mınimos cuadrados mediante una recta, calcular el porcentaje de notables que seesperan en el decimo semestre.

Semestre 1 2 3 4 5 6

% Notables 0.20 0.25 0.20 0.35 0.45 0.40

30

Page 31: Una introducción a MATLAB

26 Otros ejercicios propuestos

A continuacion se presentan unos calculos realizados con el programa MatLab. Teniendoen cuenta exclusivamente estos resultados y sin hacer operaciones adicionales, debescontestar de forma razonada a las tres preguntas que se plantean al final.

>> A=sym(’[3, 0, 1; 0, -4, 2; 1, 2, 5]’)

A =

3, 0, 10, −4, 21, 2, 5

>> A1=A(1,1)

A1 = 3

>> A2=A([1,2],[1,2])

A2 =[

3, 00, −4

]

>> det(A1)

ans =

3

>> det(A2)

ans =

-12

31

Page 32: Una introducción a MATLAB

>> det(A)

ans =

-68

>> B1=Pt(3, 1, -1/3, 3)*A

B1 =

3, 0, 10, −4, 20, 2, 14/3

>> B2=Pt(3, 2, 1/2, 3)*B1

B2 =

3, 0, 10, −4, 20, 0, 17/3

1.- Justifica si la matriz A admite o no factorizacion LU. En caso afirmativo, indica cual esla matriz U y cual es la matriz L (esta ultima expresada como producto de matrices elemen-tales).

2.- Sea V un espacio vectorial real y h ∈ End(V) de ecuacion coordenada Y = AX (respectode la base {a1, a2, a3}). Razona si λ = 0 es un valor propio de h.

3.- ¿h es isomorfismo? (Justifica la respuesta)

Sea h ∈ End(IR5) de ecuacion coordenada Y = AX respecto de la base canonica donde lamatriz coordenada se define:

>> A=[-1 0 0 0 0; 2 3 0 0 0;2 3 2 0 1;-3 3 -2 0 -7; 1 -1 0 0 2]

A =

-1 0 0 0 0

2 3 0 0 0

2 3 2 0 1

-3 3 -2 0 -7

1 -1 0 0 2

A continuacion realizamos unos calculos con MatLab.

32

Page 33: Una introducción a MATLAB

>> eig(A)

ans =

0

2

2

3

-1

>> null(A,’r’)

ans =

0

0

0

1

0

>> null(3*eye(5)-A,’r’)

ans =

0

-1

-2

-2

1

>> null(2*eye(5)-A,’r’)

ans =

0

0

-1

1

0

>> null(-eye(5)-A,’r’)

ans =

-2

1

1/3

-4/3

1

Teniendo en cuenta unicamente estos calculos realizados con MatLab contesta deforma razonada a las siguientes preguntas:

1. ¿Cual es el polinomio caracterıstico de A?

2. Determina las ecuaciones parametricas de todos los subespacios fundamentales.

3. Explica por que se obtiene:

>> null(4*eye(5)-A,’r’)

33

Page 34: Una introducción a MATLAB

ans =

Empty matrix: 5-by-0

4. Halla Ker h e Im h.

5. ¿Es h un isomorfismo?

6. Sabiendo que

>> w1=A(:,1);w2=A(:,2);w3=A(:,3);w4=A(:,5);v1=[0;0;0;1;0];

>> B=[w1 w2 w3 w4 v1]

B =

-1 0 0 0 0

2 3 0 0 0

2 3 2 1 0

-3 3 -2 -7 1

1 -1 0 2 0

>> rank(B)

ans =

5

Justifica IR5 = Ker h⊕ Im h.

7. ¿La matriz A admite factorizacion LU? (Razona tu respuesta)

Sea V = IR3[x] y en el consideramos las siguientes bases:

{ei(x)}4i=1 = {1, x, x2, x3 }

{pi(x)}4i=1 = {1, (x− 2), (x− 2)2, (x− 2)3 }

{qi(x)}4i=1 = {1, x, x(x− 1), x(x− 1)(x− 2) }

Notacion: p(x) ∈ V respecto de una base arbitraria {vi(x)}4i=1 tiene por coordenadas Xv

donde p(x) = (vi(x))′Xv.

A continuacion realizamos unos calculos con MatLab

>> syms x

>> p1=1;

>> p2=x-2;

>> p3=expand((x-2)^2)

p3 =

x^2-4*x+4

>> p4=expand((x-2)^3)

p4 =

x^3-6*x^2+12*x-8

>> q1=1;

34

Page 35: Una introducción a MATLAB

>> q2=x;

>> q3=expand(x*(x-1))

q3 =

x^2-x

>> q4=expand(x*(x-1)*(x-2))

q4 =

x^3-3*x^2+2*x

>> P=[1 -2 4 -8; 0 1 -4 12; 0 0 1 -6; 0 0 0 1]

P =

1 -2 4 -8

0 1 -4 12

0 0 1 -6

0 0 0 1

>> Q=[1 0 0 0; 0 1 -1 2; 0 0 1 -3; 0 0 0 1]

Q =

1 0 0 0

0 1 -1 2

0 0 1 -3

0 0 0 1

35

Page 36: Una introducción a MATLAB

>> invP=inv(P)

invP =

1 2 4 8

0 1 4 12

0 0 1 6

0 0 0 1

>> invQ=inv(Q)

invQ =

1 0 0 0

0 1 1 1

0 0 1 3

0 0 0 1

Debes contestar de forma razonada a las preguntas que se te plantean, hasde tener en cuenta unicamente estas ordenes en MatLab y no tienes quehacer calculos adicionales innecesarios. Solo sera preciso hacer algun producto“matriz-vector” y algun producto matricial.

1. Para un polinomio arbitrario p(x) determina la relacion entre las coordenadas respectode:

(a) la base canonica y la base {pi(x)}4i=1

(b) la base canonica y la base {qi(x)}4i=1

(c) la base {pi(x)}4i=1 y la base {qi(x)}4

i=1

2. Calcula las coordenadas de 1 + x + x2 + x3 respecto de la base {pi(x)}4i=1.

3. Calcula las coordenadas de 1− 2x + x2 − 4x3 respecto de la base {qi(x)}4i=1.

4. Halla las coordenadas respecto de la base {pi(x)}4i=1 del polinomio q(x) que respecto

de la base {qi(x)}4i=1 tiene por coordenadas (−3, 0, 2,−4)′.

5. Si denotamos por R a la matriz de cambio de base entre {pi(x)}4i=1 y {qi(x)}4

i=1, hallasu factorizacion LU , si existe.

Sea V = IR3[x] y en el consideramos las siguientes bases:

{ei(x)}4i=1 = {1, x, x2, x3 },

{pi(x)}4i=1 = {1, x, x(x− 1), x(x− 1)(x− 2) }.

Consideramos h un endomorfismo definido en V de ecuaciones coordenadas:

Y = AX (respecto de la base ){ei(x)}4i=1,

Y = BX (respecto de la base ){pi(x)}4i=1.

36

Page 37: Una introducción a MATLAB

A continuacion realizamos unos calculos con MatLab

>> A=[1 0 0 0;0 -2 -2 4;0 0 0 -9;0 0 0 3]

A =

1 0 0 0

0 -2 -2 4

0 0 0 -9

0 0 0 3

>> eig(A)

ans =

1

-2

0

3

>> syms x

>> p1=1;

>> p2=x;

>> p3=expand(x*(x-1))

p3 =

x^2-x

>> p4=expand(x*(x-1)*(x-2))

p4 =

x^3-3*x^2+2*x

>> P=[1 0 0 0; 0 1 -1 2; 0 0 1 -3; 0 0 0 1]

P =

1 0 0 0

0 1 -1 2

0 0 1 -3

0 0 0 1

>> invP=inv(P)

invP =

1 2 4 8

0 1 4 12

0 0 1 6

0 0 0 1

Debes contestar de forma razonada a las preguntas que se te plantean, hasde tener en cuenta unicamente estas ordenes en MatLab y no tienes quehacer calculos adicionales innecesarios. Solo sera preciso hacer algun producto“matriz-vector” y algun producto matricial.

1. Para un polinomio arbitrario p(x) determina la relacion entre las coordenadas respectode la base canonica y la base {pi(x)}4

i=1.

37

Page 38: Una introducción a MATLAB

2. Calcula las coordenadas de 1 + x + x2 + x3 respecto de la base {pi(x)}4i=1.

3. Halla h(1 + x + x2 + x3).

4. Comprueba que la matrices A y B son semejantes y halla B.

5. Determina el subespacio Imh.

Considera V = IR4[x] (espacio de los polinomios de grado menor o igual que 4) y

S1 = IR〈 1 + x2 + 3x3, x + 4x2 + 3x3, x3 〉,S2 = IR〈x + 2x3 〉.

Con MatLab realizamos las siguientes operaciones:

>> v1=[1 0 1 3 0];v2=[0 1 4 3 0];v3=[0 0 1 0 0];u1=[0 1 0 2 0];

>> A=[v1;v2;v3;u1]

A =

1 0 1 3 0

0 1 4 3 0

0 0 1 0 0

0 1 0 2 0

>> rank(A)

ans =

4

Teniendo en cuenta unicamente los calculos anteriores y sin realizar ninguna op-eracion adicional, contesta de forma razonada a las siguientes preguntas:

1. Determina S1 + S2.

2. Demuestra que S1 ⊕ S2.

3. Halla un subespacio S3 de modo que IR4[x] = S1 ⊕ S2 ⊕ S3.

38

Page 39: Una introducción a MATLAB

Sea P2(x) el espacio vectorial de los polinomios de grado menor o igual a 2 y h ∈ End(P2(x))de ecuacion coordenada Y = AX (respecto de la base {1, x, x2}) donde

>> A=sym(’[7/2 0 -3/2;-4 1 4; 9/2 0 -5/2]’);

>> polcar=poly(A); factor(polcar)

ans=

(x-1)*(x-2)*(x+1)

>> v1=null(A-eye(3))

v1=

010

>> v2=null(A-2*eye(3))

v2=

101

>> v3=null(A+eye(3))

v3=

1−4

3

Ayuda: la funcion null(B) proporciona una base del Ker(f) con f ∈ End(IRn) de ecuacioncoordenada Y = BX.

Teniendo en cuenta exclusivamente estos calculos realizados en MATLABcontesta razonadamente a las siguientes tres preguntas.

1. Construye la forma canonica de Jordan J y demuestra que A y J son matrices seme-jantes.

39

Page 40: Una introducción a MATLAB

2. ¿h es diagonalizable? En caso afirmativo determina una matriz P tal que D = P−1AP.

3. ¿Cuales son los factores invariantes de h? (Razona la respuesta)

40