GROMACS es un paquete de dinámica molecular diseñado principalmente para simulaciones de proteínas , lípidos y ácidos nucleicos . Fue desarrollado originalmente en el departamento de Química Biofísica de la Universidad de Groningen , y ahora es mantenido por colaboradores en universidades y centros de investigación de todo el mundo. [5] [6] [7] GROMACS es uno de los paquetes de software más rápidos y populares disponibles, [8] [9] y puede ejecutarse en unidades centrales de procesamiento (CPU) y unidades de procesamiento gráfico (GPU). [10] Es un software gratuito de código abierto publicado bajo la Licencia Pública General Reducida de GNU (LGPL) [3] ( GPL antes de la versión 4.6).
El proyecto GROMACS comenzó originalmente en 1991 en el Departamento de Química Biofísica de la Universidad de Groningen , Países Bajos (1991-2000). Su nombre originalmente derivó de esta época ( GROningen MAchine for Chemical Simulations ), aunque actualmente GROMACS no es una abreviatura de nada, ya que ha habido poco desarrollo activo en Groningen en las últimas décadas. El objetivo original era construir un sistema informático paralelo dedicado a simulaciones moleculares, basado en una arquitectura de anillo (que luego fue reemplazada por los diseños de hardware modernos). Las rutinas específicas de dinámica molecular se reescribieron en el lenguaje de programación C a partir del programa GROMOS basado en Fortran 77 , que había sido desarrollado en el mismo grupo. [ cita requerida ]
Desde 2001, GROMACS es desarrollado por los equipos de desarrollo de GROMACS en el Instituto Real de Tecnología y la Universidad de Uppsala , Suecia .
GROMACS se opera a través de la interfaz de línea de comandos y puede usar archivos para entrada y salida. Proporciona información sobre el progreso del cálculo y el tiempo estimado de llegada (ETA), un visor de trayectorias y una amplia biblioteca para el análisis de trayectorias. [3] Además, el soporte para diferentes campos de fuerza hace que GROMACS sea muy flexible. Se puede ejecutar en paralelo, utilizando la Interfaz de Paso de Mensajes (MPI) o subprocesos . Contiene un script para convertir las coordenadas moleculares de los archivos del Banco de Datos de Proteínas (PDB) a los formatos que utiliza internamente. Una vez que se ha creado un archivo de configuración para la simulación de varias moléculas (posiblemente incluyendo el solvente ), la ejecución de la simulación (que puede llevar mucho tiempo) produce un archivo de trayectoria, que describe los movimientos de los átomos a lo largo del tiempo. Ese archivo se puede analizar o visualizar con varias herramientas suministradas. [11]
GROMACS ha tenido soporte para descarga de GPU desde la versión 4.5, originalmente limitada a las GPU de Nvidia. El soporte de GPU se ha ampliado y mejorado a lo largo de los años [12] y, en la versión 2023, GROMACS tiene backends CUDA, [13] OpenCL y SYCL para ejecutarse en GPU de AMD, Apple, Intel y Nvidia, a menudo con una gran aceleración en comparación con la CPU. [14]
En enero de 2010 [actualizar], el código fuente de GROMACS contenía aproximadamente 400 acrónimos alternativos a GROMACS , usados como bromas entre los desarrolladores e investigadores de bioquímica . Entre ellos se incluyen " Gromacs Runs On Most of All Computer Systems ", " Gromacs Runs One Microsecond At Cannonball Speeds ", " Good Rocking Metal Altar for Chronical Sinner ", " Working on GRowing Old Makes el Chrono Sweat " y " Great Red Owns Many ACres of Sand ". Se seleccionan al azar para que posiblemente aparezcan en el flujo de salida de GROMACS. En un caso, un acrónimo como " Giving Russians Opium May Alter Current Situation " causó ofensa. [15]
Bajo una licencia no GPL, GROMACS se utiliza ampliamente en el proyecto de computación distribuida Folding@home para simulaciones de plegamiento de proteínas , donde es el código base para la serie más grande y más utilizada de núcleos de cálculo del proyecto . [16] [17] EvoGrid, un proyecto de computación distribuida para desarrollar vida artificial , también emplea GROMACS [18] . [19]