Paralelización de la factorización LDL T usando el lenguaje de programación paralela ZPL

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Paralelización de la factorización LDL T usando el lenguaje de programación paralela ZPL"

Transcripción

1 REVISTA INGENIERÍA UC. Vol. 15, N o 2, 72-80, 2008 Paralelización de la factorización LDL T usando el lenguaje de programación paralela ZPL Edwin Vargas, Enrique Flores, Demetrio Rey Lago Instituto de Matemática y Cálculo Aplicado, Facultad de Ingeniería, Universidad de Carabobo, Valencia, Venezuela Resumen Se muestra la implementación de la factorización de una matriz simétrica positiva a la forma LDLT, usando el Lenguaje de Programación Paralela ZPL. Se hace una descripción del lenguaje ZPL, se realizan pruebas a matrices, y se determina la aceleración y la eficiencia variando la cantidad de procesadores. Se obtuvo como resultado la disminución del tiempo de ejecución del programa a medida que se aumenta el número de procesadores y se determinó que aproximadamente un 90% del tiempo de ejecución se consume en el algoritmo de multiplicación de una matriz por un vector.. Palabras clave: Factorización LDL T, programación paralela, ZPL. Parallelization of the LDLT decomposition with the ZPL programming language Abstract It is shown the parallelization of the LDLT factorization of a positive symmetrical matrix using the ZPL Parallel Programming Language. A brief description of the language ZPL is made, and tests to matrices are made, and acceleration and efficiency is determine varying the quantity of processors. The result obtained was a decreasing in the runtime of the program as it increases the number of processors and it was determined that approximately 90% of execution time is consumed in the algorithm of matrix - vector product. Keywords: LDL T decomposition, parallel programming, ZPL. 1. INTRODUCCIÓN La factorización de una matriz A de n x n, simétrica positiva, se realiza mediante el producto de tres matrices; una matriz L, o triangular inferior unitaria, una matriz D, o diagonal y una matriz L T, quedando A = LDL T, es decir, la matriz triangular inferior transpuesta [1], como se ilustra a continuación: a11 a21 a31 a a21 a22 a32 a42 L = a 31 a32 a 33 a43 L31 L a41 a42 a43 a44 L41 L42 L43 1 d L21 L31 L d2 L32 L d L d Este método de factorización, es llamado la Descomposición de Cholesky. Para este método la Matriz A es expresada en la forma: A = LDL T (1) Los elementos de las matrices L y D son determinados por medio de la ecuación (1), el elemento A n (i,j) de la Matriz A, se calcula a través de [2]: ó j = An ( i, j) LikdkLjk, 1 j i 1 (2) k= 1 j 1 = (, ) Lij dj An i j LikdkLjj, 1 j i 1 (3) k= 1 72 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

2 Vargas, Flores y Rey Lago mientras que los elementos de la matriz diagonal D se obtienen: ó con d i = A ( i, i) n i 1 di = An ( i, i) L k = 1 2 ik d i k = 1 k Una aplicación de la factorización LDL T está estrictamente ligada a la resolución de sistemas de ecuaciones. En matemática y álgebra lineal, un sistema lineal de ecuaciones es un conjunto de ecuaciones lineales sobre un cuerpo o un anillo conmutativo. El problema de los sistemas lineales de ecuaciones es uno de los más antiguos de la matemática y tiene una infinidad de aplicaciones, como en procesamiento digital de señales, estimación, predicción y más generalmente en programación lineal así como en la aproximación de problemas no lineales de análisis numérico. El desarrollo de la factorización de una matriz A de tamaño n por n simétrica positiva a través de la descomposición de Cholesky involucra gran cantidad de operaciones con matrices y vectores. Como el lenguaje de programación ZPL es un lenguaje orientado a operaciones con vectores y matrices que presenta buen desempeño tanto en computadoras secuenciales como en computadoras paralelas [3], se utilizará para desarrollar un algoritmo para realizar la mencionada factorización, se realizarán pruebas en un cluster de computadores con el algoritmo desarrollado que muestren los tiempos de procesamiento, la aceleración y la eficiencia variando el tamaño de las matrices de prueba y la cantidad de procesadores en el cluster. 2. PROGRAMACIÓN PARALELA Y UNA IN- TRODUCCIÓN AL LENGUAJE ZPL La programación paralela consiste en el uso de múltiples computadores, o de computadores con múltiples procesadores internos, para resolver un problema a alta velocidad. El paralelismo puede enfocarse L ik d k L ik, i 2 (4) (5) d1 = A n (1,1) (6) hacia la arquitectura (procesadores de memoria compartida, multiprocesadores de paso de mensajes), o hacia la programación (paralelismo de datos, paralelismo de tareas). Las técnicas de programación en esta área pueden clasificarse en paralelismo explicito (el programador es quien define el paralelismo dentro del programa) o paralelismo implícito (es el lenguaje de programación quien define el paralelismo) [3]. En cuanto al lenguaje ZPL, se puede mencionar que es un lenguaje de programación que es especialmente efectivo para calcular problemas de ciencias e ingeniería. Su intención es reemplazar lenguajes como Fortran y C en la computación técnica. Es un lenguaje de programación conveniente para cálculos computacionales de ingeniería y ciencias [4], ZPL es un lenguaje de programación implícitamente paralelo, fue diseñado para simplificar la programación de computadoras paralelas, los programadores no necesitan especificar cómo se ejecutan concurrentemente los cálculos, ni siquiera insertan comunicación entre procesos. Los programas escritos en ZPL, muestran una relativa simplicidad, lo que hace que sean fácil de leer y entender, conservando aún un modelo sofisticado de paralelismo [5]. Los programas de ZPL escriben pocos ciclos y realizan un mínimo de manipulación de índices. El concepto principal de este lenguaje es la región, la cual es un conjunto de índices de un rango fijo El rango r de una región es el producto cartesiano de un número finito de secuencias enteras; los límites superiores e inferiores son fijados por el programador. Uno de los operadores más utilizados en el manejo de matrices a través del Lenguaje ZPL, es el operador Reduce (<<), el cual es una de las formas funcionales que pueden ser usadas en cálculos globales. Su función es reducir los arreglos a unos de menor orden, o incluso escalares. El operador << es antecedido por otro operador aritmético para llevar a cabo las reducciones [4]. En este mismo orden de ideas, una de las características más importantes de ZPL es la habilidad de llenar una matriz con copias de una fila o columna, o más generalmente, el llenar un arreglo de dimensión mayor con copias de otro arreglo de dimensión menor. Esta operación, llamada flooding en ZPL es una generalización de la idea de la promoción escalar [4]. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

3 Paralelización de la factorización LDL T usando el lenguaje ZPL 3. ALGORITMO DE FACTORIZACIÓN LDL T EN ZPL La programación de una aplicación paralela en ZPL consta de dos partes fundamentales, la configuración y definición de variables y regiones y la codificación del algoritmo haciendo uso de los operadores que hagan el uso más eficiente de la máquina paralela Configuración y definición de variables y regiones. La configuración y definición de variables se observan en la Figura 1 y consta de cuatro secciones: las variables de configuración (config var), la definición de las regiones, los tipos de datos a utilizar en el programa (type) y las variables a usar en el programa (var). Las variables de configuración (config var) son aquellos datos de entrada que se pueden modificar en el momento de invocar la ejecución del programa, para este caso se definió como variable de configuración: el orden la matriz cuadrada que se va a procesar. Luego se definieron tres regiones: la primera (R) conforma el espacio (filas y columnas) donde reside primariamente la matriz, luego se definieron dos regiones, una para la manipulación de vectores tipo fila (fila) y otra para el manejo de vectores tipo columna (col). Y por último, los tipos de datos a utilizar en el programa (type) y las variables a usar en el programa (var) Código del algoritmo paralelo El algoritmo para realizar la descomposición de Cholesky a una matriz A simétrica positiva, bajo el lenguaje de programación ZPL, es el mostrado en la Figura Datos 4. EXPERIMENTACIÓN Las matrices a utilizar, se generaron aleatoriamente, con elementos de tipo double. La dimensión de las mismas para los casos de prueba fueron: 100x100, 500x500 y 1000x1000. program LDLt; config var n : integer = 1000; region R = [1..n,1..n]; fila = [1,1..n]; col = [1..n,1]; -- Tamaño de la matriz -- Arreglo matricial de n por n -- Arreglo tipo vector fila de n elementos -- Arreglo tipo vector columna de n elementos type dtype = double; -- Dato de tipo real var f : file; -- Variable para lectura/escritura de archivos A, L,D : [R] dtype; -- Matriz de entrada simétrica, y matrices de salida time : double; -- Tiempo de duración del programa -- Variables Auxiliares V1 : [R] dtype; V, Diag :[fila] dtype; j : integer; Lf : [fila] dtype; Lcf : [R] dtype; Mmv : [R] dtype; Mmv1, Lj1 : [col] dtype; P1 : [fila] dtype; den, valor : double; Amaxj, Ajj, P : double; Ac : [col] dtype; Figura 1. Definición de las variables. 74 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

4 Vargas, Flores y Rey Lago for j := 1 to n do if j > 1 then -- Calculo de los elementos de la matriz D, -- almacenados en Diag [1,1..j-1] Lf := >>[j,1..j-1]l; [1,1..j-1] V:= Lf*Diag; [j,j] Ajj := max<< A; [1,1..j-1] P1 := Lf*V; [1,1..j-1] P := +<< P1; [1,j] V := Ajj - P; [1,j] Diag := max<< V; if j < n then -- Calculo de los elementos de la columna j por debajo de -- la diagonal de L [1,j] den := max<< V; [j+1..n,1] Ac := >>[j+1..n,j]a; -- Inicio de la Multiplicación de uma matriz por -- un vector [j+1..n,1..j-1] Lcf := >>[j+1..n,1..j-1]l; [1..n,1..j-1] V1 := >>[1,1..j-1] V; Mmv:= Lcf*V1; [Ar] Mmv1 := +<< [R] Mmv; -- Fin de la Multiplicación [j+1..n,1] [j+1..n,j] Lj1 := (Ac - Mmv1)/den; L:= >>[j+1..n,1] Lj1; end; else -- Calculo del primer elemento de la diagonal y la primera -- columna de L [j,j] Amaxj := max<< A; [1,1] V := Amaxj; [1,1] Diag := Amaxj; [2..n,1] L := A/Amaxj; end; [j,j] L:= 1; [1,j] [j,j] valor := max<< Diag; D := valor; end; Figura 2. Implementación del algoritmo de Factorización LDL T. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

5 Paralelización de la factorización LDL T usando el lenguaje ZPL 4.2. Plataforma computacional Todas las pruebas se desarrollaron en el cluster NIMBUS de la Facultad de Ingeniería de la Universidad de Carabobo, el cual posee un total de 8 nodos; cuatro con un Procesador del tipo Intel PIV de 2.4 Ghz, 1000 MB de memoria RAM, y los cuatro restantes con un Procesador del tipo Intel PIV de 3.0 Ghz, 1000 MB de memoria RAM. Red de interconexión entre nodos: 1 Gigabit ethernet. La arquitectura del cluster en las pruebas hechas es un arreglo ( grid ) de n por 1, siendo n el número de procesadores, como se muestra en la Figura 3. El valor de n está comprendido desde 1 hasta Figura 3. Arquitectura del cluster para las pruebas. 5. RESULTADOS En las Tablas 1, 2 y 3 se observa el tiempo de ejecución, medido en segundo, la aceleración y la eficiencia del algoritmo implementado, junto al tiempo que tarda en realizar el producto matriz por vector y el porcentaje de este tiempo en relación al tiempo total de ejecución del programa. n Grid Procesos Tiempo Total (tt) Aceleración Tabla 1. Matriz 100 x 100. Eficiencia Tiempo Multiplicación de Matrices (tm) Porcentaje de tm respecto a tt 1x % 2x % 3x % 4x % 5x % 6x % 7x % 8x % Grid Procesos Tiempo Total (tt) Aceleración Tabla 2. Matriz 500 x 500. Eficiencia Tiempo Multiplicación de Matrices (tm) Porcentaje de tm respecto a tt 1x % 2x % 3x % 4x % 5x % 6x % 7x % 8x % 76 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

6 Vargas, Flores y Rey Lago En las Figuras 4, 5 y 6 se grafican los resultados de los tiempos de ejecución mostrados en las Tablas 1, 2 y 3 respectivamente. En la Figura 4 se evidencia que no existe una tendencia clara a la reducción del tiempo de ejecución del algoritmo a medida que se aumenta el número de procesadores. Caso distinto se aprecia en la Figura 5, donde se gráfica el tiempo de ejecución del programa para una matriz de mayor dimensión, donde se observa claramente como dicho tiempo disminuye a medida que se aumenta el número de procesadores, lo cual es consistente con la reducción del costo de comunicación respecto al cómputo útil del algoritmo sobre una cantidad de datos mayor. Tabla 3. Matriz 1000 x Grid Procesos Tiempo Total (tt) Aceleración Eficiencia Tiempo Multiplicación de Matrices (tm) Porcentaje de tm respecto a tt 1x % 2x % 3x % 4x % 5x % 6x % 7x % 8x % Tiempo de Ejecución Tiempo (s) 0,4 0,35 0,3 0,25 0,2 0,15 0,1 0, Número de Procesadores Figura 4. Tiempo de ejecución Matriz 100x100. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

7 Paralelización de la factorización LDL T usando el lenguaje ZPL En la Figura 6, donde se grafica el tiempo de ejecución del algoritmo versus el número de procesadores para una matriz de 1000x1000, se evidencia una disminución de dicho tiempo a medida que se aumenta el número de procesadores. Aunque se observa que cuando se utilizan 5 procesadores el tiempo de ejecución aumenta de segundos a segundos, y luego comienza a disminuir nuevamente, esto se debe a la heterogeneidad del cluster, ya que las primeras 4 pruebas se realizaron con los procesadores de Tiempo de Ejecución Tiempo (s) Número de Procesadores Figura 5. Tiempo de ejecución Matriz 500x500 Tiempo de Ejecución Tiempo (s) Número de Procesadores Figura 6. Tiempo de ejecución Matriz 1000x Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

8 Vargas, Flores y Rey Lago mayor velocidad (3.0 Ghz) mientras que una vez que se comienzan a realizar las pruebas con más de 4 procesadores, se toman los procesadores de menor velocidad (2.4 Ghz), haciendo que el tiempo de ejecución del algoritmo se rija por los procesadores de menor velocidad, ya que los procesadores de mayor velocidad deben esperar a que los de menor velocidad efectúen las operaciones y poder continuar con la ejecución. También se destaca lo señalado en la Tabla 2, en cuanto a la aceleración, que aumenta a medida que aumenta el número de procesadores. Por otro lado, observando el porcentaje de tiempo que el algoritmo tarda en realizar el ciclo de multiplicación de matriz por vector respecto al tiempo total de ejecución del algoritmo de factorización en las Tablas 1, 2 y 3, se puede concluir que el mismo en muchos casos se encuentra por encima del 90% 8. CONCLUSIONES Se presentó una primera versión de la factorización de una matriz A simétrica positiva a la forma LDL T mediante un algoritmo basado en los conceptos claves del lenguaje de programación paralelo ZPL como lo son el uso de regiones y los operadores paralelos. Las curvas de tiempo de ejecución de las matrices de prueba 100x100 no muestran una tendencia a disminuir cuando se aumenta el número de procesadores del cluster Nimbus. Esto puede deberse al alto costo de la comunicación entre los procesadores. En la matrices de prueba de 500x500 y 1000x1000 sí se observa una clara disminución del tiempo de ejecución a medida que se aumenta el número de procesadores, lo cual demuestra que la implementación hace buen uso de la comunicación entre procesadores. También se puede evidenciar, que a medida que se aumenta el tamaño de la matriz, ZPL permite mejorar el desempeño en cuanto al factor de aceleración. En cuanto al tiempo de ejecución del algoritmo de factorización de la matriz A, se puede mencionar, que la mayor parte del mismo se debe al tiempo que tarda en realizar el proceso de multiplicar una matriz por un vector. En el caso de la matriz 1000x1000, el porcentaje del tiempo de ejecución de la multiplicación de una matriz por un vector, respecto al tiempo total de la ejecución del programa, se encuentra por encima del 90%, como se evidencia en la Tabla RECOMENDACIONES El algoritmo de factorización LDL T propuesto puede mejorarse, ya que es una primera versión en la que se muestra de manera muy sencilla dicha factorización, sería provechoso agregar rutinas que optimicen los cálculos, como por ejemplo, haciendo uso de las técnicas de cómo el producto matriz-vector de la manera que lo implementan las rutinas BLAS, sólo que debe considerarse para ello la utilización de operadores que tengan poca comunicación para no degradar el rendimiento del algoritmo en arquitecturas multiprocesador. Como continuación de la presenta investigación, se recomienda la implementación de un algoritmo de multiplicación de una matriz por un vector, con la finalidad de disminuir los tiempos de ejecución del algoritmo de factorización de Cholesky. Sería provechoso evaluar el algoritmo usando un cluster o una supercomputadora con un mayor número de nodos y mayor capacidad de memoria, ya que algunas gráficas muestran una tendencia de disminución del tiempo de ejecución para un mayor número de nodos en el caso de matrices de gran tamaño. En virtud que los nodos del cluster donde se hicieron las pruebas no son iguales, también sería de interés hacer las mismas pruebas con un cluster cuyos nodos sean todos con las mismas características computacionales, y comparar los resultados con los obtenidos en el presente trabajo. 10. REFERENCIAS [1] Burden, R. y Faires, J. (2003) Análisis Numérico. Séptima Edición. Editorial Thomson. México. [2] Rabiner, L. y Schafer, R. Digital Processing of Speech Signals. Prentice-Hall. New Jersey. Estados Unidos. [3] Rey, D. y Canning, J. (2007). Streams: Una Librería de Habilitación de Paralelismo Mixto de Tareas en Cascada y Paralelismo de Datos para el Lenguaje Paralelo de Alto Nivel ZPL. Facultad de Ingeniería. Universidad de Carabobo. Venezuela. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

9 [4] Snyder, L. (1999). A programmer s Guide to ZPL. The MIT Press. [5] Castellano, J., Ramírez, J. y Rey, D. (2007). Paralelización de la Factorización LU usando el Lenguaje ZPL. Instituto de Matemática y Cálculo Aplicado. Facultad de Ingeniería. Universidad de Carabobo. Venezuela. Paralelización de la factorización LDL T usando el lenguaje ZPL 80 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

Salvador Macías Hernández Rodolfo Gómez Vega Factorización LU. Programa 7/9/2003 Tarea No.4

Salvador Macías Hernández Rodolfo Gómez Vega Factorización LU. Programa 7/9/2003 Tarea No.4 E.99102.1 MÉTODOS COMPUTACIONALES EN INGENIERÍA Salvador Macías Hernández Rodolfo Gómez Vega Factorización LU. Programa 7/9/2003 Tarea No.4 INTRODUCCIÓN. Supongamos que A se puede factorizar como el producto

Más detalles

Resolución de problemas en paralelo

Resolución de problemas en paralelo Resolución de problemas en paralelo Algoritmos Paralelos Tema 1. Introducción a la computación paralela (segunda parte) Vicente Cerverón Universitat de València Resolución de problemas en paralelo Descomposición

Más detalles

Capítulo 5: Comparación con ScaLAPACK

Capítulo 5: Comparación con ScaLAPACK Capítulo 5: Comparación con ScaLAPACK En este capítulo se presentan dos aspectos importantes en cuanto a la validez y utilización de los aportes de esta tesis: 1) Aplicación de los principios de paralelización

Más detalles

CLUSTER FING: PARALELISMO de MEMORIA DISTRIBUIDA

CLUSTER FING: PARALELISMO de MEMORIA DISTRIBUIDA CLUSTER FING: PARALELISMO de MEMORIA DISTRIBUIDA SERGIO NESMACHNOW Centro de Cálculo, Instituto de Computación FACULTAD DE INGENIERÍA, UNIVERSIDAD DE LA REPÚBLICA, URUGUAY CONTENIDO Introducción: arquitecturas

Más detalles

Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico.

Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico. Desarrollo de un cluster computacional para la compilación de algoritmos en paralelo en el Observatorio Astronómico. John Jairo Parra Pérez Resumen Este artículo muestra cómo funciona la supercomputación

Más detalles

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Tema 3 Resolución de Sistemas de Ecuaciones Lineales

Tema 3 Resolución de Sistemas de Ecuaciones Lineales Tema Resolución de Sistemas de Ecuaciones Lineales Índice Introducción 2 Método de Gauss 2 Resolución de sistemas triangulares 22 Triangulación por el método de Gauss 2 Variante Gauss-Jordan 24 Comentarios

Más detalles

Factorizaciones de Cholesky, matrices definidas. semidefinidas positivas.

Factorizaciones de Cholesky, matrices definidas. semidefinidas positivas. Factorizaciones de Cholesky, matrices definidas y semidefinidas positivas Héctor Manuel Mora Escobar Universidad Central, Bogotá hectormora@yahoo.com Junio de 2011 1 Introducción Este documento presenta,

Más detalles

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES CÁRDENAS ESPINOSA CÉSAR OCTAVIO racsec_05@hotmail.com Boleta: 2009350122 CASTILLO GUTIÉRREZ

Más detalles

Comenzaremos recordando algunas definiciones y propiedades estudiadas en el capítulo anterior.

Comenzaremos recordando algunas definiciones y propiedades estudiadas en el capítulo anterior. Capítulo 2 Matrices En el capítulo anterior hemos utilizado matrices para la resolución de sistemas de ecuaciones lineales y hemos visto que, para n, m N, el conjunto de las matrices de n filas y m columnas

Más detalles

Matrices. Definiciones básicas de matrices. www.math.com.mx. José de Jesús Angel Angel. jjaa@math.com.mx

Matrices. Definiciones básicas de matrices. www.math.com.mx. José de Jesús Angel Angel. jjaa@math.com.mx Matrices Definiciones básicas de matrices wwwmathcommx José de Jesús Angel Angel jjaa@mathcommx MathCon c 2007-2008 Contenido 1 Matrices 2 11 Matrices cuadradas 3 12 Matriz transpuesta 4 13 Matriz identidad

Más detalles

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas. Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una

Más detalles

4. Programación Paralela

4. Programación Paralela 4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios

Más detalles

Descomposición de dominios

Descomposición de dominios Descomposición de dominios Miguel Vargas 27/10/10 1/29 Contenido Contenido Solución de ecuaciones diferenciales con descomposición de dominios Dominios sin traslape, complemento de Schur Método alternante

Más detalles

Resolución de Problemas

Resolución de Problemas Resolución de Problemas con algoritmos Colaboratorio de Computación Avanzada (CNCA) 2015 1 / 27 Contenidos 1 Introducción 2 Elementos de algoritmos Elementos Variables Estructuras de Control Condicionales

Más detalles

Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i.

Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i. Filtros Digitales Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i. En electrónica, ciencias computacionales y matemáticas, un filtro

Más detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570

Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570 Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570 Juan Carlos Fernández Rodríguez. Área de HPC. Centro Informático Científico de Andalucía (CICA) Junta de Andalucía

Más detalles

Algorítmica y Lenguajes de Programación. Ordenación (i)

Algorítmica y Lenguajes de Programación. Ordenación (i) Algorítmica y Lenguajes de Programación Ordenación (i) Ordenación. Introducción A lo largo del curso hemos visto distintas formas de almacenar datos: Vectores. Matrices. Ficheros Listas (pilas y colas)

Más detalles

Primer Parcial de Programación 3 (1/10/2009)

Primer Parcial de Programación 3 (1/10/2009) Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión

Más detalles

CURSO CERO. Departamento de Matemáticas. Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre

CURSO CERO. Departamento de Matemáticas. Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre CURSO CERO Departamento de Matemáticas Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre Capítulo 1 La demostración matemática Demostración por inducción El razonamiento por inducción es una

Más detalles

Matrices: Conceptos y Operaciones Básicas

Matrices: Conceptos y Operaciones Básicas Matrices: Conceptos y Operaciones Básicas Departamento de Matemáticas, CCIR/ITESM 8 de septiembre de 010 Índice 111 Introducción 1 11 Matriz 1 113 Igualdad entre matrices 11 Matrices especiales 3 115 Suma

Más detalles

Matrices equivalentes. El método de Gauss

Matrices equivalentes. El método de Gauss Matrices equivalentes. El método de Gauss Dada una matriz A cualquiera decimos que B es equivalente a A si podemos transformar A en B mediante una combinación de las siguientes operaciones: Multiplicar

Más detalles

1. INVERSA DE UNA MATRIZ REGULAR

1. INVERSA DE UNA MATRIZ REGULAR . INVERSA DE UNA MATRIZ REGULAR Calcular la inversa de una matriz regular es un trabajo bastante tedioso. A través de ejemplos se expondrán diferentes técnicas para calcular la matriz inversa de una matriz

Más detalles

Modelo de aplicaciones CUDA

Modelo de aplicaciones CUDA Modelo de aplicaciones CUDA Utilización de GPGPUs: las placas gráficas se utilizan en el contexto de una CPU: host (CPU) + uno o varios device o GPUs Procesadores masivamente paralelos equipados con muchas

Más detalles

Manual del Desarrollador

Manual del Desarrollador Manual del Desarrollador Getsir TABLA DE CONTENIDO Introducción... 3 Ejecutar y validar el funcionamiento del proyecto.... 3 Arquitecta de la aplicación... 4 Relación entre las vistas, controladores y

Más detalles

UNIVERSIDAD DE ATACAMA

UNIVERSIDAD DE ATACAMA UNIVERSIDAD DE ATACAMA FACULTAD DE INGENIERÍA / DEPARTAMENTO DE MATEMÁTICA ALGEBRA II Guía de Matrices y Determinantes Primer año Plan Común de Ingeniería Segundo Semestre 2009 1. Hallar una matriz B que

Más detalles

Introducción a la Programación en MATLAB

Introducción a la Programación en MATLAB Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos

Más detalles

SOMI XVIII Congreso de Instrumentación TECNOLOGIAS DE LA INFORMACION BSR18171

SOMI XVIII Congreso de Instrumentación TECNOLOGIAS DE LA INFORMACION BSR18171 SOFTWARE DE CAJERO AUTOMÁTICO UTILIZANDO PROGRAMACIÓN CONCURRENTE Y PARALELA Bárbara Emma Sánchez Rinza y María Lucero Aranda Ortiz. Benemérita Universidad Autónoma de Puebla edifico 135 14 sur y Av. San

Más detalles

ALGEBRA LINEAL. Héctor Jairo Martínez R. Ana María Sanabria R.

ALGEBRA LINEAL. Héctor Jairo Martínez R. Ana María Sanabria R. ALGEBRA LINEAL Héctor Jairo Martínez R. Ana María Sanabria R. SEGUNDO SEMESTRE 8 Índice general. SISTEMAS DE ECUACIONES LINEALES.. Introducción................................................ Conceptos

Más detalles

MATRICES PRODUCTO DE MATRICES POTENCIAS NATURALES DE MATRICES CUADRADAS

MATRICES PRODUCTO DE MATRICES POTENCIAS NATURALES DE MATRICES CUADRADAS Tema 1.- MATRICES MATRICES PRODUCTO DE MATRICES POTENCIAS NATURALES DE MATRICES CUADRADAS Fundamentos Matemáticos de la Ingeniería 1 Un poco de historia Lord Cayley es uno de los fundadores de la teoría

Más detalles

Es un software del tipo MAP-REDUCE realizada usando la librería MPI para la

Es un software del tipo MAP-REDUCE realizada usando la librería MPI para la Es un software del tipo MAP-REDUCE realizada usando la librería MPI para la ejecución de programas secuenciales de forma paralela con el requisito de no modificar los programas secuenciales. La idea fundamental

Más detalles

I. RELACIONES Y FUNCIONES 1.1. PRODUCTO CARTESIANO { }

I. RELACIONES Y FUNCIONES 1.1. PRODUCTO CARTESIANO { } I. RELACIONES Y FUNCIONES PAREJAS ORDENADAS Una pareja ordenada se compone de dos elementos x y y, escribiéndose ( x, y ) donde x es el primer elemento y y el segundo elemento. Teniéndose que dos parejas

Más detalles

Apéndice A. Repaso de Matrices

Apéndice A. Repaso de Matrices Apéndice A. Repaso de Matrices.-Definición: Una matriz es una arreglo rectangular de números reales dispuestos en filas y columnas. Una matriz com m filas y n columnas se dice que es de orden m x n de

Más detalles

VI PLAN DE PRUEBAS, RESULTADOS Y RECOMENDACIONES

VI PLAN DE PRUEBAS, RESULTADOS Y RECOMENDACIONES VI PLAN DE PRUEBAS, RESULTADOS Y RECOMENDACIONES En la presente sección, se realiza el correspondiente plan de pruebas del prototipo con la finalidad de exponer las estrategias y recursos necesarios para

Más detalles

Estructuras algebraicas

Estructuras algebraicas Tema 2 Estructuras algebraicas básicas 2.1. Operación interna Definición 29. Dados tres conjuntos A, B y C, se llama ley de composición en los conjuntos A y B y resultado en el conjunto C, y se denota

Más detalles

1. ESPACIOS VECTORIALES

1. ESPACIOS VECTORIALES 1 1. ESPACIOS VECTORIALES 1.1. ESPACIOS VECTORIALES. SUBESPACIOS VECTORIALES Denición 1. (Espacio vectorial) Decimos que un conjunto no vacío V es un espacio vectorial sobre un cuerpo K, o K-espacio vectorial,

Más detalles

Gradiente conjugado. MSc. Miguel Vargas-Félix miguelvargas@cimat.mx http://www.cimat.mx/~miguelvargas 07/09/11 1/23

Gradiente conjugado. MSc. Miguel Vargas-Félix miguelvargas@cimat.mx http://www.cimat.mx/~miguelvargas 07/09/11 1/23 Gradiente conjugado MSc. Miguel Vargas-Félix miguelvargas@cimat.mx http://www.cimat.mx/~miguelvargas 07/09/11 1/23 Contenido Contenido Estructura de una matriz rala a partir de conectividades Compressed

Más detalles

8. CONCLUSIONES Y RECOMENDACIONES

8. CONCLUSIONES Y RECOMENDACIONES 8. CONCLUSIONES Y RECOMENDACIONES 8.1 Conclusiones En el proyecto de tesis Realización de software educativo para simular la dispersión de contaminantes atmosféricos se desarrolló un programa computacional

Más detalles

Algoritmo para resolver exactamente sistemas de ecuaciones lineales con coeficientes enteros

Algoritmo para resolver exactamente sistemas de ecuaciones lineales con coeficientes enteros Miscelánea Matemática 43 (2006) 7 132 SMM Algoritmo para resolver exactamente sistemas de ecuaciones lineales con coeficientes enteros Daniel Gómez-García Facultad de Ingeniería Universidad Autónoma de

Más detalles

Métodos Iterativos para Resolver Sistemas Lineales

Métodos Iterativos para Resolver Sistemas Lineales Métodos Iterativos para Resolver Sistemas Lineales Departamento de Matemáticas, CCIR/ITESM 17 de julio de 2009 Índice 3.1. Introducción............................................... 1 3.2. Objetivos................................................

Más detalles

Computación Científica en Paralelo

Computación Científica en Paralelo Computación Científica en Paralelo Luis Miguel de la Cruz luiggix@gmail.com www.dci.dgsca.unam.mx/lmcs Unidad de Investigación en Cómputo Aplicado DGSCA-UNAM. Posgrado en Ciencia e Ingeniería de la Computación

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

GPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS

GPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS GPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS MAURO CANABÉ SERGIO NESMACHNOW Centro de Cálculo, Facultad de Ingeniería Universidad de la República, Uruguay GPU IMPLEMENTATIONS

Más detalles

Proyecto de Innovación Docente: Guía multimedia para la elaboración de un modelo econométrico.

Proyecto de Innovación Docente: Guía multimedia para la elaboración de un modelo econométrico. 1 Primeros pasos en R. Al iniciarse R (ver Figura 16), R espera la entrada de órdenes y presenta un símbolo para indicarlo. El símbolo asignado, como puede observarse al final, es > Figura 16. Pantalla

Más detalles

Métodos Computacionales 0302390

Métodos Computacionales 0302390 Métodos Computacionales 0302390 Fecha de actualización Tue, 28 Jul 2015 06:28:33-050 Usuario que realiza la actualización Facultad Autorización Vicedecano Última versión del curso 1 Número de Acta del

Más detalles

Traslación de puntos

Traslación de puntos LECCIÓN CONDENSADA 9.1 Traslación de puntos En esta lección trasladarás figuras en el plano de coordenadas definirás una traslación al describir cómo afecta un punto general (, ) Una regla matemática que

Más detalles

Capacidad de procesamiento del compilador Python para el Sistema Operativo Windows y Linux Palabras Clave:

Capacidad de procesamiento del compilador Python para el Sistema Operativo Windows y Linux Palabras Clave: Capacidad de procesamiento del compilador Python para el Sistema Operativo Windows y Linux Stiven Unsihuay, Paulo Pereira, Norma León unsihuay_carlos@hotmail.com, paulopereiraa10@gmail.com, nleonl@usmp.pe

Más detalles

Matemáticas I: Hoja 3 Espacios vectoriales y subespacios vectoriales

Matemáticas I: Hoja 3 Espacios vectoriales y subespacios vectoriales Matemáticas I: Hoa 3 Espacios vectoriales y subespacios vectoriales Eercicio 1. Demostrar que los vectores v 1, v 2, v 3, v 4 expresados en la base canónica forman una base. Dar las coordenadas del vector

Más detalles

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008 INTRODUCCIÓN Estructura de Datos Tipos Abstractos de Datos (TAD S) Para poder obtener un programa que resuelva un problema dado, son necesarios varios pasos : La formulación y especificación del problema

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

Facultad de Ingeniería ISSN: 0121-1129 revista.ingenieria@uptc.edu.co. Universidad Pedagógica y Tecnológica de Colombia. Colombia

Facultad de Ingeniería ISSN: 0121-1129 revista.ingenieria@uptc.edu.co. Universidad Pedagógica y Tecnológica de Colombia. Colombia Facultad de Ingeniería ISSN: 0121-1129 revista.ingenieria@uptc.edu.co Universidad Pedagógica y Tecnológica de Colombia Colombia Amézquita-Mesa, Diego Germán; Amézquita-Becerra, Germán; Galindo-Parra, Omaira

Más detalles

Calculo Actuarial con Cadenas de Markov, una aplicación

Calculo Actuarial con Cadenas de Markov, una aplicación Calculo Actuarial con Cadenas de Marov, una aplicación Xavier Cabezas, Fernando Sandoya 2 Ingeniero en Estadística Informática 2 2 Director de esis, Matemático, Escuela Politécnica Nacional 996, Profesor

Más detalles

Tópicos de implementación en paralelo

Tópicos de implementación en paralelo Apéndice C Esquema PGP. Implementación en un entorno paralelo. Para poder abordar eficazmente la simulación computacional de grandes problemas estructurales, es necesario utilizar estrategias numéricas

Más detalles

Curso cero Matemáticas en informática :

Curso cero Matemáticas en informática : y Curso cero Matemáticas en informática : y Septiembre 2007 y y Se llama matriz de orden m n a cualquier conjunto de elementos dispuestos en m filas y n columnas: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n

Más detalles

Fundamentos de Matemática Aplicada. (Prácticas)

Fundamentos de Matemática Aplicada. (Prácticas) Fundamentos de Matemática Aplicada (Prácticas) Damián Ginestar Peiró UNIVERSIDAD POLITÉCNICA DE VALENCIA 1 Índice general 1. Matrices dispersas 3 1.0.1. Esquemas de almacenamiento.............. 3 1.0.2.

Más detalles

EVALUACIÓN COMPARADA DEL RENDIMIENTO DEL PROCESADOR INTEL 5570 (NEHALEM)

EVALUACIÓN COMPARADA DEL RENDIMIENTO DEL PROCESADOR INTEL 5570 (NEHALEM) EVALUACIÓN COMPARADA DEL RENDIMIENTO DEL PROCESADOR INTEL 5570 (NEHALEM) Carlos Bernal, Ana Silva, Marceliano Marrón, Juan Antonio Ortega, Claudio J. Arjona Área de HPC Centro Informático Científico de

Más detalles

DISEÑO DE UN ALGORITMO PARALELO PARA CODIFICACIÓN DE VIDEO MPEG4, SOBRE UN CLUSTER DE COMPUTADORAS PERSONALES.

DISEÑO DE UN ALGORITMO PARALELO PARA CODIFICACIÓN DE VIDEO MPEG4, SOBRE UN CLUSTER DE COMPUTADORAS PERSONALES. DISEÑO DE UN ALGORITMO PARALELO PARA CODIFICACIÓN DE VIDEO MPEG4, SOBRE UN CLUSTER DE COMPUTADORAS PERSONALES. Autores: Abelardo Rodríguez L.*, Manuel Pérez M. **, Alberto González T. **, José Hernández

Más detalles

15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores.

15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores. UNIDAD TEMÁTICA 5: MULTIPROCESADORES. 15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores. 15-1 TEMA 15: ARQUITECTURA DE LOS MULTIPROCESADORES.

Más detalles

TEMA 6. EIGENVALORES Y EIGENVECTORES

TEMA 6. EIGENVALORES Y EIGENVECTORES TEMA 6. EIGENVALORES Y EIGENVECTORES M. C. Roberto Rosales Flores INSTITUTO TECNOLÓGICO SUPERIOR DE TLAXCO Ingeniería en Logística M. C. Roberto Rosales Flores (ITST TEMA 6. EIGENVALORES Y EIGENVECTORES

Más detalles

Espacios Vectoriales

Espacios Vectoriales Espacios Vectoriales Departamento de Matemáticas, CCIR/ITESM 4 de enero de 2 Índice 3.. Objetivos................................................ 3.2. Motivación...............................................

Más detalles

Conclusiones. Particionado Consciente de los Datos

Conclusiones. Particionado Consciente de los Datos Capítulo 6 Conclusiones Una de las principales conclusiones que se extraen de esta tesis es que para que un algoritmo de ordenación sea el más rápido para cualquier conjunto de datos a ordenar, debe ser

Más detalles

Trabajo Práctico Final. Transformada Rápida de Fourier con Paralelismo

Trabajo Práctico Final. Transformada Rápida de Fourier con Paralelismo Trabajo Práctico Final Transformada Rápida de Fourier con Paralelismo Sistemas Operativos II Facultad de Ciencias Exactas, Físicas y aturales UC Mauricio G. Jost 2009 Índice 1. Introducción 1 2. Marco

Más detalles

Computación 1-2011 - Matrices dispersas

Computación 1-2011 - Matrices dispersas Computación 1-2011 - Matrices dispersas Situación: Matrices muy grandes Previsible gran porcentaje de valores = 0 Se busca una forma de representar esas matrices que cueste menos memoria y permita acelerar

Más detalles

INTRODUCCIÓN A Maxima

INTRODUCCIÓN A Maxima INTRODUCCIÓN A Maxima Ing. Matías De la Puente 1. Introducción El sistema de álgebra computacional Maxima 1 es un motor de cálculo simbólico escrito en lenguaje Lisp publicado bajo

Más detalles

CLUSTER FING: ARQUITECTURA Y APLICACIONES

CLUSTER FING: ARQUITECTURA Y APLICACIONES CLUSTER FING: ARQUITECTURA Y APLICACIONES SERGIO NESMACHNOW Centro de Cálculo, Instituto de Computación FACULTAD DE INGENIERÍA, UNIVERSIDAD DE LA REPÚBLICA, URUGUAY CONTENIDO Introducción Clusters Cluster

Más detalles

Creación y administración de grupos de dominio

Creación y administración de grupos de dominio Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

Objetivos Generales. Objetivos específicos. Que el estudiante:

Objetivos Generales. Objetivos específicos. Que el estudiante: ASIGNATURA: MÉTODOS NUMPERICOS I (ANÁLISIS Y PROCESAMIENTO DE LOS DATOS EXPERIMENTALES CON INTRODUCCIÓN A LA COMPUTACIÓN) Objetivos Generales Comprender y manejar los conceptos relacionados con el manejo,

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Matrices Invertibles y Elementos de Álgebra Matricial

Matrices Invertibles y Elementos de Álgebra Matricial Matrices Invertibles y Elementos de Álgebra Matricial Departamento de Matemáticas, CCIR/ITESM 12 de enero de 2011 Índice 91 Introducción 1 92 Transpuesta 1 93 Propiedades de la transpuesta 2 94 Matrices

Más detalles

MÉTODOS DIRECTOS PARA LA RESOLUCIÓN DE ECUACIONES ALGEBRAICAS LINEALES

MÉTODOS DIRECTOS PARA LA RESOLUCIÓN DE ECUACIONES ALGEBRAICAS LINEALES CAPÍTULO 4 EJERCICIOS RESUELTOS: MÉTODOS DIRECTOS PARA LA RESOLUCIÓN DE ECUACIONES ALGEBRAICAS LINEALES Ejercicios resueltos 1 1. Determine el número de operaciones aritméticas necesarias para calcular

Más detalles

Descripciones de las Habilidades de Primaria por Trimestre Materia: Matemáticas Grade: Kinder

Descripciones de las Habilidades de Primaria por Trimestre Materia: Matemáticas Grade: Kinder Grade: Kinder Medición Geometría Leer y escribir los números hasta 5 Entender que escribiendo los números representan la cantidad de objetos (0-5) Contar de uno en uno hasta 10 (empezar con cualquier número

Más detalles

3.- DETERMINANTES. a 11 a 22 a 12 a 21

3.- DETERMINANTES. a 11 a 22 a 12 a 21 3.- DETERMINANTES. 3.1. -DEFINICIÓN Dada una matriz cuadrada de orden n, se llama determinante de esta matriz (y se representa por A o deta al polinomio cuyos términos son todos los productos posibles

Más detalles

DIRECTRICES Y ORIENTACIONES GENERALES PARA LAS PRUEBAS DE ACCESO A LA UNIVERSIDAD

DIRECTRICES Y ORIENTACIONES GENERALES PARA LAS PRUEBAS DE ACCESO A LA UNIVERSIDAD Curso Asignatura 2014/2015 MATEMÁTICAS II 1º Comentarios acerca del programa del segundo curso del Bachillerato, en relación con la Prueba de Acceso a la Universidad La siguiente relación de objetivos,

Más detalles

21.1.2. TEOREMA DE DETERMINACIÓN DE APLICACIONES LINEALES

21.1.2. TEOREMA DE DETERMINACIÓN DE APLICACIONES LINEALES Aplicaciones lineales. Matriz de una aplicación lineal 2 2. APLICACIONES LINEALES. MATRIZ DE UNA APLICACIÓN LINEAL El efecto que produce el cambio de coordenadas sobre una imagen situada en el plano sugiere

Más detalles

Sistemas de Ecuaciones Lineales y Matrices

Sistemas de Ecuaciones Lineales y Matrices Sistemas de Ecuaciones Lineales y Matrices Oscar G Ibarra-Manzano, DSc Departamento de Area Básica - Tronco Común DES de Ingenierías Facultad de Ingeniería, Mecánica, Eléctrica y Electrónica Trimestre

Más detalles

Matemáticas I: Hoja 2 Cálculo matricial y sistemas de ecuaciones lineales

Matemáticas I: Hoja 2 Cálculo matricial y sistemas de ecuaciones lineales Matemáticas I: Hoja 2 Cálculo matricial y sistemas de ecuaciones lineales Ejercicio 1 Escribe las siguientes matrices en forma normal de Hermite: 2 4 3 1 2 3 2 4 3 1 2 3 1. 1 2 3 2. 2 1 1 3. 1 2 3 4. 2

Más detalles

GUÍA DE TRABAJO Tecnología en Sistemas de Información

GUÍA DE TRABAJO Tecnología en Sistemas de Información 1. IDENTIFICACIÓN Asignatura Laboratorio Lógica y Programación Guía No. 1 Área Básica de la Ingeniería Nivel II Código LLI22 Pensum 10 Correquisito(s) LPI24 Prerrequisito(s) Créditos 2 TPS 2 TIS 4 TPT

Más detalles

Capítulo 2. Las Redes Neuronales Artificiales

Capítulo 2. Las Redes Neuronales Artificiales Capítulo 2. Las Redes Neuronales Artificiales 13 Capitulo 2. Las Redes Neuronales Artificiales 2.1 Definición Redes Neuronales Artificiales El construir una computadora que sea capaz de aprender, y de

Más detalles

Aplicación de la inteligencia artificial a la resolución del problema de asignación de estudiantes del departamento de PDI

Aplicación de la inteligencia artificial a la resolución del problema de asignación de estudiantes del departamento de PDI Aplicación de la inteligencia artificial a la resolución del problema de asignación de estudiantes del departamento de PDI Ricardo Köller Jemio Departamento de Ciencias Exactas e Ingeniería, Universidad

Más detalles

PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL

PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL N. E. Chávez Rodríguez*, A. M. Vázquez Vargas** *Departamento de Computación **Departamento de Procesamiento Digital de Señales

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

SINTESIS Y DESCRIPCIÓN DE CIRCUITOS DIGITALES UTILIZANDO VHDL ANTECEDENTES

SINTESIS Y DESCRIPCIÓN DE CIRCUITOS DIGITALES UTILIZANDO VHDL ANTECEDENTES ANTECEDENTES En los últimos diez años la industria electrónica ha tenido una gran evolución en el desarrollo de sistemas digitales; desde computadoras personales, sistemas de audio y vídeo hasta dispositivos

Más detalles

Fundamentos de la Programación

Fundamentos de la Programación Fundamentos de la Programación El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software

Más detalles

Matemáticas. Si un error simple ha llevado a un problema más sencillo se disminuirá la puntuación.

Matemáticas. Si un error simple ha llevado a un problema más sencillo se disminuirá la puntuación. UNIVERSIDAD POLITÉCNICA DE CARTAGENA PRUEBAS DE ACCESO A LA UNIVERSIDAD DE LOS MAYORES DE 25 AÑOS CONVOCATORIA 2014 CRITERIOS DE EVALUACIÓN Matemáticas GENERALES: El examen constará de dos opciones (dos

Más detalles

Tema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es

Tema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es Tema 2. Software Informática (1º Ingeniería Civil) Curso 2011/2012 Javier Carmona Murillo jcarmur@unex.es Índice Introducción. Programas e instrucciones. Tipos y estructuras de datos. Algoritmos. Proceso

Más detalles

Nombre de la asignatura: Programación Estructurada. Créditos: 3-2 - 5. Aportación al perfil

Nombre de la asignatura: Programación Estructurada. Créditos: 3-2 - 5. Aportación al perfil Nombre de la asignatura: Programación Estructurada Créditos: 3-2 - 5 Aportación al perfil Diseñar, analizar y construir equipos y/o sistemas electrónicos para la solución de problemas en el entorno profesional,

Más detalles

Departamento de Matemática Aplicada FUNDAMENTOS DE MATEMATICAS. Ingeniería Química (Curso 2005-06) Álgebra Lineal Práctica 3

Departamento de Matemática Aplicada FUNDAMENTOS DE MATEMATICAS. Ingeniería Química (Curso 2005-06) Álgebra Lineal Práctica 3 1. Matrices en Matlab Departamento de Matemática Aplicada FUNDAMENTOS DE MATEMATICAS. Ingeniería Química (Curso 2005-06) Álgebra Lineal Práctica 3 Para introducir una matriz en Matlab se procede de la

Más detalles

Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas

Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas Capítulo 4 Vectores y matrices En FORTRAN se puede utilizar un tipo especial de variable que sirve, en particular, para almacenar vectores y matrices. De esta forma, se utiliza un sólo nombre para referirse

Más detalles

Instituto Tecnológico de Roque Guía para el Examen de Admisión

Instituto Tecnológico de Roque Guía para el Examen de Admisión PRESENTACIÓN La presente guía se elaboró con el propósito de proporcionarle un conjunto de elementos que serán necesarios para sustentar con éxito el examen de admisión, para ingresar al Instituto Tecnológico

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

Nombre de la asignatura: METODOS NUMERICOS. Carrera : Ingeniería Mecánica. Clave de la asignatura: ACB- 9311 Clave local:

Nombre de la asignatura: METODOS NUMERICOS. Carrera : Ingeniería Mecánica. Clave de la asignatura: ACB- 9311 Clave local: Nombre de la asignatura: METODOS NUMERICOS Carrera : Ingeniería Mecánica Clave de la asignatura: ACB- 9 Clave local: Horas teoría horas practicas créditos: -0-8.- UBICACIÓN DE LA ASIGNATURA A) RELACIÓN

Más detalles

Las matrices tienen un número cada vez mas creciente de aplicaciones en la solución de problemas en Ciencia y Tecnología.

Las matrices tienen un número cada vez mas creciente de aplicaciones en la solución de problemas en Ciencia y Tecnología. Aplicaciones de las Matrices a la Solución de Problemas de Redes Eléctricas Resumen Se muestra como obtener, sistemas de ecuaciones lineales que permitan calcular intensidades de corrientes en los ramales

Más detalles

Electrónica Digital II

Electrónica Digital II Electrónica Digital II M. C. Felipe Santiago Espinosa Aplicaciones de los FPLDs Octubre / 2014 Aplicaciones de los FPLDs Los primeros FPLDs se usaron para hacer partes de diseños que no correspondían a

Más detalles

Arquitectura: Clusters

Arquitectura: Clusters Universidad Simón Bolívar Arquitectura: Clusters Integrantes: - Aquilino Pinto - Alejandra Preciado Definición Conjuntos o conglomerados de computadoras construidos mediante la utilización de hardware

Más detalles

Definición 1.1.1. Sea K un cuerpo. Un polinomio en x, con coeficientes en K es toda expresión del tipo

Definición 1.1.1. Sea K un cuerpo. Un polinomio en x, con coeficientes en K es toda expresión del tipo POLINOMIOS 1.1. DEFINICIONES Definición 1.1.1. Sea K un cuerpo. Un polinomio en x, con coeficientes en K es toda expresión del tipo p(x) = a i x i = a 0 + a 1 x + a 2 x 2 + + a n x n + ; a i, x K; n N

Más detalles

Curso de Procesamiento Digital de Imágenes

Curso de Procesamiento Digital de Imágenes Curso de Procesamiento Digital de Imágenes Impartido por: Elena Martínez Departamento de Ciencias de la Computación IIMAS, UNAM, cubículo 408 http://turing.iimas.unam.mx/~elena/teaching/pdi-lic.html elena.martinez@iimas.unam.mx

Más detalles

Reproducción de una Imagen en un Monitor VGA Utilizando un FPGA

Reproducción de una Imagen en un Monitor VGA Utilizando un FPGA 7 Reproducción de una Imagen en un Monitor VGA Utilizando un FPGA Michael Alejandro Diaz Illa, Alfredo Granados Ly Facultad de Ingeniería Electrónica y Eléctrica, Universidad Nacional Mayor de San Marcos,

Más detalles

ELO311 Estructuras de Computadores Digitales. Números

ELO311 Estructuras de Computadores Digitales. Números ELO311 Estructuras de Computadores Digitales Números Tomás Arredondo Vidal Este material está basado en: material de apoyo del texto de David Patterson, John Hennessy, "Computer Organization & Design",

Más detalles