Guía docente de Fundamentos de Programación Científica en Química (29111F1)

Curso 2022/2023
Fecha de aprobación: 15/06/2022

Grado

Grado en Química

Rama

Ciencias

Módulo

Programación Científica en Química

Materia

Fundamentos de Programación Científica en Química

Curso

4

Semestre

1

Créditos

6

Tipo

Optativa

Profesorado

Teórico

Luis Javier Herrera Maldonado. Grupo: A

Práctico

  • Héctor Jesús García de Marina Peinado Grupo: 3
  • Luis Javier Herrera Maldonado Grupo: 1
  • Claudia Villalonga Palliser Grupo: 2

Tutorías

Luis Javier Herrera Maldonado

Email
  • Primer semestre
    • Martes
      • 10:00 a 12:00 (Facultad de Ciencias)
      • 17:00 a 19:00 (Facultad de Ciencias)
    • Jueves de 12:00 a 14:00 (Facultad de Ciencias)
  • Segundo semestre
    • Martes
      • 10:00 a 12:00 (Etsi Informática)
      • 17:00 a 19:00 (Etsi Informática)

Héctor Jesús García de Marina Peinado

Email
No hay tutorías asignadas para el curso académico.

Claudia Villalonga Palliser

Email
  • Segundo semestre
    • Lunes de 15:30 a 18:30 (Edificio Auxiliar D-1.3)
    • Martes de 15:30 a 18:30 (Edificio Auxiliar D-1.3)
  • Primer semestre
    • Martes de 10:00 a 14:00 (Edificio Auxiliar de la Etsiit. D-1.3)
    • Miércoles de 10:00 a 12:00 (F. Ciencias - 3ª Planta - Edificio de Física)

Prerrequisitos y/o Recomendaciones

No se exigen

Breve descripción de contenidos (Según memoria de verificación del Grado)

  • Conceptos básicos sobre Programación.
  • Lenguajes de alto nivel orientados al cálculo científico.
  • Datos, estructuras de control y funciones.
  • Ficheros.
  • Representación gráfica y visualización de datos.
  • Métodos informáticos para el análisis de datos.

Competencias

Competencias generales

  • CG01. El alumno deberá adquirir la capacidad de analizar y sintetizar 
  • CG03. El alumno deberá adquirir la capacidad de comunicarse de forma oral y escrita en la lengua oficial del Grado 
  • CG05. El alumno deberá adquirir la capacidad de gestionar datos y generar información / conocimiento 
  • CG06. El alumno deberá adquirir la capacidad de resolver problemas 
  • CG09. El alumno deberá adquirir la capacidad de razonar críticamente 
  • CG10. El alumno deberá adquirir la capacidad de realizar un aprendizaje autónomo para su desarrollo continuo profesional 

Competencias específicas

  • CE30. El alumno deberá saber hacer o tener la capacidad de utilizar razonadamente las herramientas matemáticas e informáticas para trabajar con datos químicos 
  • CE46. El alumno deberá saber o conocer los fundamentos o principios de otras disciplinas necesarios para las distintas áreas de la Química. 

Resultados de aprendizaje (Objetivos)

Al finalizar esta materia el alumnado deberá:

  • Programar en un lenguaje relevante para el cálculo científico.
  • Utilizar herramientas informáticas orientadas a aplicaciones científico-técnicas para el análisis de datos y la simulación de sistemas químicos.
  • Identificar las posibilidades y limitaciones de los ordenadores como herramienta para el avance del conocimiento científico y para el desarrollo profesional.

Programa de contenidos teóricos y prácticos

Teórico

  • BLOQUE 1.  Conceptos básicos sobre Programación de Ordenadores: Informática, sistema informático, datos e información. Arquitectura básica de un computador. El sistema operativo. Programación de ordenadores. Informática, programación de ordenadores y Química. Química computacional.
  • BLOQUE 2. Introducción a MATLAB: Entorno de programación MATLAB. Variables, tipos de datos, constantes. Expresiones. Funciones matemáticas básicas.
  • BLOQUE 3. Operaciones básicas en MATLAB: Vectores y matrices. Funciones avanzadas. Derivación e Integración. Aplicaciones básicas de Quimiometría.
  • BLOQUE 4. Lectura y visualización de datos. Scripts: Directorio de trabajo. Creación de scripts. Comandos de entrada y salida de datos. Gráficos: Visualización de datos en 2D y 3D. Lectura de datos de fichero. Guardando datos en fichero.
  • BLOQUE 5. Programación estructurada en MATLAB: Programación estructurada. Depuración de programas. Resolución de problemas científicos de optimización y minimización.
  • BLOQUE 6. Programación avanzada: funciones y estructuras de datos: Introducción, estructura de una función. Argumentos de entrada y salida. Variables locales y globales. Comparativa entre scripts y funciones. Estructuras. Otros conceptos: Cells, Recursividad y Programación dirigida a Objetos.
  • BLOQUE 7: Aplicaciones avanzadas utilizando Programación en Química. Análisis de datos Químicos, Calibración en Química. Clasificación. Regresión. Simulación de procesos químicos. Uso de plataformas de altas prestaciones para aplicaciones químicas.

Práctico

Seminarios/Talleres

  • Introducción a la programación y control de procesos con Arduino (complementado con sesiones en teoría y prácticas).
  • Otros lenguajes para programación científica avanzados: Octave, Python.
  • Interfaces entre MATLAB y Excel.
  • Calibración y Validación en Química.

Prácticas de Laboratorio:

  • Bloque I. Entorno de programación y programación básica con MATLAB.
  • Bloque II. Vectores y matrices
  • Bloque III. Primeros programas en MATLAB. Entrada y salida de datos. Visualización de datos. Problemas.
  • Bloque IV. Programación estructurada en MATLAB.
  • Bloque V. Programación estructurada en MATLAB II.
  • Bloque VI. Verificación y Depuración de programas.
  • Bloque VII. Eficiencia.
  • Bloque VIII. Estructuras de datos compuestas.
  • Bloque IX. Polinomios y regresión.

Bibliografía

Bibliografía fundamental

  • Curso Básico de Programación en MATLAB. Antonio Souto y otros. Editorial Tébar, 2014.
  • Essential MATLAB for Engineers and Scientists, Brian H. Hahn & Daniel T. Valentine. 5ª Edición, Elsevier, 2019.
  • (Recurso electrónico) Numerical Methods with Worked Examples: Matlab Edition. C. Woodford, C. Phillips. Springer 2012.
  • MATLAB: Una Introducción con ejemplos prácticos. Amos Gilat. Barcelona : Reverté, 2006.

Bibliografía complementaria

  • (Recurso electrónico) Practical data analysis in chemistry. Marcel Maeder and Yorck-Michael Neuhold. Oxford : Elsevier, 2011.
  • Chemometrics: Data Analysis for the Laboratory and Chemical Plant. Richard G. Bre-reton. Wiley. 2003.
  • Cálculo científico con MATLAB y Octave.  A.Quarteroni, F.Saleri. Milano: Springer, 2006.
  • MATLAB y sus Aplicaciones en las Ciencias y la Ingeniería. César Pérez. Prentice Hall. 2012.
  • MATLAB : a practical introduction to programming and problem solving. Stormy At-taway. Amsterdam : Butterworth-Heinemann, 2016.

Enlaces recomendados

PROGRAMACIÓN:

BIBLIOGRAFÍA EN FORMATO ELECTRÓNICO:

Metodología docente

  • MD01. Lección magistral/expositiva. 
  • MD02. Resolución de problemas y estudios de casos prácticos. 
  • MD05. Prácticas en sala de informática. 
  • MD06. Seminarios. 
  • MD08. Realización de trabajos en grupo. 
  • MD09. Realización de trabajos individuales. 

Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final)

Evaluación ordinaria

La evaluación de la adquisición de las competencias de esta materia se realizará, de forma individualizada, a partir mecanismos que combinen un seguimiento continuo y un examen final. Se basará en los siguientes componentes principales, independientemente del régimen de asistencia (presencial o virtual):

  • Asistencia y participación en las sesiones presenciales, realizando los ejercicios que se irán proponiendo a lo largo de las sesiones.
  • Realización de las diferentes prácticas de ordenador.
  • El examen final consiste en la resolución de diversos problemas de Programación (en muchos casos similares a los que se tratarán en teoría y prácticas).
  • Será necesario superar el examen final para superar la asignatura.
  • La ponderación aproximada de cada una de las partes de los criterios de evaluación será la siguiente:
    •   Asistencia, participación 10%.
    •   Examen final 45%.
    •   Prácticas de laboratorio 45%.

Evaluación extraordinaria

En la convocatoria extraordinaria, la calificación final será el MÁXIMO entre la nota del examen final, y la ponderación anterior (asistencia y participación 10%; examen final 45%; prácticas de laboratorio 45%).

Evaluación única final

En virtud al Artículo 8 de la Normativa de Evaluación y Calificación de los Estudiantes de la Universidad de Granada, el alumno puede examinarse mediante la evaluación única final. Para acogerse a esta opción, el estudiante ha de solicitarlo al director del Departamento en las dos primeras semanas de impartición de la asignatura, alegando y acreditando las razones que le asisten para no poder seguir el sistema de evaluación continua.

La prueba única consistirá en un examen de ejercicios de programación, relacionados con el temario impartido en la asignatura. Durante la prueba, dichos ejercicios podrán ser practicados en el ordenador, y en cualquier caso serán entregados al profesor.