El Módulo III - Cursos de especialización, del que forma
parte esta asignatura, incluye una selección de asignaturas en temas
especializados que permitirán al alumno diseñar, con la ayuda de su tutor, el
conjunto de conocimientos y habilidades que mejor se adapten a sus
expectativas investigadoras o laborales. El alumno deberá cursar un total de 6
ECTS en este módulo.
Varias de las asignaturas ofertadas en este módulo se imparten en forma de
cursos intensivos internacionales de una semana de duración abiertos a
estudiantes no inscritos en el Máster, con el objetivo de diversificar y
enriquecer el entorno de formación de los estudiantes con un mayor número y
variedad de profesores y compañeros (futuros colegas y colaboradores).
Por la naturaleza de la enseñanza en este módulo, las asignaturas, en especial
las que se corresponden con cursos internacionales, se impartirán en
diferentes ubicaciones, incluyendo laboratorios extranjeros cuando la
especificidad del tema así lo imponga (por ejemplo, la asignatura de
"Cristalografía en grandes instalaciones"). La oferta de asignaturas, así como
el número máximo de estudiantes en cada asignatura y el mínimo necesario (en
su caso), se fijarán y comunicarán anualmente. Algunas de las asignaturas
correspondientes a cursos internacionales tendrán periodicidad bianual.
La asignatura de Cristalografía computacional y desarrollo de software
cristalográfico ofrece al estudiante un aprendizaje práctico de los
abundantes aspectos computacionales de la cristalografía. A partir de la
discusión de la representación numérica de las "propiedades" del sólido
cristalino (celdilla unidad, simetría...) se introducen los algoritmos más
frecuentes para el cálculo de posiciones atómicas, ángulos, etc., así como
para la búsqueda de fases aproximadas y el refinamiento de las mismas para
obtener una solución estructural.
El estudiante es introducido a los aspectos computacionales en la práctica
mediante el desarrollo de programas usando lenguajes compilados e
interpretados en conjunción con las librerías cristalográficas más populares y
dedica una parte importante del tiempo al desarrollo de software bajo la
supervisión del profesorado.
Finalmente también son introducidos los principales retos actuales y los temas
de investigación de actualidad en cristalografía computacional, incluyendo
nuevos algoritmos y aproximaciones a problemas no resueltos.
Cristalografía computacional y desarrollo de software cristalográfico
101182
2016-17
MÁSTER UNIVERSITARIO EN CRISTALOGRAFÍA Y CRISTALIZACIÓN
3
OPTATIVA
Anual
Inglés
Los contenidos de la asignatura se estructuran en los siguientes temas:
Introducción al cálculo cristalográfico. Las matemáticas esenciales para la
Cristalografía.
Lenguajes de programación para el desarrollo de software numérico: Alto nivel
frente a bajo nivel. Fortran frente a C o C++. Lenguajes de scripting: shell,
Python. Uso de compiladores y depuradores.
Introducción a la programación modular con Fortran.
Lo esencial de Orientación a Objetos (OO): estructuras de datos, sobrecarga de
funciones y operadores, encapsulado, ocultación de datos, herencia y
polimorfismo. Cómo expresar OO en Fortran 95/2003.
Uso de Internet para obtener código numérico útil en cristalografía: Netlib,
TOMS, etc.
Revisión de las librerías cristalográficas disponibles de forma pública. CCSL,
CrysFML, cctbx.
Programación de cálculos cristalográficos elementales.
Creación de estructuras de datos para cristalografía: celdilla, átomos y
grupos espaciales. Cálculos geométricos: distancias, ángulos de enlace,
ángulos dihedros, etc. Cálculos de simetría. Generación de listas de
reflexiones para una métrica y un grupo de simetría dados. Mapas de Fourier.
Rutinas disponibles en CrysFML.
Módulos matemáticos básicos. Tablas químicas y de dispersión. Utilidades.
Módulo de Simetría. Tipos para celdillas y átomos. Utilidades para
reflexiones: tipos para reflexiones, ausencias sistemáticas, generación de
listas de reflexiones. Lectura de ficheros CIF y de patrones de difracción.
Funciones de perfil de pico. Cálculo de factorews de estructura. Técnicas de
optimización.
Programación usando CrysFML.
Información sobre grupos espaciales. Comprobación de posibles grupos
espaciales a partir del análisis de listas experimentales de reflexiones.
Cálculo de factores de estructura a partir de los datos de un fichero CIF.
Introducción a la programación de Interfases Gráficas.
Métodos de programación de GUIs. Separando el código de cálculo intensivo de
las interacciones con el usuario. Uso de librerías para la implementación de
GUIs: Winteracter, GINO, MathFor. Software libre para la creación de GUIS.
CG1.- Capacidad de análisis y síntesis
CG2.- Resolución de problemas
CG3.- Trabajo en un equipo de caracter interdisciplinario
CG4.- Trabajo en un contexto internacional
CG5.- Aprendizaje y trabajo autónomos
CG6.- Capacidad de aplicar los conocimientos teóricos en la práctica
CG7.- Capacidad de elaboración y transmisión de ideas, proyectos, informes,
soluciones y problemas
CG8.- Capacidad de organización y planificación
CG9.- Capacidad de entender el lenguaje y propuestas de otros especialistas
CT1.- Comunicación oral y escrita
CT2.- Conocimiento de lenguas extranjeras
CT3.- Capacidad de gestión de la información
CT4.- Habilidades en las relaciones interpersonales
CT5.- Trabajo en equipo
CT6.- Razonamiento crítico
CT7.- Creatividad
CT8.- Uso de Internet como medio de comunicación y fuente de información
CE4.- Entender y valorar artículos científico-técnicos de revistas
especializadas en cristalografía y cristalización
CE35.- Ser capaz de solucionar problemas computacionales mediante el uso de
librerías cristalográficas y lenguajes de scripting
CE36.- Ser capaz de desarrollar software cristalográfico básico para su
utilización por terceros
AF1.- Clases presenciales activas: Combinación de teoría, problemas cortos,
preguntas y discusión con los alumnos.
AF4.- Seminarios.
AF5.- Prácticas de computación y bases de datos.
AF6.- Tutoría individual o grupal.
AF7.- Evaluación.
AF8.- Clases prácticas en laboratorio.
AF9.- Planificación, realización y análisis de experimentos (tutelada).
AF10.- Trabajo autónomo.
AF11.- Visitas a empresa o centro de investigación.
AF12.- Trabajo en grupo.
Esta materia se imparte como un curso internacional abierto a la participación
de estudiantes no registrados en el Máster.
Dicho curso se denomina "Course on Software Development for
Crystallography" y se imparte en Grenoble organizado por el Institut
Laue-Langevin (ILL).
En la última edición en que participaron alumnos del máster, participaron 18
alumnos (2 de ellos del máster) y 4 profesores de reconocido prestigio en el
campo.
Para más información ver la página
web del curso.
Los objetivos de aprendizaje a alcanzar en esta asignatura son:
Aprendizaje de los rudimentos de métodos de programación modernos:
programación modular, orientada a objetos, etc.
Programas de tipo consola y desarrollo de interfaces gráficas para el usuario
(GUI). Lenguajes de programación Fortan 95/2003 y Python.
Aprendizaje de la utilización de librerías cristalográficas existentes: CCSL
(Fortran), CrysFML (Fortran), cctbc (C++, Python), etc. Utilización de
lenguajes de scripting para enlazar cálculos avanzados.
Alcanzar el nivel suficiente para realizar programas de cáclulo
cristalográfico elementales: lectura de ficheros y transformación de formatos,
generación de listas de reflexiones, cálculo de factores de estructura, etc.
Alcanzar el nivel suficiente para la realización de un programa de resolución
de estructuras cristalinas usando métodos de optimización global (simulated
annealing) y local (gradiente) basado en librerías CrysFML o cctbx.
Sistema de evaluación (ponderación mínima y máxima %)
Prueba escrita (0%-80%)
Realización de prácticas y/o cuaderno de prácticas (0%-70%)
Realización y presentación de trabajos e informes (0%-50%)
Participación en seminarios (0%-30%)
Participación en clase (0%-30%)
Asignatura no ofertada en el curso académico 2015-2016
Profesor Responsable de la asignatura
Crystallographic Computing 5: From Chemistry to Biology. D. Moras, A.D.
Podjarny and J.C. Thierry Eds. IUCr: Oxford Science Publications, Oxford
University Press, 1991.
Phython Scripting for Computational Science, Hans Petter Langtangen, Springer,
2004.
Fortran90 Programming, T.M.R. Ellis, Ivor R. Philips and Thomas M. Lahey,
Adison Wesley, 1994.
Este documento puede utilizarse como documentación de referencia de esta asignatura para la solicitud de reconocimiento de créditos en otros estudios. Para su plena validez debe estar sellado por la Secretaría de Estudiantes UIMP.
Descripción no definida
Anual
Créditos ECTS: 3
García Granda, Santiago
Catedrático de Química Física
Universidad de Oviedo
Presidente de la European Crystallographic Association
Rodríguez Carvajal, Juan José
Director
Diffraction Group Institut Laue Langevin (ILL), France
Profesor Responsable de la asignatura