• No se han encontrado resultados

Proyecto Cualquier paquete de software moderno para resolver sistemas lineales debe incluir un estimador eficiente y confiable del n´umero de condici´on de la matriz de coeficientes

N/A
N/A
Protected

Academic year: 2022

Share "Proyecto Cualquier paquete de software moderno para resolver sistemas lineales debe incluir un estimador eficiente y confiable del n´umero de condici´on de la matriz de coeficientes"

Copied!
2
0
0

Texto completo

(1)

1

C´alculo Num´erico - CO3211 - Proyecto 1

Instrucciones sobre los proyectos

• Debe entregar por escrito los resultados num´ericos de los distintos problemas planteados, las res- puestas a las interrogantes y sus conclusiones.

• Debe enviar el c´odigo fuente utilizado como un ´unico archivo comprimido al correo electr´onico del profesor.

• No se reciben entregas extempor´aneas sin su debida justificaci´on.

• Estos trabajos son individuales salvo cuando el profesor indique lo contrario. Cualquier similitud extrema o falta de probidad demostrada en la realizaci´on de esta evaluaci´on (c´odigo y resultados), ser´a penalizada con la anulaci´on de la actividad y la sanci´on administrativa correspondiente.

Proyecto

Cualquier paquete de software moderno para resolver sistemas lineales debe incluir un estimador eficiente y confiable del n´umero de condici´on de la matriz de coeficientes. Este valor es de fundamental importancia para que el usuario determine el grado de confianza que le puede asginar a la soluci´on ofrecida por el paquete.

En este proyecto, Ud. construir´a algunos estimadores simples basados en heur´ısticas que describiremos a continuaci´on.

Recordemos que, en cualquier norma inducida o subordinada, el n´umero de condici´on de una matriz cuadrada no-singular se define como:

cond(A) = kAk kA−1k.

El c´alculo exacto de kAk es f´acil al usar la norma 1 y la norma infinito (use ambos tanto como sea posible y compare). El reto principal radica en como estimar kA−1k a un bajo costo, sin tener que calcular expl´ıcitamente la inversa de A.

Usando las propiedades de norma inducida, si z resuelve el sistema Az = y, entonces kzk

kyk ≤ kA−1k, (demostrarlo)

y la cota se alcanza para alg´un vector y ´optimo, que de nuevo se obtiene a un costo prohibido!

1. Como primera idea pr´actica, genere vectores y 6= 0 en forma aleatoria, resuelva Az = y y consiga la mejor cota inferior posible de kA−1k, y por ende de cond(A). Compare con la cond(A) exacta que ofrece MATLAB en norma 1 y norma infinito. Por favor, tome ventaja de la factorizaci´on LU de A ya obtenida al resolver el sistema original, en esto radica la eficiencia.

USB, CO3211, Prof. Sa´ul Buitrago

(2)

2

2. Luego, como segunda idea, concentre su atenci´on en vectores y cuyas componentes sean 1 o −1 escogidos en forma aleatoria de nuevo, y obtenga cotas inferiores para la cond(A).

3. Por ´ultimo considere la siguiente idea: resolver primero el sistema Ax = b donde bi = 1/n para todo i; luego resolver Atz = y donde yi = 1 si xi ≥ 0, y yi = −1 si xi < 0; asignar al ´ındice k = arg max{|zi|, 1 ≤ i ≤ n}, y resolver de nuevo Ax = b donde ahora b tiene ceros en todas las posiciones menos en la k donde tiene un 1.

Calcule kxk1y ´uselo como cota inferior de kA−1k1(justifique por qu´e s´olo kxk1para el c´alculo de la cota inferior de kA−1k1). Compare con los resultados aleatorios. Comente los resultados observados y trate de explicar el por qu´e de lo observado.

Programe los 3 procedimientos mencionados arriba. Las funciones para calcular la factorizaci´on LU de A as´ı como los m´etodos de sustitusi´on hacia adelante y atr´as deben ser programados por usted. Para sus experimentos use las matrices cuadradas siguientes

 0.641 0.242 0.321 0.121

 y

10 −7 0

−3 2 6

5 −1 5

y tambi´en las suministradas en el archivo CO3211 proy1datos.mat. Recuerde que para la soluci´on de cada sistema la matriz no cambia, lo que cambia es el vector del t´ermino de la derecha.

Construir una tabla con los resultados de los n´umeros de condici´on calculados para los 3 m´etodos y para cada una de las matrices suministradas. Incluir en la tabla los n´umeros de condici´on calculados usando la funcion de Matlab cond. Debe escribir un informe con el an´alisis del trabajo realizado, de los resultados obtenidos, as´ı como las conclusiones.

USB, CO3211, Prof. Sa´ul Buitrago

Referencias

Documento similar

Supongamos que una persona est´ a escogiendo ropa para ir a una fiesta, y puede elegir uno de dos sombreros (los denotamos por S, T ) y una de tres camisas (las denotamos A, B,

N´ otese que la definici´ on de la divisibilidad (escrita en el inicio de este tema) est´ a escrita en t´ erminos de la operaci´ on de multiplicaci´ on y no utiliza la operaci´ on

El estudio del factorial de un n´ umero entero positivo (Z + ) es de suma importancia en esta parte del ´ algebra, ya que este objeto matem´atico ayudar´ a a produndizar temas como

Asimismo, es necesario recalcar que el estudio del n´ umero combinatorio se desliga de un campo mucho m´as general que involucra el teorema del coeficiente binomial, llamado

En particular, polinomios de matrices se pueden usar para calcular la funci´ ´ on exponencial exp(A) de una matriz cuadrada A, la cual se usa en la teor´ıa de ecuaciones

Para calcular la matriz A −1 aplicamos a la matriz I las mismas opera- ciones elementales por renglones que hab´ıamos hecho con la matriz A para transformarla en la matriz

Dada una matriz no diagonalizable de orden 2, vamos a construir su forma can´ onica de Jordan, una base de Jordan, el polinomio m´ınimo y la funci´ on exponencial f (t) =

En alg´ un lenguaje de programaci´ on escribir una funci´ on linearsearch que determine el n´ umero de las componentes de un arreglo ordenado que son menores o iguales a un n´