Periodo académico 2024-1S

(010875) PROGRAMACIÓN Y ANÁLISIS NUMÉRICO

Datos generales

Grupos

Tabla información sobre los grupos de la asignatura
Actividad Grupo Periodos Horarios Aula Profesor/Tutor

No existen datos de grupos de esta asignatura, en este plan de estudios.

Contenidos

PROGRAMA DE LA ASIGNATURA

Presentación

El ejercicio profesional del Modelado y Simulación, especialmente en ciencias, requiere habilidades técnicas y teóricas en el campo de la programación compilada. El presente curso presenta diferentes metodologías como son los autómatas celulares, los métodos de elementos discretos, y fundamentos de dinámica molecular, buscando proveer las herramientas básicas para enfrentar un problema de investigación en temas afines.

Objetivo de Aprendizaje

Comprender, analizar, modelar y programar un conjunto de problemas científico-técnicos, usando el lenguaje compilado C++.

Contenidos Temáticos

Sección I: Fundamentos de programación compilada
1. Herramientas: Sistemas operativos y colaboración
Unix, Linux, y OS X, Comandos y programas de “shell” Editores de texto: Emacs y Vi Sistemas de control de versiones y colaboración: Mercurial y Bazaar Máquinas virtuales (VirtualBox): Instalación del software necesario para esta clase.
2. Lenguajes de programación y modelado
Del modelo matemático al modelo computacional: implementación y programación. Lenguajes ejecutados: prototipos. Lenguajes compilados: eficiencia.
3. Ecuaciones de Diferencias (estructuras de flujo y control)
Ecuaciones de Diferencias, Sucesiones y aplicaciones. Tipos de variables, constantes y operadores. Entrada/Salida básicas. Estructuras de Control Suma de series de Taylor. Sistemas dinámicos unidimensionales
4. Errores Numéricos y Debugging
Substracción cancelativa y error por aproximación. Acumulación de errores por aproximación. Uso de gdb para encontrar “bugs” en los programas.
Sección II: Programación para M&S
5. Programación de Autómatas Celulares
Arreglos, Punteros, Matrices, Caracteres y Memoria Dinámica. Matrices. Multiplicación de Matrices. Librerías. Estructuras de Datos: Listas, Mapas, Vectores. Los 256 autómatas celulares de Wolfram. Modelo de Schelling. El juego de la Vida. Proyecto grupal: Transmisión de información en una red de agentes. Movimiento Realista de proyectiles. Efecto de la resistencia del aire. Trayectoria de Proyectiles. Influencia de la rotación en movimiento de un balón de fútbol
6. Dinámica Molecular y programación orientada a Objetos
Programación orientada a Objetos. Método de Leap-Frog. Ejemplo: Movimiento parabólico y Rebote de una pelota en el suelo. Proyecto grupal: Programación de un código de simulación de medios granulares.
7. Dinámica Molecular aplicada a un modelo de fracturas inducidas por secado
Construcción de un modelo de secado dos dimensional. Procesos de avalancha en modelos de fractura. Esferopolígonos. Proyecto grupal: Programación de un código de simulación.
8. Herramientas de visualización
OpenDx.

Bibliografía Básica Obligatoria

1. Landau, Páez, Bordeianu, “A survey of Computational Physics”. Princeton University Press, 2008.
2. Giordano, “Computational Physics”. Prentice Hall. 1997.
3. Deytel & Deytel. “C++ How to Program”. Prentice Hall. 2003.
4. H. Gould y J. Tobochnik. Computer Simulation Methods. Partes 1 y 2. (Addisson-Wesley, New-York, 1988).
5. W.H. Press, S.A. Theulosky, W.T. Vetterling y B.P. Flannery, Numerical Recipes on C, 2nd. Ed. (New York, Cambridge University Press).
6. http://www.cplusplus.com/doc/tutorial



Carrera 4 # 22-61 Teléfono: (+57 1) 242 7030 - 018000111022 Fax: (+57 1) 561 2107 Bogotá D.C., Colombia
Institución de Educación Superior sujeta a inspección y vigilancia por el Ministerio de Educación Nacional.