.. _Gromacs:
Gromacs
=======
De acordo com o `manual do Gromacs `_,
"*Gromacs is an engine to perform molecular dynamics simulations and energy minimization*".
Versões Disponíveis
-------------------
* gromacs/2016.3 (default)
* gromacs/2018.2
* gromacs/5.1.4
* gromacs/4.5.4
* gromacs/4.5.4-sbm1.0
Submissão de Jobs em Paralelo
-----------------------------
Crie um arquivo chamado, por exemplo, *submit_paral_jobs.sh*.
.. code-block:: bash
#!/bin/bash
#SBATCH -n 16 --time 24:00:00
export INPUT="gromacs-mpi.tpr gromacs-mpi.edr after_gromacs-mpi.gro gromacs-mpi.log"
export OUTPUT="*.trr"
module load gromacs/5.0.4
job-nanny srun -n 16 mdrun_mpi -v -s gromacs-mpi.tpr -o gromacs-mpi.trr -e gromacs-mpi.edr -c after_gromacs-mpi.gro -g gromacs-mpi.log
Para submeter o processo, basta usar o comando:
.. code-block:: bash
sbatch submit_paral_jobs.sh
Submissão de Jobs com Várias Threads
------------------------------------
Crie um arquivo chamado, por exemplo, *submit_paral_omp_jobs.sh*.
.. code-block:: bash
#!/bin/bash
#SBATCH -c 8 --time 7-00
module load gromacs/5.1.4
export INPUT="conf.gro Min.mdp NVT2.mdp NVT3.mdp NVT4.mdp NVT.mdp topol.top run.sh"
export OUTPUT="*"
job-nanny ./run.sh
em que o conteúdo do script *run.sh* seria algo como:
.. code-block:: bash
#!/bin/bash
gmx grompp -f Min.mdp -c conf.gro -p topol.top -o Min.tpr
gmx mdrun -nt 1 -v -deffnm Min
gmx grompp -f NVT.mdp -c Min.gro -t Min.trr -p topol.top -o NVT.tpr
gmx mdrun -nt 1 -deffnm NVT
gmx grompp -f NVT2.mdp -c NVT.gro -t NVT.cpt -p topol.top -o NVT2.tpr
gmx mdrun -nt 1 -deffnm NVT2
gmx grompp -f NVT3.mdp -c NVT2.gro -t NVT2.cpt -p topol.top -o NVT3.tpr
gmx mdrun -nt 1 -deffnm NVT3
gmx grompp -f NVT4.mdp -c NVT3.gro -t NVT3.cpt -p topol.top -o NVT4.tpr
gmx mdrun -v -nt 8 -s NVT4.tpr -o glicerol428.trr -e glicerol428.edr -c after_glicerol428.gro -g glicerol428.log -cpi glicerol428.cpt
Para submeter o processo, basta usar o comando:
.. code-block:: bash
sbatch submit_paral_omp_jobs.sh
Submissão de Jobs Seriais
-------------------------
Crie um arquivo chamado, por exemplo, *submit_serial_jobs.sh*.
.. code-block:: bash
#!/bin/bash
#SBATCH --time 24:00:00
export INPUT="*.tpr *.edr *.gro *.log"
export OUTPUT="*.trr"
module load gromacs/5.0.4
CASE=gromacs-serial
job-nanny mdrun -v -nt 1 -s ${CASE}.tpr -o ${CASE}.trr -e ${CASE}.edr -c after_${CASE}.gro -g ${CASE}.log
Para submeter o processo, basta usar o comando:
.. code-block:: bash
sbatch submit_serial_jobs.sh
Referências
-----------
Para informações adicionais sobre o software, consulte a `documentação do Gromacs `_.