GROMACS — это пакет молекулярной динамики , предназначенный главным образом для моделирования белков , липидов и нуклеиновых кислот . Первоначально он был разработан на факультете биофизической химии Гронингенского университета и в настоящее время поддерживается сотрудниками университетов и исследовательских центров по всему миру. [4] [5] [6] GROMACS — один из самых быстрых и популярных доступных пакетов программного обеспечения, [7] [8] и может работать на центральных процессорах (ЦП) и графических процессорах (ГП). [9] Это бесплатное программное обеспечение с открытым исходным кодом , выпущенное под лицензией GNU General Public License (GPL), [3] и, начиная с версии 4.6, GNU Lesser General Public License (LGPL).
Проект GROMACS первоначально начался в 1991 году на факультете биофизической химии Гронингенского университета , Нидерланды (1991–2000). Его название первоначально произошло от этого времени ( GROningen MAchine for Chemical Simulations ), хотя в настоящее время GROMACS не является аббревиатурой чего-либо, поскольку в последние десятилетия в Гронингене велось мало активных разработок. Первоначальной целью было создание специализированной параллельной компьютерной системы для молекулярного моделирования на основе кольцевой архитектуры (которая была заменена современными аппаратными разработками). Специальные процедуры молекулярной динамики были переписаны на языке программирования C из программы GROMOS на базе Fortran 77 , которая была разработана той же группой. [ нужна цитата ]
С 2001 года GROMACS разрабатывается группами разработчиков GROMACS Королевского технологического института и Уппсальского университета , Швеция .
GROMACS работает через интерфейс командной строки и может использовать файлы для ввода и вывода. Он обеспечивает обратную связь о ходе вычислений и расчетном времени прибытия (ETA), средство просмотра траектории и обширную библиотеку для анализа траектории. [3] Кроме того, поддержка различных силовых полей делает GROMACS очень гибким. Его можно выполнять параллельно, используя интерфейс передачи сообщений (MPI) или потоки . Он содержит сценарий для преобразования молекулярных координат из файлов банка данных белков (PDB) в форматы, которые он использует внутри себя. После создания файла конфигурации для моделирования нескольких молекул (возможно, включая растворитель ), запуск моделирования (который может занять много времени) создает файл траекторий, описывающий движения атомов во времени. Затем этот файл можно проанализировать или визуализировать с помощью нескольких поставляемых инструментов. [10]
OpenCL и CUDA возможны для реальных графических процессоров AMD, Intel и Nvidia с большим ускорением по сравнению с процессорами, начиная с версии 5 или выше. В версии 2021 OpenCL устарел, а поддержка SYCL находится на ранней стадии. [11]
По состоянию на январь 2010 года [обновлять]исходный код GROMACS содержит около 400 альтернативных бэкронимов GROMACS , что является шуткой среди разработчиков и исследователей -биохимиков . К ним относятся « Громаки работают на большинстве компьютерных систем », « Громаки работают за одну микросекунду со скоростью пушечного ядра », « Хороший крутой металлический алтарь для хронических грешников », « Работа над выращиванием старых MAkes el Chrono Sweat » и « Великий красный владеет многими Кры песка ». Они выбираются случайным образом и могут появиться в выходном потоке GROMACS. В одном случае такая аббревиатура « Предоставление россиянам опиума может изменить текущую ситуацию » вызвала оскорбление. [12]
Под лицензией без лицензии GPL GROMACS широко используется в проекте распределенных вычислений Folding@home для моделирования сворачивания белков , где он является базовым кодом для самой крупной и наиболее часто используемой серии вычислительных ядер проекта . [13] [14] EvoGrid, проект распределенных вычислений для развития искусственной жизни , также использует GROMACS. [15]