/ua-imec2001-hc-202310-s2

Primary LanguageJupyter NotebookMIT LicenseMIT

IMEC2001 Herramientas Computacionales

Ciclo de Talleres
Curso Obligatorio – Sección 2
2023-1 – Ciclo 2

Horario de clases

Miércoles y viernes de 14:00 a 15:50h en el Q-508.

Equipo académico

Coordinador

Andrés Leonardo González Mancera
Correo: angonzal@uniandes.edu.co
Oficina: ML-750
Atención a estudiantes: Miércoles y viernes de 9 a 11am o programada vía correo

Profesor

Nelson Andrés Salazar Peña
Correo: na.salazar10@uniandes.edu.co
Oficina: ML-754 / ML-308A
Atención a estudiantes: Vía correo

Monitora

María Alejandra Vargas Torresa
Correo: ma.vargas73@uniandes.edu.co
Atención a estudiantes: Vía correo

Descripción del Curso

Los sistemas de cómputo se han convertido en herramientas básicas e indispensables para la práctica de la ingeniería. Este es un curso exploratorio de las herramientas computacionales modernas y relevantes para el modelado de sistemas y la solución de problemas en ingeniería.

En este curso se desarrollarán los conocimientos y habilidades básicas para la aplicación de modelos para varios tipos de sistemas de ingeniería.

Al finalizar, los estudiantes estarán capacitados para explorar y utilizar herramientas computacionales modernas para su práctica profesional y listos para contribuir al desarrollo de código abierto de proyectos novedosos.

Prerrequisitos

Introducción a la programación (ISIS-1221).

Objetivos de aprendizaje del curso

El objetivo del curso es desarrollar en los estudiantes las habilidades necesarias para utilizar herramientas computacionales como apoyo para la solución de problemas prácticos en ingeniería. Al finalizar el curso estará preparado para:

  • Explorar herramientas computacionales, así como plataformas de cómputo para la práctica de la ingeniería.
  • Desarrollar habilidades pertinentes a la implementación de algoritmos computacionales para la solución de problemas de ingeniería.
  • Utilización de lenguajes de programación de alto nivel utilizando librerías numéricas existentes y plataformas interactivas de programación.
  • Solucionar problemas de ingeniería mediante la utilización de herramientas computacionales modernas.

Competencias ABET

Este curso aporta en el desarrollo de las siguientes competencias:

  • 1. Habilidad para identificar, formular y resolver problemas complejos de ingeniería aplicando principios de ingeniería, ciencias y matemáticas.

    • 1.2. Escoge y aplica modelos cuantitativos, conceptuales y/o cualitativos para la solución de problemas mecánicos o térmicos.
    • 1.3. Resuelve problemas de ingeniería.
  • 6. Habilidad para desarrollar y conducir apropiadamente experimentación, analizar e interpretar datos, y usar el juicio de ingeniería para elaborar conclusiones.

    • 6.3. Analiza e interpreta datos, desarrolla los cálculos necesarios y tabula/gráfica los resultados.
    • 6.4. Elabora conclusiones basadas en datos experimentales y modelos disponibles.
  • 7. Habilidad para adquirir y aplicar nuevo conocimiento según sea necesario, utilizando estrategias de aprendizaje apropiadas.

    • 7.1. Busca e identifica fuentes relevantes de información haciendo uso de los recursos disponibles (libros, internet, journals, estándares, normas técnicas, tutoriales) para adquirir nuevo conocimiento.
    • 7.4. Demuestra la habilidad de aplicar conocimiento adquirido para proponer e implementar una solución a un problema de Ingeniería Mecánica.

Metodología

Existen muchos lenguajes de programación que pueden ser utilizados para modelar sistemas mecánicos. Aunque la decisión sobre cuál es el más adecuado para un determinado problema depende de muchos factores, en el curso se manejará Python por su sencillez de implementación y ejecución, comunidades de soporte, librerías disponibles, entre otros.

El material del curso será publicado en GitHub y direccionado desde Bloque Neón antes del inicio de cada clase (i.e., 14:00h cada miércoles y viernes). Cada semana incluye:

  • Lecturas
  • Enlaces de interés
  • Cuadernos interactivos (Jupyter Notebook)
  • Taller

Los espacios de clase serán para revisión de la temática (incluye actividades) y solución de inquietudes. Los estudiantes disponen de un cuaderno interactivo (Jupyter Notebook) para aplicar la metodología hands-on a medida que se avanza en la temática. Finalizada la clase, se dispondrán estos mismos cuadernos interactivos con los ejercicios resueltos para su consulta.

En cuanto a los talleres, estos se habilitarán cada dos semanas a las 15:50h de cada viernes. El plazo límite de entrega es hasta las 23:59h del domingo de la segunda semana siguiente a partir de su publicación. Si la entrega cumple con los criterios estipulados en el enunciado del taller, se da la posibilidad de hacer un segundo envío con correcciones a partir de los comentarios.

Además, hay un plazo extra hasta las 23.59h del segundo día siguiente (martes) de la semana de entrega (es decir, se dan dos días más). Sin embargo, su calificación es sobre 4.00. Si la entrega cumple con los mismos criterios estipulados previamente, también se puede hacer un segundo envío con correcciones a partir de los comentarios, manteniendo la calificación sobre 4.00. Después de este plazo la entrega tiene una calificación de 0.0.

En Bloque Neón se dispone un foro como medio centralizado para la resolución de preguntas que serán de apoyo al curso. Este es un espacio colaborativo entre todos, la participación en el foro será tenida en cuenta en las Actividades en Clase (Tabla 1).

Contenido y cronograma del curso

Semana Temática Fecha Talleres
1 Introducción a Python y Jupyter Notebooks Marzo 29 y 31
2 Gráficas y visualización (ajuste de datos, estadística, barras de error) Abril 12 y 14
3 Interpolación (curva de una bomba) Abril 19 y 21 T1 (Abril 30)
4 Raíces de ecuaciones (factor de fricción de Darcy) Abril 26 y 28
5 Sistemas de ecuaciones (estática, e.g., cerchas) Mayo 3 y 5 T2 (Mayo 14) P (Mayo 28)
6 Optimización (operación de sistema eólico y de bombeo) Mayo 10 y 12
7 ODEs (incertidumbre-propagación, dinámica) Mayo 17 y 19 T3 (Mayo 28)
8 FFT (señales de péndulos y audio) Mayo 24 y 26

Sistema de evaluación del curso

La evaluación del curso se realizará mediante seis (6) talleres, actividades en clase y un (1) proyecto. Los entregables evalúan el estado de desarrollo de cada uno de los objetivos del curso: (i.) resolver problemas de ingeniería al aplicar modelos cuantitativos y simulaciones; (ii.) comunicar ideas con claridad; y (iii.) demostrar destrezas de autoeducación.

La calificación definitiva del curso se obtendrá ponderando las calificaciones parciales, así:

Tabla I. Sistema de evaluación.

Entregable Peso Porcentual
Talleres (x3) 45%
Actividades en Clase 25%
Proyecto 30%

El curso se aprueba con una nota de 3.00 (2.99 no aprobará el curso).

Los talleres y el proyecto cuentan con una matriz de calificación en donde se detallan los criterios de evaluación siguiendo la nomenclatura de ABET: supera el criterio, cumple el criterio, en desarrollo y no cumple las expectativas. Cada enunciado dispone de su respectiva rúbrica.

Dedicación esperada por parte de los estudiantes

El curso tiene una carga académica de dos (2) créditos correspondientes a una dedicación semanal de doce (12) horas. Las horas de dedicación semanal del curso se distribuyen según la carga académica de la siguiente manera:

Tabla II. Dedicación semanal del curso.

Actividad Horas de Dedicación
Clase síncrona 4h
Trabajo individual 8h

Es responsabilidad del estudiante ser el centro de su propio aprendizaje y distribuir de manera autónoma y responsable del tiempo que dispone por fuera de las horas de clase para aprovechar al máximo el tiempo y recursos que invierte por cada crédito.

Bibliografía, referencias y software para el curso

Libros de referencia

  • Jake VanderPlas (2016). Python Data Science Handbook, 1st Edition, USA. O’Reilly. ISBN 13: 978-1-491-91205-8.
  • Wes McKinney (2018). Python Data Analysis, 2nd Edition, USA. O’Reilly. ISBN 13: 978-1-491-95766-0.

Repositorio

Para clonar el repositorio ua-imec2001-hc-202310-s2 se recomienda usar el software GitHub Desktop. La URL del repositorio es: https://github.com/salazarna/ua-imec2001-hc-202310-s2.

Otra opción es desde el terminal con en el ambiente activado; para esto ejecute:

git clone https://github.com/YOUR-USERNAME/YOUR-REPOSITORY

Software

  • Python
  • Visual Studio Code
  • GitHub Desktop
  • Microsoft Excel

Normas del curso y recomendaciones

  • Todos los talleres del curso y el proyecto se deben realizar en parejas a menos que explícitamente se indique lo contrario.
  • Los talleres se entregan en la fecha, hora y método especificados. No se aceptan trabajos tarde.
  • La fecha límite de entrega de los talleres es hasta las 23.59h del domingo de la segunda semana siguiente a partir de su publicación.
  • Tener presente las buenas prácticas de citas y referencias.
  • De acuerdo con el Reglamento General de Estudiantes de Pregrado – Universidad de los Andes, se tienen cuatro (4) días después de publicada la nota como plazo máximo para reclamos.

    Capítulo VII, ART. 64. Todo estudiante que desee formular un reclamo sobre las calificaciones de cualquier evaluación o sobre la nota definitiva del curso deberá dirigirlo por escrito y debidamente sustentado al profesor responsable de la materia, dentro de los cuatro (4) días hábiles siguientes a aquel en que se dan a conocer las calificaciones en cuestión.

Otras políticas en Uniandes

Protocolo MAAD

El miembro de la comunidad que sea sujeto presencie o tenga conocimiento de una conducta de maltrato, acoso, amenaza, discriminación, violencia sexual o de género (MAAD) deberá poner el caso en conocimiento de la Universidad. Ello, con el propósito de que se puedan tomar acciones institucionales para darle manejo al caso, a la luz de lo previsto en el protocolo, velando por el bienestar de las personas afectadas. Para poner en conocimiento el caso y recibir apoyo, ustedes pueden contactar a: