Guía docente de Programación Técnica y Científica (Especialidad Computación y Sistemas Inteligentes) (29611AD)
Curso
2024/2025
Fecha de aprobación:
27/06/2024
Grado
Grado en Ingeniería Informática
Rama
Ingeniería y Arquitectura
Módulo
Complementos de Computación y Sistemas Inteligentes
Materia
Herramientas de Computación Científica
Curso
4
Semestre
1
Créditos
6
Tipo
Optativa
Profesorado
Teórico
Miguel
García
Silvente.
Grupo: A
Práctico
David
Criado
Ramón
Grupo: 1
Tutorías
Miguel García Silvente
Email- Primer semestre
- Martes de 11:30 a 13:00 (D30 (Etsiit))
- Miércoles de 09:30 a 13:00 (D30 (Etsiit))
- Jueves de 10:30 a 11:30 (D30 (Etsiit))
- Segundo semestre
- Miércoles de 10:00 a 12:30 (D30 (Etsiit))
- Jueves de 10:30 a 12:30 (D30 (Etsiit))
- Viernes de 11:00 a 12:30 (D30 (Etsiit))
David Criado Ramón
Email- Primer semestre
- Martes de 09:00 a 12:00 (Edificio Auxiliar Despacho 1.4)
- Miércoles de 09:00 a 12:00 (Edificio Auxiliar Despacho 1.4)
- Segundo semestre
- Martes de 09:00 a 12:00 (Edificio Auxiliar Despacho 1.4)
- Miércoles de 09:00 a 12:00 (Edificio Auxiliar Despacho 1.4)
Prerrequisitos y/o Recomendaciones
No es necesario que los estudiantes tengan aprobadas asignaturas, materias o módulos previos como requisito indispensable para cursar este módulo. No obstante se recomienda la superación de los contenidos y adquisición de competencias de las materias de formación básica y de rama.
Breve descripción de contenidos (Según memoria de verificación del Grado)
- Herramientas y lenguajes de alto nivel orientados al cálculo técnico y científico.
- Representación gráfica y visualización de datos.
- Prototipado y desarrollo rápido de software técnico y científico.
- Bibliotecas de software específicas para ingeniería.
- Resolución de problemas comunes en las ingenierías.
- Comunicación e integración de software desarrollado en diferentes lenguajes.
Competencias
Competencias generales
- CG08. Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
- CG09. Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero Técnico en Informática.
Competencias Transversales
- CT02. Capacidad para tomar decisiones basadas en criterios objetivos (datos experimentales, científicos o de simulación disponibles) así como capacidad de argumentar y justificar lógicamente dichas decisiones, sabiendo aceptar otros puntos de vista.
- CT03. Capacidad para el uso y aplicación de las TIC en el ámbito académico y profesional.
Resultados de aprendizaje (Objetivos)
- Conocer herramientas y plataformas de desarrollo de software y prototipos software específicamente orientadas al cálculo técnico y científico, entendiendo las características que las distinguen de otras de carácter genérico.
- Familiarizarse con lenguajes de programación o extensiones de lenguajes específicamente orientados al cálculo técnico y científico, comprendiendo las herramientas que proporcionan para facilitar el desarrollo de software que resuelva problemas de Ingeniería.
- Estudiar herramientas orientadas a la visualización de datos científicos y de Ingeniería.
- Conocer herramientas interactivas para el diseño de diagramas de visualización de conjuntos de datos científicos y técnicos.
- Conocer distintos formatos estándar de almacenamiento de grandes cantidades de datos.
- Conocer distintas bibliotecas software orientadas específicamente a la solución de problemas de ingeniería y científicos.
- Estudiar la solución de problemas del ámbito de la Ingeniería, con especial atención a problemas tipo que tengan aplicación en varias especialidades de ingeniería.
- Conocer mecanismos y herramientas que faciliten la integración de software desarrolladoen diferentes lenguajes de programación, entendiendo los procesos de comunicación entre los diferentes módulos desarrollados.
Programa de contenidos teóricos y prácticos
Teórico
- Tema 1. Introducción a la Programación en Python.
- Elementos básicos del lenguaje.
- Tipos de datos.
- Tema 2. Computación numérica en Python y visualización de datos científicos.
- Numpy.
- Visualización de datos.
- Scipy.
- Tema 3. Programación de interfaces de usuario en Python.
- Cuestiones básicas.
- Desarrollo de interfaces de usuario para programación científica.
- Tema 4. Uso de Python con otros lenguajes.
- Envolviendo código.
- Herramientas.
- Tema 5. Módulos de Python para programación técnica y científica.
- Pandas.
- Scikit-learn.
- Otros módulos.
Práctico
- Bibliotecas científicas y para ingeniería: Numerical Recipes, OpenCV, etc.
- Desarrollo de una aplicación científica con Python.
- Eficiencia numérica con Python.
- Desarrollo de una aplicación con bibliotecas científicas.
- Seminarios:
- Instalación de herramientas.
- Elementos de Ingeniería del software con Python.
- Desarrollo de aplicaciones web con Python.
Bibliografía
Bibliografía fundamental
- Langtangen, H.P., A Primer on Scientific Programming with Python(3ª ed), Springer, 2012.
- Langtangen, H.P., Python Scripting for Computational Science, Springer, 2009.
- Kaplan, D., Introduction to Scientific Computation and Programming, CL-Engineering, 2004.
- Strang, G., Computational Science and Engineering, Wellesley-Cambridge Press, 2007.
Bibliografía complementaria
- Martelli, A., Python in a nutshell. A desktop quick reference (4ªed), O'Really, 2023
- Martelli, A., Martelli, A., Ascher, D., Python Cookbook, O'Really, 2013
- Rossant, C., Learning IPython for interactive computing and data visualization : learn IPython for interactive Python programming, high-performance numerical computing, and data visualization, Packt Publishing, 2013
- Danaila, I., Joly, P., Kaber, S.M. y Postel, M., An Introduction to Scientific Computing: Twelve Computational Projects Solved with MATLAB, Springer, 2006.
- Kiusalaas, J., Numerical Methods in Engineering with Python, Cambridge University Press, 2013.
- Press, W.H., Teukolsky, S.A., Vetterling, W.T. y Flannery, B.P., Numerical Recipes: The Art of Scientific Computing, Cambridge University Press, 2007.
Enlaces recomendados
Metodología docente
- MD01. Lección Magistral (Clases Teóricas-Expositivas)
- MD02. Actividades Prácticas (Resolución de Problemas, Resolución de Casos Prácticos, Desarrollo de Proyectos, Prácticas en Laboratorio, Taller de Programación, Aula de Informática, Prácticas de Campo).
- MD03. Seminarios (Debates, Demos, Exposición de Trabajos Tutelados, Conferencias, Visitas Guiadas, Monografías).
- MD04. Actividades no presenciales Individuales.
- MD05. Actividades no presenciales Grupales.
- MD06. Tutorías Académicas.
Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final)
Evaluación ordinaria
- Para la parte teórica se realizará una examen teórico-práctico. La ponderación de este bloque será de un 50%.
- Para la parte práctica se realizarán prácticas de laboratorio, resolución de problemas y desarrollo de proyectos individuales. Así mismo, se valorarán las entregas de los informes/memorias realizados por los estudiantes, o en su caso, las entrevistas personales con los estudiantes y las sesiones de evaluación. La ponderación de este bloque será de un 40%.
- La parte de trabajo autónomo y los seminarios se evaluarán teniendo en cuenta la asistencia a los seminarios, los problemas propuestos que hayan sido resueltos y entregados por los estudiantes y las entrevistas efectuadas durante el curso y la presentación oral de los trabajos desarrollados. La ponderación de estos será de un 10%.
- La calificación global corresponderá por tanto a la puntuación ponderada de los diferentes aspectos y actividades que integran el sistema de evaluación. Por tanto, el resultado de la evaluación será una calificación numérica obtenida mediante la suma ponderada de las calificaciones correspondientes a una parte teórica, una parte práctica y, en su caso, una parte relacionada con el trabajo autónomo de los estudiantes, los seminarios impartidos y el aprendizaje basado en proyectos.
Actividades Formativas | Ponderación |
---|---|
Parte teórica | 50% |
Parte práctica | 40% |
Otros (seminarios, participación, etc) | 10% |
Evaluación extraordinaria
- Se realizará un examen teórico-práctico que corresponderá al 100% de la calificación.
- Cada estudiante podrá guardar la nota obtenida en la convocatoria ordinaria en los bloques de "Parte Práctica" y “Otros” y en ese caso la calificación final del examen teórico-práctico será de 5 puntos.
Evaluación única final
- Esta modalidad de evaluación se realizará en un acto académico en la fecha establecida por el Centro.
- El contenido se evaluará mediante un examen escrito (evaluado de 0 a 10) que incluirá preguntas y problemas de tipo teórico-práctico.
Información adicional
Definición de grupo grande y grupo pequeño:
- Los grupos grandes son grupos de 45 a 60 estudiantes.
- Los grupos pequeños son grupos de 15 a 20 estudiantes.
Información de interés para estudiantado con discapacidad y/o Necesidades Específicas de Apoyo Educativo (NEAE): Gestión de servicios y apoyos (https://ve.ugr.es/servicios/atencion-social/estudiantes-con-discapacidad).