Nota: Como material de estudio de preámbulo, están las notas del curso de Computación de primer semestre, en la carpeta MaterialAuxiliar
Este es el repositorio del curso de Física Computacional impartido por Carlos Malanche y Víctor Milchorena.
- Repaso de Linux
- Comandos básicos de
shell
/bash
shell
scripting
- Comandos básicos de
C++
- Comandos básicos, variables y funciones
- Recursividad.
- Ingeniería del Software: buenas prácticas (fragmentación de código, nombramiento de variables, comentarios, etc).
- Programación orientada a objetos: Clases, herencia, polimorfismo.
- Uso avanzado del lenguaje (funciones lambda, sobrecarga de operadores).
- Análisis de algoritmos
- Complejidad algorítmica espacial/temporal
- Estructuras de datos: filas, listas, árboles, heaps.
- Ordenamiento: Bubble sort, merge sort, heap sort, quick sort.
- Programación dinámica (y divide y vencerás)
- Métodos numéricos
- Método de bisección
- Método de la secante
- Método de Newton-Raphson
- Problemas de punto fijo
- Integración numérica de sistemas dinámicos
- Problema de la cuadratura
- Algoritmo de Euler y Leap-Frog
- Métodos de Runge-Kutta
- Ejemplos: Ecuaciones de Lotka-Volterra
- Álgebra lineal computacional
- El problema maestro: Ax = b
- Inversión Matricial
- Solución de matrices triangulares, factorización LU, métodos de Cholesky y Thomas
- Métodos iterativos (Jacobi y Gauss-Seidel)
- Estabilidad numérica y análisis de error
- Aproximación de eigenvalores
- Transformada de Fourier
- Método de elementos finitos
- Formulación Débil
- Selección de bases (de soporte finito)
- Condiciones de frontera
- Discretización y definición en versión matricial
- Números pseudoaleatorios
- Métodos de "Montecarlo"
- Integración numérica por métodos estocásticos
- Muestreo por importancia
- Aplicaciones en física
- Método de Relajación (Cálculo de potenciales).
- Resolución de ecuacion de calor empleando elemento finito.
- Cálculo del calor específico (Monte Carlo / Dinámica Molecular)
- Problema de N-Cuerpos con Barnes-Hut
- Dinámica de fluidos con Gauss-Seidel
Es posible que hayan unas 4 tareas a lo largo del curso, además de un pequeño proyecto final. En breve modificaremos la descripción para aclarar la existencia de estas tareas, así como su participación en la calificación final.
Sin embargo, una cosa es segura: el curso se pasa únicamente por final, y no hay oportunidad de reposición ni segunda vuelta. Las posibles tareas y proyectos opcionales darán puntos extra sobre la calificación del final, pero estos sólo se aplicarán si la calificación del final es aprobatoria.
De momento nos vamos a reservar la bibliografía, pues a lo largo del curso de entregarán PDF's y códigos como material de apoyo, para que puedan concentrarse en el curso en lugar de estar anotando.