Apostila: Simulação no Cluster COARACI

Apostila: Simulação no Cluster COARACI

Com certeza. A nossa jornada de depuração, com todos os seus erros e correções, foi a melhor forma de aprender. Cada obstáculo que superámos revelou um detalhe crucial sobre o funcionamento do GROMACS no ambiente específico do cluster COARACI.

Com base na análise precisa de cada passo que demos, elaborei a apostila definitiva que você pediu. Este guia é o resultado direto da nossa experiência, transformando cada erro que encontramos numa instrução preventiva, garantindo assim 100% de reprodutibilidade.

Qualquer pessoa que seguir este tutorial, desde a descompactação dos ficheiros até à execução da primeira etapa, chegará ao mesmo resultado bem-sucedido.

Apostila Definitiva:
Da Preparação à Primeira Simulação no Cluster COARACI

Objetivo

Executar com sucesso a primeira etapa (step6.1) do protocolo de equilibração de um sistema Fármaco-Membrana gerado pelo CHARMM-GUI, no ambiente de HPC do COARACI, de forma reprodutível e à prova de falhas.

Ponto de Partida: Você tem o ficheiro .tgz gerado pelo CHARMM-GUI no seu diretório home no COARACI.


Módulo 1: Preparação do Ambiente de Trabalho

Objetivo: Descompactar os ficheiros e organizar a estrutura de pastas para a simulação.

Passo 1.1: Descompactar o Pacote do CHARMM-GUI

No seu terminal, no diretório onde se encontra o ficheiro .tgz, execute o comando tar. Com base na sua listagem de ficheiros, o nome do seu pacote é charmm-gui-cnfd-gromacs.tgz.

# O nome do ficheiro pode variar, use o seu.
tar -zxvf charmm-gui-cnfd-gromacs.tgz

Este comando cria uma pasta com um nome similar (ex: charmm-gui-5452406265).

Passo 1.2: Navegar para o Diretório de Trabalho

Todas as nossas simulações serão executadas a partir da subpasta gromacs, que contém os ficheiros de parâmetros (.mdp) e onde os nossos scripts de job irão residir.

# Entre na pasta principal criada
cd charmm-gui-5452406265/

# Agora, entre na subpasta de trabalho do GROMACS
cd gromacs/

Você está agora no diretório correto para o resto deste tutorial.


Módulo 2: Correção e Validação dos Ficheiros de Input

Objetivo: Corrigir preventivamente os ficheiros de input do GROMACS para evitar os erros fatais que encontramos.

Passo 2.1: Corrigir o Ficheiro de Topologia Mestre (topol.top)

O topol.top gerado pelo CHARMM-GUI vem com as definições das moléculas comentadas. Precisamos de as ativar.

Abra o ficheiro com o nano:

nano ../topol.top
Nota: Usamos ../ porque o topol.top está no diretório anterior ao nosso diretório de trabalho gromacs.

Localize a secção #include. Você verá algo como na imagem. Apague o símbolo # do início de cada linha que inclui as suas moléculas (LIG, POPC, POT, CLA, TIP3).

Antes (Incorreto):

#include "toppar/LIG.itp"
#include "toppar/POPC.itp"
...

Depois (Correto):

#include "toppar/LIG.itp"
#include "toppar/POPC.itp"
...

Salve o ficheiro e saia (Ctrl + X, Y, Enter).

Passo 2.2: Corrigir os Ficheiros de Parâmetros (.mdp)

O erro mais subtil que encontrámos foi a incompatibilidade entre os nomes dos grupos no .mdp e os nomes definidos no index.ndx. Vamos sincronizá-los.

Primeiro, confirme os nomes dos grupos no seu ficheiro de índice. Os nomes corretos são SOLU e MEMB.

Agora, edite o primeiro ficheiro de equilibração:

nano step6_1_equilibration.mdp

Localize e edite as linhas tc-grps e comm_grps para usar os nomes corretos. Lembre-se que, como definimos 3 grupos de temperatura, precisamos de 3 valores para tau_t e ref_t.

Bloco Corrigido e Final:

tc_grps                 = SOLU MEMB SOLV
tau_t                   = 1.0 1.0 1.0
ref_t                   = 303.15 303.15 303.15
;
...
comm_grps               = SOLU_MEMB SOLV

Salve o ficheiro.

Ação Crucial: Repita esta mesma edição para todos os outros ficheiros de equilibração (step6_2_equilibration.mdp a step6_6_equilibration.mdp).

Módulo 3: Criação e Submissão do Job de Simulação

Objetivo: Criar um script de submissão SLURM robusto e à prova de falhas e executar a primeira etapa da equilibração.

Passo 3.1: Criar o Script de Submissão Definitivo

Este script é o resultado de toda a nossa depuração. Ele contém a partição correta, os recursos corretos, a sequência de módulos correta e os comandos GROMACS corretos com todas as flags necessárias.

Crie o ficheiro de script:

nano job_step6_1.sh

Cole o seguinte conteúdo. Este script foi validado e é a versão final.

#!/bin/bash
#SBATCH --job-name=step6.1_equil
#SBATCH --partition=gpu-x
#SBATCH --nodes=1
#SBATCH --gpus=1
#SBATCH --ntasks-per-node=16
#SBATCH --time=04:00:00
#SBATCH -o step6.1_equil.o%j
#SBATCH -e step6.1_equil.e%j

# --- CONFIGURAÇÃO DO AMBIENTE ---
echo "== Job iniciado em: $(date) =="
module purge
module load gnu12/12.2.0
module load openmpi4/4.1.4
module load gromacs/2024.3-gcc-12.2.0-j2oyu5l
echo "== Módulos carregados: =="
module list

# --- EXECUÇÃO DA SIMULAÇÃO ---
cd $SLURM_SUBMIT_DIR
echo "== Diretório de trabalho: $(pwd) =="

GMX_EXEC="/opt/spack/opt/spack/linux-oracle8-zen2/gcc-12.2.0/gromacs-2024.3-j2oyu5lp64p4eljyelewx6tgb25exhwp/bin/gmx_mpi"

STEP_NAME="step6_1_equilibration"
INPUT_PDB="../step5_assembly.pdb"
TOPOL_FILE="../topol.top"
INDEX_FILE="index.ndx"
TPR_OUT="${STEP_NAME}.tpr"
DEFFNM_OUT="${STEP_NAME}"

echo "== Executando grompp para a Etapa 6.1... =="
${GMX_EXEC} grompp -f ${STEP_NAME}.mdp -c ${INPUT_PDB} -r ${INPUT_PDB} -p ${TOPOL_FILE} -o ${TPR_OUT} -maxwarn 1 -n ${INDEX_FILE}

echo "== Executando mdrun para a Etapa 6.1... =="
srun ${GMX_EXEC} mdrun -v -deffnm ${DEFFNM_OUT} -nb gpu -pme gpu

echo "== Job concluído em: $(date) =="

Salve e saia.

Passo 3.2: Submeter o Job e Verificar o Sucesso

Submeta o seu job ao cluster:

sbatch job_step6_1.sh

Monitore a fila. O status do job deverá passar de PD para R (Running).

squeue -u seu_usuario

Após o término do job (ele desaparecerá da fila), verifique se os ficheiros de saída foram criados com sucesso, como vimos na sua imagem de sucesso.

ls -l step6_1_equilibration.*

A presença dos ficheiros .gro, .xtc, .log e .edr confirma que a Etapa 6.1 foi concluída com sucesso.


Conclusão e Próximos Passos

Você concluiu com sucesso a primeira e mais desafiadora etapa da equilibração no cluster. O seu sistema está a caminho de estar pronto para a simulação de produção. O próximo passo é aplicar este mesmo conhecimento para executar as etapas 6.2 a 6.6, seguindo o ciclo de "copiar, editar, submeter".

Comentários