Álgebra Lineal Numérica
Maestría en Ciencias Fisicomatemáticas, ESFM del IPN

La página está en construcción. Por favor corrijan mi español.

Contenido del curso:

  1. Introducción.
  2. Multiplicación de matrices.
  3. Matrices triangulares.
  4. Matrices ortogonales.
  5. Descomposición QR.
  6. Métodos iterativos para sistemas lineales.
  7. Sensibilidad de sistemas lineales.
  8. Valores singulares y valores propios.
  9. Matrices especiales.


Introducción


Propósito de la asignatura: programar y analizar algoritmos de álgebra lineal, optimizando la rapidez y la precisión.
Prerrequisitos de la asignatura.
Lloyd N. Trefethen, The definition of numerical analysis.
Numerical analysis is the study of algorithms for the problems of continuous mathematics.
Lenguaje de programación recomendado: Matlab o alguno de sus análogos libres.
Otra opción buena: Python con la librería numpy. La sintaxis de numpy hereda algunas ideas de la sintaxis de Matlab.
Sistema de álgebra computacional Sagemath, utiliza el lenguaje Python. Para este curso, es casi lo mismo que Python+numpy.
Otra opción buena: Python con la librería numpy. La sintaxis de numpy hereda algunas ideas de la sintaxis de Matlab.
El lenguaje Julia hereda varias ideas de Matlab y de Python, pero es compilable y por eso más rápido.
Se recomienda resolver en papel todos los ejercicios teóricos del tema Operaciones con Matrices.
Tareas de matices especiales (se hacen por equipos).

Multiplicación de matrices

Esta parte es un repaso muy breve de los temas que por lo común se estudian en las primeras tres semanas de Álgebra II. Además repasamos elementos de programación con vectores y matrices.

Vectores y matrices. Submatrices.
Notación breve para sumas.
Sumas parciales (sumas acumuladas) de las componentes de un vector.
Sumas con la delta de Kronecker.
Multiplicación de matrices por vectores.
Motivación de la definición del producto de matrices.
Definición formal del producto de matrices.
Problemas experimentales para divertirse con la multiplicación de matrices.
El producto de dos matrices como una suma de productos diádicos.
Demostración de propiedades de las operaciones lineales con matrices.
Demostración de propiedades de la multiplicación de matrices.
Matriz transpuesta.
Estructura del producto de matrices.
Matrices elementales.
Operadores de desplazamiento y sus composiciones.
Invertibilidad izquierda y derecha de matrices.
Matrices de permutaciones.
Programación: Construcción de vectores cuyas componentes están dadas por ciertas reglas.
Programación: Creación de matrices.
Programación: Componentes y subvectores de vectores.
Programación: Submatrices.
Programación: Sumas acumuladas de las componentes de un vector.
Programación: Operaciones lineales con vectores (operación axpy).
Programación: El producto punto de dos vectores.
Programación: El producto de dos vectores por componentes.
Programación: El producto diádico de dos vectores.
Programación: Multiplicación de una matriz por un vector.
Programación: Multiplicación de una matriz por un vector usando la operación axpy.
Programación: Multiplicación de matrices.
Programación: Operaciones elementales con renglones y columnas de matrices.
Tarea individual 1. Tema: Multiplicación de matrices. Versión antigua.
Lista de problemas para examen. Tema: Multiplicación de matrices.
Lista de problemas adicionales para exponer. Tema: Multiplicación de matrices.


Matrices triangulares

Es fácil resolver sistemas de ecuaciones lineales con matrices ortogonales y con matrices triangulares. Por esta razón y por otras las matrices ortogonales y triangulares sirven como “ladrillos” (factores simples) en varias descomposiciones de matrices.

Programación de estructuras triangulares.
Programación: la suma de las columnas de la matriz triangular dada.
Producto de matrices triangulares por vectores.
Producto de matrices triangulares superiores.
Producto de matrices triangulares superiores.
Matrices diagonales.
Solución de sistemas de ecuaciones con matrices triangulares invertibles.
Solución de sistemas de ecuaciones lineales con matrices triangulares, usando operaciones por columnas.
Las matrices inversas de las matrices triangulares tambión son triangulares.
Matrices inversas de las matrices triangulares superiores (ejercicios pequeños).
Programación: Multiplicación de matrices triangulares inferiores por vectores.
Programación: Multiplicación de matrices triangulares superiores por vectores.
Programación: Solución de sistemas de ecuaciones lineales con matrices unitriangulares inferiores.
Programación: Solución de sistemas de ecuaciones lineales con matrices triangulares inferiores.
Programación: Solución de sistemas de ecuaciones lineales con matrices triangulares superiores.
Programación: Solución de sistemas con matrices unitriangulares inferiores usando operaciones con columnas.
Programación: Solución de sistemas con matrices triangulares inferiores usando operaciones con columnas.
Programación: Solución de sistemas con matrices triangulares superiores usando operaciones con columnas.
Programación: Multiplicación de matrices triangulares.
Tarea individual 2. Tema: Matrices triangulares. Versión antigua.
Lista de problemas para examen. Tema: Matrices triangulares.


Primer examen parcial.


Matrices ortogonales

Matrices ortogonales. Criterio en términos de renglones y columnas.
Matrices ortogonales. Criterio en términos del producto interno, la norma y la distancia.
Rotaciones del plano.
Reflecciones del plano.
Rotaciones (transformaciones de Jacobi–Givens).
Cálculo de la rotación de Givens.
Proyección ortogonal sobre una recta.
Proyección ortogonal sobre un subespacio generado por un vector normalizado.
Reflexión ortogonal respecto a un hipersubespacio.
Reflecciones (transformaciones) de Householder.
Programación: Combinaciones lineales de vectores ortogonales.
Programación: Proyección ortogonal de un vector sobre la recta generada por un vector no nulo.
Programación: Reflección ortogonal respecto a un hipersubespacio.
Programación: Aplicar la reflección ortogonal (respecto a un hipersubespacio) a un vector o a cada columna de una matriz.
Programación: Construcción del vector que define la reflección de Householder.
Programación: Aplicar una rotación en dos coordenadas a un vector o a cada columna de una matriz.
Programación: Construcción de la rotación de Givens.
Tarea individual 3. Tema: Matrices ortogonales. Versión antigua.
Lista de problemas para examen. Tema: Matrices ortogonales.



Descomposición QR y el problema de mínimos cuadrados

Problema de mínimos cuadrados.
Proyección ortogonal sobre el subespacio generado por una lista ortogonal de vectores.
Descomposición QR por medio de la ortonormalización de Gram–Schmidt.
Descomposición QR por medio del método modificado de Gram–Schmidt.
Descomposición QR usando reflectores de Householder.
Descomposición QR usando rotaciones de Givens.
Unicidad de la descomposición QR.
Solución de sistemas de ecuaciones lineales por medio de la descomposición QR.
Fórmula para el gradiente de una forma cuadrática.
Solución del problema de mínimos cuadrados.
Solución del problema de mínimos cuadrados via una descomposición QR.
Matrices para el ajuste polinomial y trigonométrico.
Ajuste polinomial y trigonométrico.
Ajuste polinomial y trigonométrico.
Programación: El método modificado de Gram–Schmidt.
Programación: Descomposición QR reducida con el método modificado de Gram–Schmidt.
Programación: Descomposición QR completa usando reflexiones de Householder.
Programación: Solución de sistemas de ecuaciones lineales con la descomposición QR.
Programación: Solución del problema de mínimos cuadrados por medio de la descomposición QR.
Programación: Construcción de la matriz de Vandermonde.
Programación: Construcción de la matriz para evaluar polinomios trigonométricos en puntos dados.
Programación: Ajuste de curvas por polinomios algebraicos.
Programación: Ajuste de curvas por polinomios trigonométricos.
Ejemplo de combinar GNU Octave con TikZ.
Tarea individual 4. Ajuste de datos con mínimos cuadrados. Versión actual.
Lista de problemas teóricos. Tema: Descomposición QR.


Segundo examen parcial.


Métodos iterativos para sistemas lineales

Discretización de ecuaciones diferenciales.
Normas de vectores en Rn (repaso).
Normas matriciales inducidas por normas vectoriales.
Norma matricial inducida por la norma-máximo.
Norma matricial inducida por la 1-norma vectorial.
Teorema de Banach del punto fijo.
Métodos iterativos de Jacobi y de Gauss–Seidel en coordenadas.
Métodos iterativos de Jacobi y de Gauss–Seidel en forma matricial.
Convergencia del método de Jacobi para matrices estrictamente diagonal dominantes.
Convergencia del método de Gauss–Seidel. Tarea adicional.
Fórmula para el gradiente de una forma cuadrática.
De la solución de un sistema de ecuaciones lineales a la minimización de una forma cuadrática.
Minimización de una forma cuadrática con sumandos lineales sobre una recta.
Método del gradiente (método del descenso en el sentido del antigradiente, máximo descenso).
Método de direcciones conjugadas y su convergencia.
Método de gradientes conjugados.
Apuntes escritos por Lourdes Fabiola Uribe Richaud y Juan Esaú Trejo Espino.
Método del gradiente conjugado, justificación teórica.
Método del gradiente conjugado con precondicionamiento.
Programación de métodos iterativos para resolver sistemas de ecuaciones lineales.
Programación: Normas en Rn.
Programación: Normas matriciales asociadas a las normas vectoriales inf y 1.
Programación: Método babilónico para calcular raíces cuadradas (para entender mejor la idea de métodos iterativos).
Programación: Métodos de Jacobi y de Gauss–Seidel en coordenadas.
Programación: Método de Jacobi en la forma matricial.
Programación: Método de Gauss–Seidel en la forma matricial.
Programación: El método iterativo con direcciones aleatorias y con un dibujo.
Programación: Método de descenso en el sentido del antigradiente.
Programación: Producto interno asociado a una matriz real simétrica positiva definida.
Programación: Método iterativo con direcciones conjugadas.
Programación: Método de gradiente conjugado.
Programación: Comparación de varios métodos iterativos.
Tarea individual 5. Tema: Métodos iterativos para resolver sistemas de ecuaciones lineales. Versión antigua (mayo del 2017).
Lista de problemas teóricos. Tema: Métodos iterativos para sistemas lineales.


Valores singulares y valores propios

Propiedades de valores y vectores propios de matrices hermitianas (repaso).
Ejemplo de descomposición en valores singulares de una matriz 2 por 2.
Ejemplo de descomposición en valores singulares de una matriz 2 por 3.
Descomposición en valores singulares: definición y algunas propiedades elementales.
Existencia de una descomposición en valores singulares.
Número de condicionamiento y su relación con la descomposición en valores singulares.
Idea de descomposición de Schur (triangulación de Schur).
Valores y vectores propios de matrices reales simétricas de orden 2.
Idea del método de Jacobi para calcular los valores propios.
Reducción unitaria de una matriz cuadrada general a una matriz de Hessenberg.
Teorema de Gershgorin sobre los valores propios.
Lista de problemas teóricos. Tema: Valores singulares y valores propios.
Tercer examen parcial.

Matrices especiales

Tareas de matices especiales (se hacen por equipos).
Matrices tridiagonales. Esta clase de matrices sirve como modelo y no se puede elegir para hacer la tarea.
Matrices de Toeplitz y su relación con matrices circulantes.
Matrices de Laplace–Dirichlet asociadas a mallas rectangulares (discretización de ecuaciones diferenciales en derivadas parciales sobre dominios rectangulares).
Matrices asociadas al problema de Dirichlet sobre una clase de árboles.
Matrices de sistemas de ecuaciones para calcular los coeficientes de B-splines de grados 3, 4, 5.
Matrices de sistemas de ecuaciones para calcular los coeficientes de interpolación polinomial segmentaria de quinto grado (quintic splines).
Se recomienda repasar los conceptos de interpolación segmentaria lineal e interpolación segmentaria cúbica.
Matrices correspondientes a filtros unidimensionales de imágenes.
Matrices reales simétricas de banda.
Matrices pentadiagonales que surgen al discretizar algunas ecuaciones diferenciales ordinarias.
Algunos algoritmos para matrices bidiagonales (por ejemplo, las descomposiciones QR y SVD).
Algunos algoritmos para matrices tridiagonales reales simétricas (por ejemplo, las descomposición LDLt y el cálculo de valores propios).
El camino más barato entre dos vértices en un grafo dirigido, donde los precios de las aristas dependen del tiempo.




Literatura

  1. Watkins, David S., Fundamentals of Matrix Computations.
    Third Edition. Wiley, 2010.
    ISBN: 978-0-470-52833-4.
  2. Golub, Gene H.; Van Loan, Charles F., Matrix Computations.
    Third Edition. The Johns Hopkins University Press, 1996.
  3. Bau III, David; Trefethen, Lloyd N. Numerical linear algebra.
    Philadelphia: Society for Industrial and Applied Mathematics, 1997.


.
Visitor counter
  craigslist view counter
Hit Web Counter