Encabezado Facultad de Ciencias
Presentación

Física (plan 2002) 2017-1

Primer Semestre, Computación

Grupo 8100, 35 lugares. 30 alumnos.
Profesor Jimmy Hernández Morales ma ju 15:30 a 17 Aula 2 de Computación en Física
Ayudante María Anayeli Ramírez Ramírez ma ju 15:30 a 17
 

Computación

Temario

  1. Conceptos generales de computación
  • Breve historia de la Computación
  • Teoría de autómatas: deterministas y no-deterministas
  • Máquina de Turing (concepto de computadora)
  • Concepto de algoritmo
  1. Manejo básico de sistemas operativos (SO)
  • Definición, tipos y características de un SO: UNIX/Linux
  • Arquitectura del SO
  • Estructura del sistema de archivos
  • Creación, visualización y edición de archivos de texto
  • Introducción a la programación en Shell
  • Manejo y administración de archivos y directorios
  1. Principios de lenguajes de programación
  • Paradigmas
  • Lenguaje de máquina y ejecución de programas
  • Programación imperativa
  • Programación estructurada
  1. Variables, expresiones y sentencias
  • Valores y tipos
  • Variables
  • Sentencias
  • Operadores y expresiones
  1. Funciones
  • Función matemática
  • Composición
  • Parámetros y argumentos
  • Scoping
  1. Herramientas de programación funcional:
  • Listas por comprensión
  • Funciones de orden superior
  • Funciones Lambda
  1. Datos estructurados
  • Arreglos
  • Listas simples
  • Ciclos y condicionales
  • Algoritmos iterativos
  • Recursión
  1. Introducción a los métodos numéricos
  • Método del trapecio para evaluar integrales definidas
  • Método de Newton – Raphson
  • Simulación de experimentos con variables aleatorias: decaimiento radiactivo y caminantes aleatorios.
  • Mínimos cuadrados y estadística básica
  • Método de Euler (ecuaciones tipo Newton)
  1. Introducción a la Física Computacional
  • Movimiento en una dimensión
  • Fuerza en una dimensión
  • Movimiento en dos dimensiones y tres dimensiones
  • Trabajo
  • Energía
  1. Introducción a orientación a objetos
  • Objetos
  • Comportamiento y propiedades
  • Clases, métodos y variables de clase
  • Encapsulamiento de datos
  • Herencia
  • Polimorfismo
  1. Elementos de complejidad algorítmica
  • Análisis asintótico, notación O().
  • Algoritmos de ordenamiento
  • Complejidades en tiempo y en espacio
  • Ejemplos de cálculo de complejidad.
  1. Tópicos avanzados: Programación concurrente
  • Mecanismos del lenguaje para hilos de ejecución.
  • Sincronización de hilos de ejecución.
  • Terminación de ejecución.

Evaluación

Se podrá acumular hasta un máximo de 110 puntos y se evaluará de la siguiente manera:

Exámenes parciales: 30
Prácticas: 40
Exámenes semanales: 20
Proyecto 20

Evaluación teórica

Se harán tres exámenes parciales, en las fechas que se indicarán en la página.
Los exámenes semanales serán alrededor de 8 o 9 al semestre y se realizarán los jueves al final de la clase, serán breves, sobre conceptos, de aproximadamente diez minutos y servirán de repaso para el examen parcial.

Evaluación práctica

A lo largo del semestre se dejarán 9 prácticas individuales en la que se implementen soluciones a problemas que se les indicará en la página del curso.
Habrá un proyecto final en pareja y consistirá en implementar la solución a un problema físico, utilizando los conceptos y herramientas vistos en el curso.

Bibliografía:

  1. Effective Java . Joshua Bloch.

  2. Introduction to Computation and Programming Using Python. John V. Guttag

  3. Aprenda a Pensar Como un Programador con Python. Allen Downey. Jeffrey Elkner.

  4. Introduction to algorithms. Thomas H. Cormen

  5. Elementary mechanics using Python. Anders Malthe Sorenssen.

  6. J.E. Hopcroft, R. Montwani, Teoria de autómatas. Lenguajes y computación.

  7. El lenguaje de Programación C. Dennis Ritchie.

Página del Curso:

https://sites.google.com/a/ciencias.unam.mx/computacion8101/

 


Hecho en México, todos los derechos reservados 2011-2016. Esta página puede ser reproducida con fines no lucrativos, siempre y cuando no se mutile, se cite la fuente completa y su dirección electrónica. De otra forma requiere permiso previo por escrito de la Institución.
Sitio web administrado por la Coordinación de los Servicios de Cómputo de la Facultad de Ciencias. ¿Dudas?, ¿comentarios?. Escribenos. Aviso de privacidad.