Modelagem por Homologia passo-a-passo
Transcrição
Modelagem por Homologia passo-a-passo
Modelagem por Homologia passo-a-passo Prof. Rommel Ramos 1 Busca de um candidato a template Para identificar os melhores candidatos a template é necessário fazer o download do banco de dados de estruturas depositadas no PDB, neste caso utilizaremos o pdb_95.pir.gz ( disponível em http://salilab.org/modeller/supplemental.html) Passo 1 - O arquivo de estruturas do PDB está compactado, assim, o primeiro passo para a utilização do mesmo é descompactar o arquivo pdb_95.pir.gz. Passo 2 – Com o banco de dados disponível para consulta, deve-se obter a sequência alvo, que será utilizada como query para a busca no banco de dados. Em nosso caso, utilizaremos a sequência fasta de TvLDH, já disponível no material suplementar deste guia. É importante observar que deve-se deixar a sequência fasta no formato ali, conforme exemplo abaixo: >TvLDH MSEAAHVLITGAAGQIGYILSHWIASGELYGDR QVYLHLLDIPPAMNRLTALTMELEDCAFPHLAG FVATTDPKA >P1;TvLDH sequence:TvLDH:::::::0.00: 0.00 MSEAAHVLITGAAGQIGYILSHWIASGELYGDR QVYLHLLDIPPAMNRLTALTMELEDCAFPHLAG FVATTDPKA* Passo 3 – Utilize o script build_profile.py para realizar o alinhamento da query contra os modelos disponíveis, e através da avaliação de e-value, percentual de identidade e tamanho do alinhamento definir os melhores candidatos a modelo. from modeller import * log.verbose() env = environ() # Read in the sequence database sdb = sequence_db(env) sdb.read(seq_database_file='pdb_95.pir', seq_database_format='PIR', chains_list='ALL', minmax_db_seq_len=(30, 4000), clean_sequences=True) # Write the sequence database in binary form sdb.write(seq_database_file='pdb_95.bin', seq_database_format='BINARY', chains_list='ALL') # Now, read in the binary database sdb.read(seq_database_file='pdb_95.bin', seq_database_format='BINARY', chains_list='ALL') # Read in the target sequence/alignment aln = alignment(env) aln.append(file='TvLDH.ali', alignment_format='PIR', align_codes='ALL') # Convert the input sequence/alignment into # profile format prf = aln.to_profile() # Scan sequence database to pick up homologous sequences prf.build(sdb, matrix_offset=450, rr_file='$ {LIB}/blosum62.sim.mat', gap_penalties_1d=(500, 50), n_prof_iterations=1, check_profile=False, max_aln_evalue=0.01) # Write out the profile in text format prf.write(file='build_profile.prf', profile_format='TEXT') # Convert the profile back to alignment format aln = prf.to_alignment() # Write out the alignment file aln.write(file='build_profile.ali', alignment_format='PIR') Observe que os valores em negrito deve ser modificados em função do nome do bando de dados e da sequência alvo, respectivamente, pdb_95.pir e TvLDH.ali - Linha de comando mod9.10 build_profile.py - Arquivos gerados pdb_95.bin Arquivo PDB binário build_profile.prf Informações do alinhamento (ali), mas em formato tabular. A partir deste arquivo é que se deve avaliar os melhores candidatos a modelo, com base nas informações apresentadas: coluna 10 é o tamanho do alinhamento ; coluna 11 é o percentual de identidade ; coluna 12 é o e-value 2 Seleção do template Com base nos alinhamentos obtidos no passo anterior, os melhores candidados a template, com suas respectivas estruturas em formato pdb, devem ser selecionados. Passo 1 – Identifique os IDs PDB das estruturas selecionadas como melhores candidados (etapa de seleção de candidatos). Passo 2 – É hora de comparar as estruturas PDB, para tanto, deve-se utilizar o script compare.py (listado abaixo), onde os nomes em negrito devem ser substituídos pelos nomes do arquivos pdb referentes aos melhores alinhamentos identificados na primeira etapa do pipeline, e que deve estar salvos na mesma pasta onde o script será executado: from modeller import * log.verbose() env = environ() aln = alignment(env) for (pdb, chain) in (('1B8P', 'A'), ('1CIV', 'A'), ('3D5T', 'A'), ('5MDH', 'A'), ('7MDH', 'A'), ('1SMK', 'A')): m = model(env, file=pdb, model_segment=('FIRST:'+chain, 'LAST:'+chain)) aln.append_model(m, atom_files=pdb, align_codes=pdb+chain) aln.malign() - Linha de comando python compare.py > compare.log - Arquivos requeridos – Arquivos gerados Praticando um pouco Selecione no NCBI uma sequência alvo a sua escolha, e a utilize como query para realizar os dois primeiros passos do pipeline de modelagem por homologia: busca de candidatos e seleção dos templates. Ao final, faça um relatório destacando TODOS os comandos utilizados em cada etapa, bem como os ajustes realizados nos scripts e a razão destes. Entrega na próxima aula. 3 Alinhamento dos Modelos Após selecionar os melhores modelos a serem utilizados, vamos realizar o alinhamento de suas estrutura com nosso alvo. Passo 1 – Obtenção dos arquivos PDB das proteínas selecionadas; Passo 2 – Realizar o alinhamento através do script align2d.py, apresentado abaixo, onde os valores em negrito devem ser substituídos de acordo com seus dados. - align_codes: Nome do modelo candidado - atom_files: Nome do arquivo PDB do modelo candidato - aln.append(file... : Sequência alvo no formato ali - aln.write(file=*.ali: Novo do arquivo de saída no formato ali - aln.write(file=*.pap: Novo do arquivo de saída no formato pap from modeller import * env = environ() aln = alignment(env) mdl = model(env, file='1B8P', model_segment=('FIRST:A','LAST:A')) aln.append_model(mdl, align_codes='1B8PA', atom_files='1B8P.pdb') aln.append(file='TvLDH.ali', align_codes='TvLDH') aln.align2d() aln.write(file='TvLDH1B8PA.ali', alignment_format='PIR') aln.write(file='TvLDH1B8PA.pap', alignment_format='PAP') Esclarecendo o formato PIR Sinal de maior: > Duas letras descrevendo o tipo: Protein (complete) P1 Protein (fragment) F1 DNA (linear) DL DNA (circular) DC RNA (linear) RL RNA (circular) RC tRNA N3 other functional RNA N1 Ponto e vírgula: ; Código de identificação Uma linha contendo a descrição Seqüência contendo 1 ou + linhas Sinal de terminação: * >P1;TvLDH Proteína de Teste para a aula de simulacao MSEAAHVLIT GAAGQIGYIL SHWIASGELY GDRQVYLHL LDIPPAMNRL TALTMELEDC AFPHLAGFV ATTDPKA* - Linha de comando mod9.10 align2d.py – Arquivos requeridos – Arquivos gerados O arquivo TvLDH-1B8PA.ali será utilizado para a construção do modelo no passo seguinte. 4 Construção do modelo Passo 1 – Obtenção do arquivo ali gerado no passo anterior: TvLDH1B8PA.ali Passo 2 – Execução do script model-single.py, substituíndo os valores em negrito. from modeller import * from modeller.automodel import * env = environ() a = automodel(env, alnfile='TvLDH1B8PA.ali', knowns='1B8PA', sequence='TvLDH', assess_methods=(assess.DOPE, assess.GA341)) a.starting_model = 1 a.ending_model = 5 a.make() - Linha de comando mod9.10 model-single.py – Arquivos requeridos – Arquivos gerados Alternativamente, podemos utilizar este site para gerar ramachandran: http://mordred.bioc.cam.ac.uk/~rapper/rampage.php http://dicsoft1.physics.iisc.ernet.in/rp/select.html 5 Avaliando o modelo
Documentos relacionados
Prática 1. Visualização de Aminoácidos
para a representação gráfica CPK, usando o procedimento já descrito. Gere as figuras no formato bmp, como segue: Clique em VMD main, e siga as opções File→ Render, então use a opção render using: s...
Leia maisPrática 3. Visualização de Proteínas
27)Quantos e quais resíduos estão na região proibida do gráfico de Ramachandran, ignore as glicinas? 28) Identifique à qual classe estrutural esta proteína pertence. 29) Faça uma estimativa da ASA ...
Leia mais