Escribe para buscar…

Meeko

Meeko prepara l'entrada per vina i processa la seva sortida.

Esta página todavía no se ha traducido — se muestra en su idioma original:Català

Introducció

Meeko - Tutorials

Es desenvolupa conjuntament amb AutoDock-GPU i AutoDock Vina.

Meeko parametritza tant molècules orgàniques petites (lligands) com proteïnes i àcids nucleics (receptors).

Meeko exposa una API de Python per permetre la programació d’scripts.

Entorn de treball

ps
uv init meeko -p 3.11 --name meeko-project
cd meeko
uv add meeko molscrub urllib3

Docking bàsic

Aquest és un exemple bàsic d’acoblament que utilitza l’executable AutoDock Vina per executar un acoblament bàsic d’una petita molècula flexible similar a un fàrmac sobre un receptor proteic rígid.

En aquest exemple, un lligand de molècula petita (Imatinib, token PDB STI) s’acobla de nou a una estructura proteica buida de ratolí c-Abl (token PDB 1IEP) per reproduir l’estructura complexa. S’espera que entre les poses més ben classificades hi hagi una posició acoblada que s’assembli molt a la posició original del lligand.

Imatinib és una molècula petita inhibidora de quinases que va revolucionar el tractament del càncer, particularment la leucèmia mieloide crònica, l’any 2001. Va ser considerat un “fàrmac miracle” a causa del seu èxit clínic.

En aquest enllaç tens l’script que crearem: basic.py

Preparació del Lligand

La preparació del lligand és el procés que genera els fitxers PDBQT d’entrada del lligand per al càlcul d’acoblament i cribratge virtual.

Pots trobar la cadena SMILES per a l’Imatinib en diverses bases de dades químiques fiables, incloent-hi PubChem i DrugBank.

Crea el fitxer basic.py:

python
basic.py
import os
import subprocess
import sys

os.makedirs("data", exist_ok=True)

# Ligand Preparation

ligand = "CC1=C(C=C(C=C1)NC(=O)C2=CC=C(C=C2)CN3CCN(CC3)C)NC4=NC=CC(=N4)C5=CN=CC=C5"

scrub = os.path.join(os.getcwd(), '.venv', 'Scripts', 'scrub.py')
subprocess.run(
    [sys.executable, scrub, ligand, "--out", "data/imatinib.sdf", "--skip_tautomers", "--ph_low", "5", "--ph_high",
     "9"])

scrub.py és un script de línia de comandes de Scrubber que genera conformers 3D de protòmers i tautòmers per a molècules petites donades a un pH específic (o rang de pH).

Donat un rang de pH de 5 a 9, els protòmers de sortida inclouran aquells que constitueixin no menys de l’1% de la població total a pH = 7. Basant-se en els valors de pKa de referència, es consideraran els nitrogens de les amines i el nitrogen de la piridina per a l’enumeració àcid/base.

El fitxer de sortida imatinib.sdf contindrà dos protòmers d’Imatinib, un amb un grup piridina neutre i l’altre amb un grup piridini (+1). Tots els nitrogens d’amoni alifàtic estaran protonats.

ps
Scrub completed.
Summary of what happened:
Input molecules supplied: 1
mols processed: 1, skipped by rdkit: 0, failed: 0
nr isomers (tautomers and acid/base conjugates): 2 (avg. 2.000 per mol)
nr conformers:  2 (avg. 1.000 per isomer, 2.000 per mol)
Note

La biblioteca molscrub instal·la l’script scrub.py en el directori .venv/Scripts/.

Per tant, aquest script no està al “path” i l’executem mitjançant un subprocess

El fitxer de sortida imatinib.sdf contindrà dos protòmers d’Imatinib, un amb un grup piridina neutre i l’altre amb un grup piridini (+1). Tots els nitrogens d’amoni alifàtic estaran protonats.

És a dir, l’script scrub.py genera formes 3D d’una mateixa molècula tenint en compte el pH.

Idees clau:

  • Tautòmers → mateixa molècula, però amb els hidrògens col·locats diferent (canvis interns petits)

  • Protòmers → mateixa molècula amb més o menys H⁺ (depèn del pH)

  • Què passa amb el pH 5–9? El programa calcula quines formes són realistes a pH 7 i es queda només amb les que tenen ≥ 1% de presència

La molècula no és una sola cosa fixa. És un petit conjunt de formes possibles… i el programa et dona les que realment importen en condicions biològiques.

Si algun dia t’has preguntat per què un fàrmac funciona en un lloc i en un altre no — sovint és per això.

En el cas de l’Imatinib** surt amb 2 formes principals:

  1. Piridina neutra → el nitrogen NO té protó

  2. Piridini (+1) → el nitrogen HA captat un protó (H⁺)

(Piridina → Piridini)


Preparació del lligand.

A continuació utilitzarem l’script mk_prepare_ligand.py per preparar el lligand.

En aquest enllaç tens les opcions que accepta l’script: mk_prepare_ligand.py options

Estás leyendo una vista previa.

Inicia sesión para leer el artículo completo. Cualquier cuenta abre 4 artículos gratuitos al mes; el alumnado y el profesorado leen las páginas de su curso sin límite.

Iniciar sesión