Software > GROMACS

GROMACS

Beschreibung

 

GROMACS ist ein vielseitiges Paket für Molekulardynamik Simulationen von Systemen mit Hunderten von Millionen Partikeln.

Der primäre Anwendungsbereichm, für den GROMACS entwickelt worden ist, sind biochemische Moleküle wie Proteine und Lipide, die einer großen Zahl komplizierter gebundener Wechselwirkungen unterliegen. Aufgrund seiner Performance bei der Berechnung ungebundener Wechselwirkungen läßt sich GROMACS auch für nichtbiologische Systeme, wie z.B. Polymere, anwenden.

Verfügbar auf:

Ansprechpartner

Dr. Bernhard Bandow

Inhaltsverzeichnis

1. Allgemeines

GROMACS ist freie Software im Sinne der GNU General Public License. Eine Beschränkung des Zugangs zu den am RRZN installierten Versionen von GROMACS erfolgt nicht.

In den Ausgabedateien, die GROMACS während eines Laufes erzeugt, finden sich Verweise auf Literatur, die bei Publikationen von Resultaten, die mit Hilfe von GROMACS gewonnen wurden, an entsprechender Stelle zitiert werden kann. Eine Liste mit Artikeln zu GROMACS sowie eine als Article Gallery bezeichnete Sammlung von Publikationen, die durch die Verwendung von GROMACS ermöglicht wurden, sind Teil der Homepage des GROMACS Projektes.

2. Funktionalität

GROMACS beherrscht eine Reihe von Algorithmen und algorithmusspezifischen Besonderheiten (Auszug aus dem Handbuch):

Periodische Randbedingungen lassen sich mit verschiedenen Simulationsboxgeometrien unter Berücksichtigung der Minimum Image Convention realisieren  Die Temperatursteuerung kann durch Temperaturreskalierung oder unter Verwendung von Berendsen- oder Nosé-Hoover Thermostat erfolgen.  Zur Drucksteuerung stehen die Algorithmen nach Berendsen oder Parrinello-Rahman zur Verfügung. Die Berücksichtigung von Zwangsbedingungen ist im LINCS- und SHAKE-Algorithmus implementiert. Simulated Annealing, Stochastische und Brownsche Dynamik gehören zu den von GROMACS unterstützten Methoden sowie verschiedene Methoden der Energieminimalisierung (Steepest Descent, Conjugate Gradient, L-BFGS). Verschiedene gebundene und nicht gebundene Wechselwirkungen sind wählbar, zu den unterstützten Kraftfeldern gehören u.a. GROMOS, Amber und CHARMM.

3. Installation auf den RRZN-Computeservern

Neben der über den Befehl module avail als Vorgabeversion ersichtlich installierten Programmvariante können auch weitere zur Verfügung stehen, die sich in der verwendeten MPI-Implementierung oder z.B. verlinkten mathematischen Bibliotheken unterscheiden. Derzeit ist die Version 4.0.4 am RRZN als Vorgabeversion verfügbar.

4. Benutzung von GROMACS auf den RRZN-Computeservern Paris, TC und CLUH

Um GROMACS im Batchbetrieb zu verwenden, wird der Programmaufruf in ein geeignetes Jobskript eingebunden. Das folgende Beispiel fordert vom Batchsystem 4 Knoten mit jeweils 8 Prozessesen pro Knoten für eine maximale Laufzeit von 2h an. Durch das Laden von Modulen werden die erforderlichen Umgebungsvariablen gesetzt sowie die Pfade zu MPI- und weiteren Bibliotheken gesetzt.

Der Job kann vom Rechner orac submittiert werden. Als Arbeitsverzeichnis steht das über die Umgebungsvariable $BIGWORK zu erreichende nutzerspezifische Verzeichnis zur Verfügung. Nur dort ist eine hinreichend große Performance gegeben.

#!/bin/ksh
#PBS -j n
#PBS -N jobname
#PBS -l nodes=4:ppn=8
#PBS -l walltime=02:00:00

# ins aktuelle Verzeichnis wechseln
  cd $PBS_O_WORKDIR

# module Umgebung initialisieren und Module laden
  . /usr/share/modules/init/ksh
  module load gromacs/4.0.4_mvapich2_mklseq mvapich2/1.2p1 imkl/10.0.3.020 icc/10.1.015

# ins Verzeichnis mit den Inputdaten wechseln

TESTORDNER="$BIGWORK/..."

cd ${TESTORDNER}

# MVAPICH2 Umgebung initialisieren

  np=$(cat $PBS_NODEFILE | wc -l)
  mnp=$(sort -u $PBS_NODEFILE|wc -l)
  mpdboot -n $mnp -f $PBS_NODEFILE

# GROMACS Job vorbereiten

  grompp -f grompp.mdp -p topol.top -c conf.gro -o water.tpr

# Parallelen GROMACS Job starten

  mpiexec -machinefile $PBS_NODEFILE -np $np mdrun -s water.tpr -o water.trr -c water_out.gro -v -g water.log

# MVAPICH2 Umgebung beenden
  mpdallexit

# Module entladen
  module unload gromacs/4.0.4_mvapich2_mklseq mvapich2/1.2p1 imkl/10.0.3.020 icc/10.1.015

 

Das Modul gromacs/ 4.0.4_mvapich2_mklseq exportiert die Umgebungsvariablen:

  • GMXBIN        /sw/chem/.../bin                  Executables
  • GMGLDLIB   /sw/chem/.../lib                   Bibliotheken
  • GMXMAN      /sw/chem/.../share/man    Manpages
  • GMXDATA    /sw/chem/.../share              Dokumentation

Um die mit der Option --enable-double übersetzte Programmvariante zu verwenden, ist das Modul gromacs/4.0.4_mvapich2_mklseq_d verwenden, sowie alle Executables mit dem Suffix _d zu versehen.

5. Dokumentation und Beispiele

Die Dokumentation zu GROMACS enthält Links zu den Handbüchernder verschiedenen Programmversionen. Außerdem gibt es eine Seite mit Hinweisen zu Tutorials rund um GROMACS. Im Unterverzeichnis share/gromacs/tutor sind eine Reihe von Beispielen enthalten, die Tests zu GROMACS befinden sich in gmxtest. Sowohl Beispiele als auch Tests sind unverändert in dem Zustand, wie sie vom GROMACS Projekt zum Download zur Verfügung gestellt werden.

Letzte Änderung: 03.07.2009
 
Verantwortlich RRZN