Herramientas de software libre en investigación en Química Física

2,386 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,386
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Herramientas de software libre en investigación en Química Física

  1. 1. Herramientas de software libreen investigación en Química Física Daniel Martín Yerga
  2. 2. Introducción En esta monografía se va a realizar una pequeña introducción sobre el estado del software libreen la investigación de Química Física. Para ello se va a comenzar definiendo los conceptos más importantes relevantes a estasdisciplinas, siguiendo con un análisis técnico de algunos de los programas de software libredesarrollados en los últimos años por grupos de investigación para alguna de las aplicaciones dentro dela materia de Química Física. Por último, el autor llega a unas conclusiones sobre el estado del arte enla conjunción del software libre y la Química Física, con las miras puestas en el futuro de ambasdisciplinas. • ¿Qué es el software libre? Para que un programa sea software libre, éste debe cumplir las cuatro libertades básicassiguientes: 0. Libertad de ejecutar el programa, para cualquier propósito. 1. Libertad de estudiar el programa y adaptarlo a tus necesidades. 2. Libertad de redistribuir copias. 3. Libertad de mejorar el programa y publicar sus mejoras. • ¿Qué es la Química Física? Es una rama de la Química en la que se aplican conceptos físicos a distintos sistemas químicos,para estudiar sus propiedades y su comportamiento. Un sistema químico se puede estudiar desde dospuntos de vista, macroscópico y microscópico. Mientras ambos puntos de vista siguen siendo estudiados en la investigación moderna, en losúltimos años hay un mayor interés en el punto de vista microscópico porque es donde queda un mayornúmero de variables por determinar y sin lugar a dudas es un mundo mucho más oscuro y de másdifícil entendimiento que el mundo macroscópico que podemos observar con nuestros ojos, ya que elcomportamiento de las partículas microscópicas nada tiene que ver con el comportamiento de losobjetos macroscópicos que son los que observamos en el día a día. • Distintos campos en Química Física La Química Física se puede dividir en cuatro grandes áreas principales: • Termodinámica: es un área macroscópica que trata de las relaciones entre las propiedades de equilibrio de un sistema químico, y de los cambios en las propiedades de equilibrio en los procesos. Daniel Martín Yerga
  3. 3. • Química Cuántica: es la aplicación de la Mecánica Cuántica a la estructura atómica, los enlaces moleculares y la espectroscopia (interacción de la radiación electromagnética con la materia). La Mecánica Cuántica explica el comportamiento de las moléculas, y de las partículas atómicas como electrones, neutrones, etc., ya que éstas no siguen las leyes clásicas de la Física de Newton. • Mecánica estadística: explica las leyes de la termodinámica en un ámbito molecular (microscópico) y permite calcular propiedades termodinámicas macroscópicas a partir de propiedades moleculares. • Cinética: es el estudio de la velocidad en procesos tales como las reacciones químicas, la difusión, flujo electroquímico, etc. Todas estas áreas de la Química Física constituyen los principios físicos que se aplican en todaslas demás ramas de la Química, como son la Analítica, Inorgánica, Orgánica, incluso IngenieríaQuímica. También tienen una importante contribución a otras ramas científicas como la Bioquímica (yBioinformática) y la Geología. • ¿Dónde entra el software en la investigación en Química Física? Todas estas áreas, aunque están basadas en experimentos científicos como cualquier otraciencia, tienen una importante parte teórica. Esta parte teórica consta, generalmente, de cálculosrealmente complejos con ecuaciones con muchas variables e incógnitas que deben ser resueltas.Este trabajo es realmente complejo para realizarlo manualmente. Con lo que la única forma de llegar a resultados fiables y lo más automatizados posibles esescribiendo el software para que realicen esos cálculos. Uno de los mayores problemas que tienen estosprogramas es que necesitan un importante tiempo de CPU para llegar a los resultados esperados,cuando se intentan introducir la mayor cantidad de variables en el sistema o estudiar sistemas químicoscomplejos, lo que debe hacerse para obtener un visión del sistema lo más real posible. En los estudios de Química Física se hace un especial hincapié a la enseñanza de laprogramación ya que es una pieza clave que van a usar posteriormente si los estudiantes continúan enel ámbito de la investigación. Los lenguajes de programación enseñados varían dependiendo de losgustos de quién lo enseño, pero los más usuales son Python, Perl, C, Fortran. También se intenta quelos estudiantes cojan soltura en el manejo del sistema operativo GNU/Linux, ya que la versatilidad deeste sistema lo hace apropiado para el desarrollo del software que se crea en investigación. Daniel Martín Yerga
  4. 4. Algunos ejemplos de software libre En esta sección se van a estudiar distintos ejemplos de software libre desarrollados porinvestigadores con sus aplicaciones en el ámbito de la Química Física. Se realiza una ligera descripciónde los procesos químicos del problema que se requiere resolver, así como los métodos que el softwarecreado utiliza para llegar a soluciones de esos problemas. • g_permute Los procesos biomoleculares son gobernados por cambios en la energía libre y por lo tantodependen de una interacción afinada entre la entropía y la entalpía. Para el cálculo de valores precisos para entropías a partir de simulaciones es particularmentecomplicado para la capa de solvatación de proteínas, que contribuye crucialmente a la energía total deproteínas solvatadas, debido al movimiento difusivo de las moléculas disolventes. La entropía debida al disolvente puede ser estimada desde una trayectoria de dinámicamolecular compacta por medio de métodos establecidos de estimación de entropía. g_permute es un software libre que implementa un algoritmo para la estimación de entropía. Para ello utiliza un método para compactar el espacio de configuración de moléculas explotandosu simetría de permutación. g_permute lee una trayectoria de la molécula e intercambia la posición dela molécula por la de otra, permutando los índices de las moléculas disolventes en cada momento. Estatransformación no cambia las propiedades del sistema por lo que la trayectoria resultante todavíaproveerá cantidades termodinámicas acertadas. Trayectoria de una molécula de agua. g_permute está escrito en C y licenciado bajo la GPL. • AlgoGen-DivCon En la búsqueda de métodos de acoplamiento más precisos energéticamente y para evitar elproblema de definir un adecuado campo de fuerzas de ligando, se ha construido un software pararealizar acoplamientos moleculares rígidos combinando un algoritmo genético con un programasemiempírico de escalado lineal. El software usa la metodología de escalado lineal “Divide and Conquer” para evaluar energíasde interacción proteína-ligando usando hamiltonianos cuánticos semiempíricos mientras se realiza unabúsqueda conformacional por el algoritmo genético que optimiza la posición de un relativo ligandomóvil a un sistema proteínico fijo. Daniel Martín Yerga
  5. 5. Como ejemplo de la utilidad de este software se ha conseguido unos resultados similares a lasconocidas estructuras cristalográficas para el acoplamiento de la 8-azaxantina, ácido oxónico y ácidoúrico, y prueban que es posible realizar, en un razonable tiempo, acoplamientos moleculares decomplejos ligando-proteína relativamente grandes usando una descripción cuántica de la energía deinteracción. El código de acoplamiento molecular permite la predicción de la orientación relativa de unligando dado con respecto al sitio activo de la proteína. Estos programas computan un valor que reflejala propensidad de que ese ligando enlace a la proteína. Ese valor está usualmente asociado con laenergía de interacción entre ambos. De los otros softwares que existen para realizar esto, la mayoría están basados en unadescripción de mecánica molecular o en una evaluación empírica de las interacciones ligando-proteína. Generalmente, están limitados en la descripción del ligando y su interacción con la proteína. Un camino para eludir estos problemas sería usar una descripción cuántica del ligando y de lainteracción. Los cálculos cuánticos sólo necesitarían la enumeración de los elementos químicosformando el sistema junto con las cargas netas de la proteína y el ligando para evaluar la energía deinteracción entre las dos entidades. Calcular computacionalmente la energía de un ligando enlazado a una proteína es un problemaen química cuántica debido al tamaño del sistema biomolecular. Usando algoritmos estándar, el tiempo de CPU necesario para una computación cuántica seincrementa exponencialmente con el tamaño del sistema. Esto limita el número de átomos que puedenser usados para representar la interacción. En los últimos años, nuevos algoritmos basados en cuántica han sido desarrollados quepermiten el uso de sistemas muy grandes usando un razonable tiempo de CPU. Uno de ellos es el“Divide and Conquer”. AlgoGen-DivCon es un software que permite la búsqueda de la mejor orientación de un ligandodentro del sitio activo de una proteína. Es el primer programa de acoplamiento que combinaevaluaciones de energía semiempíricas de escalado lineal con una herramienta de búsqueda deconformaciones como es un algoritmo genético. Está formado por dos scripts en Python, uno es la optimización del algoritmo genético y el otroes una interfaz al programa DivCon. DivCon es otro programa desarrollado para computacionessemiempíricas de energía cuántica de sistemas grandes usando el método “Divide and Conquer”. • Complemento para Abinit Daubechies wavelets son una base sistemática poderosa para cálculos de estructura electrónicaporque son ortogonales y localizadas en el espacio real y el espacio de Fourier. Esta base puede ser utilizada para obtener un método altamente eficaz y preciso para calcular ladensidad funcional de la estructura electrónica. Daniel Martín Yerga
  6. 6. Una base wavelet consiste de una familia de funciones de onda generadas desde una funciónmadre y su traducción en los puntos de un grid uniforme. Grid adaptado para una molécula de agua. La localización en el espacio real es esencial para sistemas moleculares. Las bases que no sonlocalizadas en el espacio real son completamente inútiles en este contexto. La localización en el espacio de Fourier es útil para propósitos precondicionales. Para unsistema dado, la velocidad de convergencia del proceso de minimización depende en el mayor valorpropio del operador Hamiltoniano. Una función localizada en el espacio de Fourier es un valor propioaproximado del operador energía cinética. Una implementación de este método está disponible como un complemento para el softwareABINIT. También existe una versión separada. Este código muestra muy buenos resultados y unaeficiencia excelente para cálculos paralelos. • XCMS 2 La espectrometría de masas basada en metabolómica es una nueva área para desarrollostecnológicos en bioinformática. Mientras las actuales herramientas computacionales disponibles pare este área evalúanestadísticamente y figuran características de cromatografía de líquidos/espectrometría de masas(LC/MS), éstas no proveen información sobre su identidad estructural. XCMS2 es un paquete informático de software libre que ha sido desarrollado paraautomáticamente buscar información de MS/MS frente a datos de conocidos metabolitos contenidos enuna librería de referencia. El tanteo de aciertos está basado en un método de contaje de picos compartidos que identificamasas de fragmentos de iones compartidos entre el espectro experimental y de referencia. Otra componente funcional de XCMS2 es la capacidad de proveer información estructural parametabolitos desconocidos que no están en la base de datos. Este algoritmo de búsqueda de similaridad ha sido desarrollado para detectar posibles motivosestructurales en el metabolito desconocido que podrían producir fragmentos iónicos característicos ypérdidas neutras a relacionados compuestos de referencia de la base de datos, incluso si las masas delprecursor son diferentes. Daniel Martín Yerga
  7. 7. Un objetivo común de la mayoría de plataformas en metabolómica es permitir a los usuariosencontrar y evaluar estadísticamente características que muestren un cambio significante entrediferentes grupos de muestras. Recientemente, tres diferentes programas open source fueron publicados para análisis de MS demetabolitos; XCMS, MathDAMP, Met-IDA. XCMS es distinguido porque permite el alineamiento de espectros no lineales y análisisdiferencial, también como capaz de funcionar en distintas plataformas como Unix-based OS, Mac OSX, y Microsoft Windows. XCMS está escrito en R permitiendo ser altamente accesible y modular. XCMS2 es una extensión a XCMS con la capacidad añadida de la automática búsqueda deespectros frente a una base de datos de referencia y análisis de muestras desconocidas de metabolitos.Provee, además, una herramienta de visualización para la comparación cara-a-cara de los espectrosexperimentales y de referencia. • LAMMPS, POEMS Un grupo de investigación ha creado un programa de software libre con el objetivo de usareficientes métodos de dinámica multicuerpo para simular sistemas moleculares de grano grueso. En estas simulaciones un aumento de velocidad de un orden de magnitud es realizado paraerrores conservativos con un esquema de integración de paso de tiempo fijo. Las simulaciones de las dinámicas de sistemas poliméricos y biomoleculares son usualmentecaracterizados por superficies de energía muy complejas y espacios conformacionales grandes. Hay dos fundamentales desafíos computacionales que han limitado el ámbito de lassimulaciones de dinámica molecular: • El primero está asociado con el tamaño espacial de estos sistemas que hace que los cálculos de interacciones entre moléculas sea un caro paso computacional en las simulaciones. Estos sistemas de interés típicamente contienen un gran número de sitios de interacción (o átomos) y puede extenderse de cientos a miles grados de libertad. • El segundo desafío está asociado con la diversa frecuencia del sistema y los largos dominios temporales que contiene el fenómeno de interés. Como el tamaño del paso de integración es inversamente proporcional a la mayor frecuencia del sistema, una simulación de dinámica molecular de un sistema de escala fina típicamente se propaga con un paso de tiempo de integración de sólo femtosegundos. Una metodología ha sido presentada para simulaciones de dinámica molecular seleccionando ycombinando distintos algoritmos existentes desde diferentes campos de aplicación. El uso de eficientes algoritmos de dinámica multicuerpo acoplados con cálculos de campos defuerzas efectivos y altamente paralelizables es una investigación novel y resulta en un método decomputación muy eficaz para dinámica molecular limitada. Daniel Martín Yerga
  8. 8. Este método esta implementado en una aplicación de software libre escrita en C++, donde seacopla el software de dinámica molecular LAMMPS (Large-scale Atomic/Molecular MassivelyParalell Simulator) y el eficiente software de método multicuerpo POEMS (Parallelizable Open-sourceEfficient Multibody Software). LAMMPS modela un conjunto de partículas representando un sistema atómico, polimérico,biológico, metálico o de grano grueso, usando una variedad de campos de fuerzas y condiciones límite.Puede ser ejecutado en serie o en paralelo. POEMS es un programa de dinámica multicuerpo que modela la dinámica de sistemas de ordenreducido o grano grueso. Está diseñado para simular eficientemente sistemas con gran número decuerpos rígidos articulados. Contiene librerías con diferentes formulaciones dinámicas paraeficientemente generar y resolver las ecuaciones de movimiento de sistemas articulados. • MRMer Una de las últimas técnicas desarrolladas en Espectrometría de Masas (MS) es el monitoreo dereacciones múltiples (MRM). Esta técnica puede cuantificar e identificar péptidos específicos en unamezcla compleja con muy buena sensibilidad (bajas concentraciones) y alta velocidad. Por lo tanto,tiene un prometedor potencial para un ser un método de análisis de muestras para distintas biomarcas. MRMer es una plataforma de software interactivo para administrar experimentos complejos deMRM-MS, incluyendo análisis cuantitativo usando pares isotópicos ligeros/pesados de péptidos.MRMer extrae información de archivos de espectrometría de masas codificados en el formatomultiplataforma mzXML. Está basado en una extensión a msInspect, está escrito en Java utilizando los componentesJavaSwing, JfreeChart y SwiXml. Esta disponible bajo una licencia Apache 2.0. Daniel Martín Yerga
  9. 9. • Nanofiltran La nanofiltración es un proceso de filtración que se realiza con una membrana semipermeable.Es un proceso que se está aplicando en la industria de manera creciente, y donde su principal aplicaciónes la purificación y desmineralización de agua con bajo contenido de sólidos. La importancia de este proceso en la industria llevo a cabo una incesante actividadinvestigadora para conocer con profundidad los mecanismos de transporte de masas envueltos en elproceso de la nanofiltración. El objetivo era claro: desarrollar modelos físicos y matemáticos concapacidad de predecir los resultados de la nanofiltración en distinto tipos de disoluciones. Estos modelos han sido desarrollado en los últimos años por una serie de personas, hay distintostipos de modelos, cada uno con sus ventajas y limitaciones. Dos de estos modelos son el modelo de división de poro estérico de Donnan y el modelo deexclusión dieléctrica, con incorporación de la no idealidad de disoluciones de electrolitos y efectos depolarización de la concentración en la interfase de la membrana. Con estos modelos, las ecuaciones extendidas de Nernst-Planck son discretizadas dentro de lamembrana. Estas ecuaciones son linealizadas para así obtener una sistema de ecuaciones que sonresueltas simultáneamente. El sistema linealizado de ecuaciones está basado en una inicial conjetura para el potencialeléctrico en la disolución y perfiles de concentración de iones, que son actualizados iterativamente. Nanofiltran es un programa open-source que sirve para simular el transporte de masa dedisoluciones acuosas multiiónicas en membranas de nanofiltración. Es una valiosa herramienta para prediciones precisas y robustas y resuelve muchos de losproblemas que tienen otros métodos conocidos para diferentes modelos. Permite la resolución de las ecuaciones del modelo sin ningún tipo de limitacionesconcernientes con la forma de la concentración o gradientes de potencial en la membrana,concentración de iones en las disoluciones o número y valencia de especies iónicas. Daniel Martín Yerga
  10. 10. Conclusiones La ciencia moderna prácticamente no podría existir sin el libre intercambio de conocimientoque existe en la actualidad. La investigación científica actual se basa en un extraordinario intercambiode información por medio de infinidad de posibles formas: revistas, congresos, conferencias, proyectosde investigación comunes, etc. Todas estas formas de intercambio de información y de ideas sonesenciales en un entorno científico moderno y contribuyen al nacimiento de nuevos conceptos y mejorade los ya existentes. El software libre tiene mucho en común con la investigación científica, el software es mejoradogracias a los aportes de ideas y de código de otras personas interesadas, aparte de los creadores inicialesde ese software. La ciencia es ciencia porque cada uno puede comprobar sus resultados. Esto es posible ya quelos investigadores publican sus estudios de una forma detallada de los experimentos para que seancapaces de ser fácilmente reproducibles por otras personas. Algo similar ocurre al software libre, elcódigo está disponible así que otras personas puedan testearlo y ejecutarlo en diferentes contextos. La cooperación es una pieza clave en ambas disciplinas, un ambiente fértil tanto eninvestigación científica como en el ámbito del software libre sólo se puede conseguir gracias a lacolaboración de las distintas personas implicadas. La investigación científica donde se publica software, debería siempre usar software libre porvarias razones muy importantes: • El código fuente del programa está disponible para la revisión por toda la comunidad científica. • La libre distribución del software libre es una gran ventaja ya que podrá ser publicado en distintos artículos con lo que el número de citaciones crecería. • El programa puede ser modificado por cualquier persona de la comunidad científica con lo que se podrá ir mejorando para obtener mejores resultados científicos. Esto es una ventaja para el principal autor ya que su trabajo será citado y considerado en distintos artículos, también los cambios para las mejoras deberán ser hechos públicos con lo que todo el mundo se beneficiaría de esto. Otros autores verán con mejores ojos la modificación de un programa de software libre para sus respectivos usos, que la utilización de programas privativos y comerciales, donde generalmente no podrán introducir mejoras y deberán pagar por una licencia a una compañía por un precio bastante elevado. Esto cobra mayor importancia cuando las investigaciones están financiadas con dinero públicoy las administraciones correspondientes deberían de promulgar el uso de software libre en este ámbitode la investigación, por las ventajas que eso conlleva y por la claridad que se debe presentar cuando seestá obteniendo dinero de todos los ciudadanos. El conocimiento de este tipo de software y sus ventajas está aumentando en los últimos años porlo que el futuro es también prometedor en el ámbito de la investigación, en especial de la QuímicaFísica que tantos descubrimientos tendrá que explicar al mundo en los próximos años. Daniel Martín Yerga
  11. 11. Referencias Conceptos:• Ecuaciones Nernst-Planck: http://frank.itlab.us/datamodel/node95.html• Daubchies wavelets: http://en.wikipedia.org/wiki/Daubechies_wavelets• Nanofiltración http://en.wikipedia.org/wiki/Nanofiltration• Espectrometría de Masas: http://en.wikipedia.org/wiki/Mass_spectrometry• Entropía: http://en.wikipedia.org/wiki/Entropy• Entalpía: http://en.wikipedia.org/wiki/Enthalpy• Energía libre: http://en.wikipedia.org/wiki/Gibbs_free_energy• Espacio de Fourier: http://en.wikipedia.org/wiki/Fourier_space• Función de onda: http://en.wikipedia.org/wiki/Wave_function• Hamiltoniano: http://en.wikipedia.org/wiki/Hamiltonian_(quantum_mechanics)• Metabolómica: http://en.wikipedia.org/wiki/Metabolomics• Algoritmo Divide and Conquer: http://en.wikipedia.org/wiki/Divide_and_conquer_algorithm• Mecánica molecular: http://en.wikipedia.org/wiki/Molecular_mechanics Software:• XCMS: http://masspec.scripps.edu/xcms/xcms.php• g_permute: http://cpc.cs.qub.ac.uk/summaries/AECJ_v1_0.html• MathDAMP: http://mathdamp.iab.keio.ac.jp/• ABINIT: http://www.abinit.org/ Daniel Martín Yerga
  12. 12. • MRMer: http://proteomics.fhcrc.org/CPL/MRMer.html• LAMMPS: http://lammps.sandia.gov/ Artículos:• Analysis of the salt retention of nanofiltration membranes using the donnan-steric partitioning pore model Schaep J., Vandecasteele C., Wahab Mohammad A., Bowen W. R. Separation science and technology 1999 34 (15), 3009-3030• Computer program for simulation of mass transport in nanofiltration membranes Vítor Geraldes, Ana Maria Brites Alves Journal of Membrane Science 321 (2008) 172–182• Combining a genetic algorithm with a linear scaling semiempirical method for protein–ligand docking Eddy Thiriot, Gerald Monard Journal of Molecular Structure: THEOCHEM 898 (2009) 31–41• g_permute: Permutation-reduced phase space density compaction F. Reinhard, O.F. Lange, J.S. Hub, J. Haas, H. Grubmüller Computer Physics Communications 180 (2009) 455–458• Substructured molecular dynamics using multibody dynamics algorithms Rudranarayan M. Mukherjee, Paul S. Crozier, Steven J. Plimpton, Kurt S. Anderson International Journal of Non-Linear Mechanics 43 (2008) 1040 – 1055• MRMer, an Interactive Open Source and Cross-platform System for Data Extraction and Visualization of Multiple Reaction Monitoring Experiments Daniel B. Martin, Ted Holzman, Damon May, Amelia Peterson, Ashley Eastham, Jimmy Eng, and Martin McIntosh Molecular & Cellular Proteomics 7.11 (2008) 2270-2278• XCMS: Processing Tandem Mass Spectrometry Data for Metabolite Identification and Structural Characterization H. P. Benton, D. M. Wong, S. A. Trauger, and G. Siuzdak Anal. Chem., 2008, 80 (16), 6382-6389• Daubechies wavelets as a basis set for density functional pseudopotential calculations Luigi Genovese, Alexey Neelov, Stefan Goedecker, Thierry Deutsch, Seyed Alireza Ghasemi, Alexander Willand, Damien Caliste, Oded Zilberberg, Mark Rayson, Anders Bergman, and Reinhold Schneider THE JOURNAL OF CHEMICAL PHYSICS 129, 014109 2008͒ ͑ Daniel Martín Yerga

×