= código # pt (português), es (espanhol), en (inglês), fr (francês), de (alemão), etc... set language
Comandos
O Jmol possui uma infinidade de comandos para visualização e estudo de modelos moleculares. Grande parte desses comandos é acessada pelo Menu principal do Jmol, ou por clique do botão direito do mouse no ecrã principal do programa ou do applet JSmol na internete.
Entretanto, a scriptagem permite pelo Console, tanto do programa instalado como do applet a execução de um conjunto bem maior de ações, além de permitir elencar ações consecutivas gerando visualizações específicas, cálculos e animações, e mesmo programação. Nesse último caso, pela linguagem Jmol scripting. Esses comandos e a linguagem programação estão explicitados no site de seus desenvolvedores, Jmol - Documentação & scriptagem, com substanciais exemplos e links ilustrativos e interativos. O conteúdo deste capítulo visa sumarizar os principais comandos para a visualização, estudo, importação e exportação, cálculos e animações dos modelos pelo Console ou por script.
Como uma sequência de comandos visando uma observação mais complexa ou animação, pode-se elaborar o script em qualquer editor de texto simples, salvando-o com atributo “.spt”. O script pode ser carregado como um arquivo ou colado no campo do Console.
Os comandosdo Jmol não fazem distinção entre singular o plural, ou entre maiúscula ou minúscula, podendo-se empregar ambos as formas, como show group ou Show groups.
Uma observação adicional: na construção de um script, é recomendável que se forneça explicações em linhas de comando; para tanto, basta utilizar o sinal de hashtag (#) após os comandos.
Entretanto, a scriptagem permite pelo Console, tanto do programa instalado como do applet a execução de um conjunto bem maior de ações, além de permitir elencar ações consecutivas gerando visualizações específicas, cálculos e animações, e mesmo programação. Nesse último caso, pela linguagem Jmol scripting. Esses comandos e a linguagem programação estão explicitados no site de seus desenvolvedores, Jmol - Documentação & scriptagem, com substanciais exemplos e links ilustrativos e interativos. O conteúdo deste capítulo visa sumarizar os principais comandos para a visualização, estudo, importação e exportação, cálculos e animações dos modelos pelo Console ou por script.
Como uma sequência de comandos visando uma observação mais complexa ou animação, pode-se elaborar o script em qualquer editor de texto simples, salvando-o com atributo “.spt”. O script pode ser carregado como um arquivo ou colado no campo do Console.
Os comandosdo Jmol não fazem distinção entre singular o plural, ou entre maiúscula ou minúscula, podendo-se empregar ambos as formas, como show group ou Show groups.
Uma observação adicional: na construção de um script, é recomendável que se forneça explicações em linhas de comando; para tanto, basta utilizar o sinal de hashtag (#) após os comandos.
Mudando a linguagem da interface & diretório de arquivos
Linguagem
A linguagem do Menu e a saída dos comandos (resultados) podem ser alteradas como abaixo. Lembrando-se, contudo, que os comandos propriamente ditos reportam-se a algoritmos computacionais; dessa forma, não é possível alterar a linguagem dos comandos
Obs: caso não consiga, inicialize o Jmol abrindo um CMD (Windows) ou Teminal (Linux) na pasta do diretório do programa, e digite, para português:
-Duser.language=pt -jar Jmol.jar java
Diretório
# apresenta diretório atual
cd # abre janela para diretório padrão
cd ? # altera o diretório padrão (ex: ../temp)
cd path "/home/" # diretório padrão (para applet) set defaultDirectory
Comandos gerais
: help # help zoom
Ajuda: quit
Sair: undo
Desfazer: redo
Refazeroriginal (posição, tamanho, centralização e orientação): reset
Retorno ao modelo : initialize
Inicialização do programa: history on ou history off
Histórico de comandos: minimize Minimização por campos de força do modelo
Experimente alguns dos comandos acima com o applet para JSmol que segue:
Obtendo modelos moleculares
Um modelo
:
Da internet: load $cholesterol
moléculas em geralPDB (Protein Data Bank): load=9pap
moléculas do : load =ligand/hem
ligantes do site RCSB : load ":nafamostat"
compostos do site PubChem
computador (necessário que os arquivos estejam no diretório raiz ou pré-selecionado por "cd"-vide acima):
Do "1aay.pdb" load
Mais de um modelo
: load files "1a2t.pdb" "1aay.pdb"
Separados1o. modelo: model 1 ou model 1.1
apresentar o 2o. modelo: model 2 ou model 2.1
apresentar o : model* ou frame*
apresentar todos os modelos: load append "1a2t.pdb" "1aay.pdb" Juntos
Visualizando os modelos:
: display 2.1
Visualizar: hide 1.1
Esconder: zap
Remover os modelos: set ambient 45 (0-sombra; 100-sem sombra) Sombreamento
Apresentando informações dos modelos (comando show)
: show none
Não apresentar nada: show model
Modelo: show atom
ÁtomosCadeias (proteína ou ác. nucleico): show chain
: show DSSP
Informações de minimização estrutural: show isosurface
Superfícies (molecular, eletrostática): show group
Grupos: show info
Informações do modelo: show sequence
Sequência primária de proteína: show history
Histórico de comandos: show residues
Resíduos (proteína): show mo
Orbital molecular: show url
Caminho de internete: show file Informação completa do arquivo PDB
Bancos de dados moleculares
Existem diversos bancos de dados para renderização de modelos moleculares, e com possibilidade de salvamento de arquivo para uso com o Jmol. Dentre esses destacam-se o PubChem ou o DrugBank para moléculas pequenas, e o RCSB - Protein DataBank (Research Collaboratory for Structural Bioinformatics) para macromoléculas. Também há o IUPHAR/BPS Guide to PHARMACOLOGY, que permite acesso indireto tanto para micro como para macromoléculas.
Em qualquer desses, basta procurar um campo para download de modelos moleculares 3D. O Jmol aceita em torno de 47 tipos distintos de arquivos para renderização estrutural, dos quais elencam-se PDB, MOL, CIF, SDF, XYZ, SMILES, e AMBER.
Em qualquer desses, basta procurar um campo para download de modelos moleculares 3D. O Jmol aceita em torno de 47 tipos distintos de arquivos para renderização estrutural, dos quais elencam-se PDB, MOL, CIF, SDF, XYZ, SMILES, e AMBER.
Operações gerais
: reset (tamanho e centralização): Shift+ duplo clique (ou *reset* no *Console*)
Reinicialização de coordenada do modelo
*logo* do Jmol nas imagens: set frank off
Eliminar a
: background white
Plano de fundo
: set ambient 10 Resolução do modelo
Comandos de mouse
Para abrir o Menu de opções para visualização, cálculos e superfícies: clique direito
Movimentos do modelo
: clique arraste em qualquer direção
Rotação simples
360$^{o}$: Shift+clique direito
Rotação sobre o mesmo eixo até
: Ctrl+clique dir
Translação da estrutura
geral (zoom): Shift+clique esquerda e arraste - ampliação/redução - (ou mouse, botão do meio). Ampliação
Comandos de movimento
10 # rotacional, com velocidade de 10 graus por quadro
spin -15 # (eixo z)
spin z 20 # 20 graus
rotate 90 # eixo x
rotate x 50 # valor representa o percentual da janela (100 - fora; 0 - centro) translate
Salvando e exportando modelos (write)
# (salva como imagem)
:
Imagem do modelo: write nome-do-modelo
padrão (png): write PNGJ 2000 2000 "big.png"
com específicaçõesoutros (jpg, pdf): write nome.jpg
: write frames* "all.jpg"
todos os modelos
Coordenadas do modelo# ou outro atributo (ex: pdb)
write nome.mol modelo (alterações após carregamento): write molecula.spt # de "script" Estado do
Copiando para o clipboard
A imagem do modelo pode ser copiada pelo Menu principal do programa.
Reproduzindo um modelo da internet que não permite salvamento
Por vezes alguns sites disponibilizam moléculas em atributo *mol ou *pdb para visualização e estudo, mas sem a possibilidade de baixar o arquivo. Nesses casos é possível obter as coordenadas do modelo, copiá-las em um bloco de notas, e salvar o arquivo para leitura pelo Jmol, como *, por exemplo.
1. Visualize o modelo desejado no site;
2. Clique com o botão direito do mouse e selecione Console.
3. Clique novamente, selecione Show e:
Extract mol data....ou File contents
Como resultado o Console exibirá os dados para cópia a arquivo de texto. Basta salvá-lo como *.mol para visualização futura no Jmol.
Quantidades
Calculando distâncias e ângulos (measure)
Além do uso simples e interativo do mouse para cálculo de distâncias (duplo clique com o botão direito do mouse no 1o. átomo e arraste ao 2o. átomo) ou de ângulos (3 cliques do mouse), é possível obter as mesmas informações pelo Console.
: measure no. átomo1 no. átomo2
Distância: measure no. átomo1 no. átomo2 no. átomo 3
Ângulo: para se obter o no. do átomo basta clicar no ponto desejado do modelo
Obs: measure átomo1 átomo2 átomo3 átomo4
Ângulo de torção
: measure on..ou off...ou delete
Medidas: set measure nm # ou pm, angstrons, au (unidade atômica de Bohr) Escolha da unidade de medida
Obtendo & visualizando quantidades
: calculate hbonds (ou...hbonds calculate)
Ligações de hidrogênioformais (efetivas): calculate formalcharge # para etiquetar: label %C
Cargas : calculate partialcharge # para etiquetar: label %P
Cargas parciais2as numa proteína: calculate structure # algoritmo DSSP - Define Secondary Structure; obs: a representação desaparece, e é necessário digitar novamente o comando para seu retorno
Estruturas : measure allconnected (*)(*) Todas as ligações do modelo e com respectivas distâncias
Alterando as representações
Há diversas formas de renderização de estruturas no Jmol. Os comandos abaixo resumem essa capacidade:
cpk (ou spacefill), ball&stick (somente pelo Menu, ou pela combinação abaixo no Console)
wireframe, backbone, trace, strands, cartoon, ribbons, meshriboon, rockets,
: wireframe only
Para visualizar uma única forma: backbone off
Para esconder uma forma"ball&stick": wireframe only;wireframe reset;spacefill reset Para renderizar como
As representações renderizam a estrutura pelo tamanho de seus átomos. A renderização por spacefill, por exemplo, expressa-se como uma função do raio de van der Waals do átomo. Exemplificando:
/ off
spacefill on 0.5 # 0,5 Angstrom (o "." refere-se a valor absoluto)
wireframe 50 # 50/250 Angstrom, ou 0,2 Angstrom (ausência de ponto refere-se a valor relativo)
backbone 50% # 50% a mais que o padrão
cartoon 2 # 2/250 Angstrom = 0,008 Angstrom (observe a ausência de ponto)
spacefill 2.0 # 2 Angstrom (observe o ponto) spacefill
Cortes & sombreamento
: slab on; slab 30
Corte na visualização: depth 30 Visão de profundidade
Visualizando ou não o hidrogênio
: set pdbAddHydrogens
Inserir no modelo: set pdbAddHydrogens false Retirar do modelo
Visualizando ligações dissulfeto (proteínas)
ssbonds on ou ssbonds off40 # renderiza como varetas,e diâmetro de 40/250 Angstron
ssbonds 0.5 # renderiza com 0,2 Angstrom de diâmetro ssbonds
Só para exercitar-se, experimente alguns dos comandos acima com o applet para JSmol, tal como segue segue:
Selecionando cores
A opção padrão para cores dos modelos é a CPK (Corey, Pauling, Koltun), para carbono (cinza), nitrogênio (azul), fósforo ou enxofre (amarelo), hidrogênio (branco), iodo (violeta), etc. Contudo é possível alterar cores globalmente no modelo, ou especificamente sobre grupos selecionados de átomo. O programa aceita o comando color ou colour.
255,125,350] # cor específica
color [# aplica a cor sem necessidade de especificar a representação
color bonds # cor específica
color [xFF00FF] # padrão do programa
color cpk # todos os átomos conectador por uma ligação
color molecule
color formalcharge
color partialcharge# para aminoácidos
color amino # para estrutura secundária
color structure : vermelho (alfa-hélice), amarelo (folhas-beta), azul (voltas), branco (restante)
Proteínas: violeta (DNA), avermelhado (RNA)
Ácido nucleico: cadeias
color chain: os objetos herdam a cor de seus átomos associados
color inherit: esquema de cor que inclui nucleotídios
color shapely: gradiente de arco-íris (azul; N- ou 5'-terminal; vermelho; C- ou 3'-terminal) color group
Cores específicas
Pode-se também atribuir a um átomo ou conjunto desses uma coloração específica, como segue:
AliceBlue,AntiqueWhite,Aqua,Aquamarine,Azure,Beige,Bisque,Black,
BlanchedAlmond,Blue,BlueViolet,Brown,BurlyWood,CadetBlue,Chartreuse,
Chocolate,Coral,CornflowerBlue,Cornsilk,Crimson,Cyan,DarkBlue,DarkCyan,
DarkGoldenRod,DarkGray,DarkGrey,DarkGreen,DarkKhaki,DarkMagenta,
DarkOliveGreen,Darkorange,DarkOrchid,DarkRed,DarkSalmon,DarkSeaGreen,
DarkSlateBlue,DarkSlateGray,DarkSlateGrey,DarkTurquoise,DarkViolet,
DeepPink,DeepSkyBlue,DimGray,DimGrey,DodgerBlue,FireBrick,FloralWhite,
ForestGreen,Fuchsia,Gainsboro,GhostWhite,Gold,GoldenRod,Gray,Grey,Green,
GreenYellow,HoneyDew,HotPink,IndianRed,Indigo,Ivory,Khaki,Lavender,
LavenderBlush,LawnGreen,LemonChiffon,LightBlue,LightCoral,LightCyan,
LightGoldenRodYellow,LightGray,LightGrey,LightGreen,LightPink,LightSalmon,
LightSeaGreen,LightSkyBlue,LightSlateGray,LightSlateGrey,LightSteelBlue,
LightYellow,Lime,LimeGreen,Linen,Magenta,Maroon,MediumAquaMarine,MediumBlue,
MediumOrchid,MediumPurple,MediumSeaGreen,MediumSlateBlue,MediumSpringGreen,
MediumTurquoise,MediumVioletRed,MidnightBlue,MintCream,MistyRose,Moccasin,
NavajoWhite,Navy,OldLace,Olive,OliveDrab,Orange,OrangeRed,Orchid,PaleGoldenRod,PaleGreen,PaleTurquoise,PaleVioletRed,PapayaWhip,PeachPuff,Peru,Pink,Plum,
PowderBlue,Purple,Red,RosyBrown,RoyalBlue,SaddleBrown,Salmon,SandyBrown,
SeaGreen,SeaShell,Sienna,Silver,SkyBlue,SlateBlue,SlateGray,SlateGrey,Snow,
SpringGreen,SteelBlue,Tan,Teal,Thistle,Tomato,Turquoise,Violet,Wheat,White, WhiteSmoke,Yellow,YellowGreen.
Etiquetando o modelo (label)
/desligado: label on...ou label off
Etiqueta ligado: label %c
Cadeia: label %C
Carga formal: label %P
Carga parcial: %n
Resíduo de aminoácido em proteína: %r
No. do resíduo: %a
Átomo: %i
No. identificador do átomo: %e
Símbolo do elemento: %c Cadeia
Para visualização de um conjunto específico de átomos, como resíduos de uma proteína, pode-se utilizar:
select (Ser195,His57,Asp102) and *.ca; label "\%n \%R";color label orange ;set labelfront
Algumas operações específicas permitem também a etiquetagem.
# etiqueta com a expressão
label binding site | site # etiqueta com a expressão, separada por linhas ("|" é o comando "pipe") label binding
O Jmol permite também etiquetar determinado átomo, resíduo, sítio de interação ou reação, ou algum grupo para melhor identificação e exploração do modelo. Para isto pode-se selecionar a estrutura por select, seguido da etiqueta proposta. Exemplificando:
# seleção do resíduo de Prolina na posição 31 da sequência proteica
select pro31 -31
label Prolina"Modelo 1" # inserção de texto no ecrã
set echo top left; echo # nomeia todos os átomos com símbolo e número atômico select all; label on
Selecionando partes do modelo
Para selecionar-se um grupo geral de átomos, basta combinar pelo mouse Shift+clique esq+drag para o grupo selecionado (é necessário clicar no ícone que o representa no menu antes). Para uma seleção mais específica, pode-se utilizar algumas das expressões de átomos específicas ou pré-definidas, como abaixo:
:
Natureza da molécula
all, none, protein, nucleic, dna, rna, carbohydrate, hetero, ligand, solvent, water ou hoh, ions, hem, amino
Elemento químico: oxygen, nitrogen, carbon
Por nome: _N, _C, _Fe
Por símbolo: elemNo=7, ou atomNo=5
Por no. atômico: atomNo<50
Por no. de identificação do átomo na sequência (serial)
:
Parte da molécula:b (pra cadeia), spine
backbone, sidechain,
Tipo de resíduo3 letras de aminoácidos, acidic, basic, polar, neutral, charged, purine, pyrimidine, large, small, buried, surface, cyclic, hydrophilic, hydrophobic, aromatic, cystine, aliphatic, spine, base
abreviação de
2a. em proteínas
Estrutura helix, sheet, turn
Os comandos gerais para emprego das expressões acima ou de combinações dessas são, basicamente:
select, restrict, hide, display, delete
Cada expressão deve ser alocada entre parênteses. Pode-se também aplicar operações booleanas (or, and, but not, ou =, <, >, <=, >=, !=).
O comando restrict tem natureza irreversível, enquanto o comando hide apresenta-se reversível na renderização. seguido pela expressão desejada. Alguns exemplos:
Seguem alguns exemplos:
Comando restrict# permanece somente as hélices da estrutura secundária
restrict helix # somente o ligante
restrict ligand # somente a proteína sem grupos prostéticos
restrict not ligand 42-60 # permanece apenas a sequência de resíduos indicada
restrict # permanece apenas o grupo identificado (um ligante, no caso)
restrict f6p not(:a, :b) # permanecem cadeias que não a "a" e a "b"
restrict
Comando select
select Tyr
select polar# seleciona todos os átomos
select all # não seleciona nenhum átomo
select none # seleciona dois ligantes
select bmp,amp select (bmp, amp) and oxygen
:b # seleciona grupo heme da cadeia "b"
select hem and :b # seleciona o grupo heme da cadeia "b", omitindo o Fe
select hem and not iron */2 # todos os átomos do modelo 2
select connected(oxygen) # todos os átomos ligados a um oxigênio
select :A .ca # carbono alfa de serina no. 70 da cadeia A
select ser70 # heteroátomos exceto a água
select hetero and not solvent # somente a água
select remove group hetero and not water # heteroátomos exceto ligante
select hetero and not ligand # somente resíduos do cerne proteico
select buried only # seleciona hélices ou esqueleto proteico
select helix or backbone # seleciona as demais estruturas 2as. de proteína (turn, sheet)
select not helix 62 and(sidechain or alpha) # cadeia lateral ou carbono alfa do resíduo 62
select # carbonos alfa de serina no. 70
select ser70.ca :a.ca # carbons alfa de serina no. 70 da cadeia "a"
select ser70 select (lys,arg) # somente os resíduos Lys e Arg
select (lys,arg) and :b # resíduos Lys e Arg da cadeia "b"
19-32 :y # sequência de resíduos da cadeia "y"
select # resíduo Asp na posição 47
select asp47 47 :y # resíduo asp47 da cadeia "y"
select [asp]select (10 or 25) and backbone
>14 and resNo<25 and *.CA # carbonos alfa de resíduos 14 a 25
select resNo/2 # oxigênio de moléculas de água no modelo 2
select hoh.oselect (14,16,18,20) # os resíduos numerados
*:b # a espinha da cadeia "b"
select backbone and *:b # a espinha de todas as cadeias, exceto a "b"
select backbone and not # tudo que não estiver escondido
select not hidden...select displayed # tudo que não fora selecionado previamente
select not selected # átomos de carbono não selecionados previamente
select carbon and not selected
Comando deletedelete(calcium,nadph)
Seleções especiais
Comando within
Este comando permite uma seleção recursiva, ou seja, uma seleção dentro de uma seleção.
within (5, (bca,amp)) # seleciona dois ligantes que se avizinhem a 5 Angstrons de distância do grupo de átomos selecionado
select within(3.0, _Fe) # todos os átomos próximos de 3 Angstrons do átomo de ferro select
Comando define
Permite definir um grupo de átomos para renderização ou observação específica. Após a definição basta utilizar select ou outro comando para alteração do modelo.
teste (arg10) # seleciona somente Arg10
define teste (arg10 or asn46) # seleciona os dois resíduos
define teste (ser195 or asp102 or his57)
define within(3.0, _Cu) # 3 Angstrons de distância de átomo de cobre
define Sitio within(5.0,arg31) # 5 Angstrons de distância de Arg31
define PontoX # previamente selecionado define vizinhos selected
Ampliação dos modelos (zoom)
Há dois comandos básicos no Jmol para ampliação:
- zoom : (expressão) tamanho
- zoomTo : tempo (expressão) tamanho
O segundo comando permite uma animação do modelo, motivo pelo qual será explicitado em seção homônima abaixo. Seguem alguns exemplos para o comando zoom.
2x: zoom in
Ampliação 3x: zoom \*3
Ampliação em 2x: zoom out
Redução em 3x: zoom /3
Redução em : zoom off
Eliminar ampliação: restrict ligand; zoom 0
Restrição a ligante e ampliação100: restaura o tamanho inicial zoom
Superfícies
O Jmol permite renderizar alguns tipos de superfícies em torno dos átomos do modelo. Para macromoléculas deve-se observar que a renderização levará um tempo maior.
/ off \# superfície de van der Waals dots only \# somente a superfície de vdw presente (sem o modelo) dots vanderwaals...ou dots vdw dots ionic
dots on
/off # superfície molecular
isosurface on# excluindo o solvente
isosurface solvent # incluindo o solvente
isosurface molecular 5 # superíficie a um determinado raio de VDW
isosurface molecular # área acessível ao solvente ("surface acessible solvent")
isosurface sasurface # "molecular electrostatic potential"
isosurface mep # superfície de Van der Waals
isosurface map vdw # potencial eletrostático
isosurface map mep # ou temperature, vanderwaals
isosurface molecular map property PartialCharge
/off # superfície molecular geodésica (curva) geosurface only # exclusivamente a superfície, sem o modelo geosurface vdw
geosurface on5 # valor em Angstrom
geosurface ionic geosurface
: Para visualizar as superfícies incluindo o solvente, pode-se utilizar o comando "set solvent on" antes. Obs
Gráficos
Alguns gráficos bi e tridimensionais podem ser gerados a partir de comandos simples do Jmol. Para voltar ao modelo original, forneça o comando model 1. Alguns exemplos:
# resno = número do resíduo (plota após comando para calcular carga superficial - vide acima)
plot properties resno partialcharge # plot 3D com ângulos diedrais contra no. do resíduo plot rama...ou...
plot properties phi psi resno # gráfico de Ramachandran para estrutura 2a. em proteínas
plot ramachandran : para visualizar os ângulos phi e psi no modelo (não no plot), digite: draw rama (draw off para esconder)
Obs
: hydrophobicity, mass, temperature, radius, occupancy, chaino Outras propriedades
Criando e lendo scripts
A “scriptagem” permite a observação e análise de uma parte específica do modelo em estudo, pela composição de trechos de código como linhas de comando. Dessa forma o script assemelha-se a um algoritmo com sucessão de comandos. Um script pode ser carregado pela chamada de arquivos do programa (File, Open), ou mesmo por arraste do arquivo à área do ecrã do programa.
Um script do Jmol baseia-se em um dialeto de Java Script, e pode ser conduzido por uma sequência de comandos a cada linha de um arquivo de texto simples, salvando-o como .spt.
Por outro lado, o Jmol possui um ambiente próprio de construção e testagem, Script Editor, acessável pelo Menu principal. Nesse ambiente é possível criar abrir, criar, checar, e rodar um script.
O Editor pode ser empregado quando se tem várias linhas de comando, para melhor visualização da sequência algoritmica. Nesse caso é possível também incluir comentários, com uso de:
/* comentário */
ou// comentário //
ou# comentário
Na seção de Programação serão apresentados alguns scripts elaborados no Editor.
Também é válido copiar/colar algum trecho de código no Console ou Jmol/JSmol separando-se os comandos por ponto-e-vírgula em linhas sucessivas. Desta forma simula-se o Script Editor no próprio Console.
Também é possível pelo Jmol definir um script inicial a ser rodado junto à abertura do programa. Para isto:
Também é possível pelo Jmol definir um script inicial a ser rodado junto à abertura do programa. Para isto:
"comandos" set defaultLoadScript
Mutação
Também é possível observar consequências da mutação de resíduos específicos em um modelo, tais como interações fracas (eletrostáticas ou ligações de hidrogênio, por ex).
33Lys \# altera especificamente a posição 33 da sequência primária para Lisina mutate Ala34 \~W \# alteral Ala para Trp mutate(1:3) \~GAL \# altera as três primeiras posições na proteína para Gly, Ala e Leu mutate
Visualizando regiões com função strut
Essa função permite conectar átomos na estrutura de uma proteína, apresentando um traço entre eles.
=1392 or atomno=1403
select atomno
connect
strut2.0
strut color strut pink
Animações
: select hem; wireframe only; wireframe 70 \# renderização exclusiva do grupo zooto 2(\_Fe) 0 \# ampliação de 2x Focando o átomo de Fe na mioglobina
Ampliação (zoomto)
Esse recurso permite visualizar de forma ampliada e ajustada temporalmente, algumas partes de interesse do modelo, tais como sítios de interação de ligantes ou grupos prostéticos. A sintaxe da expressão é:
zoomTo (expressão do átomo/grupo) tamanho ou...
zoomto ou tempo (expressão do átomo/grupo) tamanho zoomto
Exemplos:
3x, meio segundo por vez: zoomto 0.5 *3
Aumentar em 4x, meio segundo por vez: zoomto 0.5 400
Aumentar em 2x: zoomto 2(ligand) 0
Focar num ligante com ampliação de 4x, a meio segundo por vez: zoomto 0.5(ligand)* 4 Focar num ligante com ampliação de
Delay
Comando que permite aguardar por certo período (em segundos), antes da próxima ação. Utilizado normalmente na sequência de comandos pelo Console, ao longo de um script.
Move
Os comandos move e moveTo permitem combinar ações de rotação, translação, e ampliação nos modelos. O comando move reorienta o modelo a partir das coordenadas atuais, e possui a sintaxe:
move rotX rotY rotZ zoom dX dy dZ slab time
Onde rot represnta a rotação em determinado eixo, e d a translação no eixo. Exemplos:
90 0 0 0 0 0 0 0 1 - rotacioina o modelo em 90o no eixo X;
move 0 720 0 0 0 0 0 0 1 - rotaciona duas voltas completas no modelo em torno do eixo Y, durante 1 s;
move 90 15 0 100 0 20 0 0 2 - durante 2 s, rotaciona o modelo em 90o. no eixo X e 15o. no eixo Y, eleva seu tamanho a 100, e translada em 20% da altura do painel, tudo ao mesmo tempo move
MoveTo
Resulta em orientação absoluta do modelo, não dependendo de suas coordenadas anteriores. Sua inserção não é simples, pois depende dos dados da orientação do modelo quando carregado pela 1a. vez, e que pode ser obtida por:
show orientation
Um exemplo de resultado pelo comando é:
/* time, axisAngle */ 1.0 { 616 -708 -346 47.68} /* zoom, translation */ 400.0 0.0 0.0 /* center, rotationRadius */ {15.174467 28.719118 4.726837} 35.148052 /* navigation center, translation, depth */ {0 0 0} 0 0 0 /* cameraDepth, cameraX, cameraY */ 3.0 0.0 0.0;
moveto #OR
#Follows Z-Y-Z convention for Euler angles
15.174467 28.719118 4.726837}; rotate z 130.27; rotate y 44.57; rotate z -147.67; zoom 400.0; reset;center {
Perceba que há dois conjuntos de comandos um pelo moveTo e outro por reset, center, rotate e translate. Para obter o modelo nas coordenadas originais, basta copiar um ou outro conjunto de dados.
Usando-se o 1o. conjunto (moveTo), copia-se a linha e altera-se o tempo de animação, no caso o valor 1.0 em “axisAngle */ 1.0”.
Compare
Compara 2 modelos e reorienta as coordenadas do segundo para justapor-se ao primeiro, por um algoritmo de correlação.
"$tyrosine" "$epinephrine";
load files *;
frame 2.1} {1.1} rotate translate 5.0 compare {
Programação no Jmol
Comandos de programação e de laço (loop) implementados no Jmol:
IF FOR WHILE STEP BREAK WAIT PAUSE BREAK CASE CONTINUE QUIT
Laço (loop)
Permite executar uma linha de comando repetidamente.
3; color bonds green; loop 1 # o laço é executado a cada 1 s color bonds red; delay
Modelagem molecular
Ainda que bastante limitado como ferramenta ao propósito de modelagem molecular, o Jmol permite algumas aproximações de caráter didático. O script que segue exemplifica a ferramenta em modelagem. Pode ser copiado e colado na janela do Script Editor, ou carregado a partir de um arquivo de texto.
# Modelagem molecular #1
=3fgu;
loadligbind (ANP, BGC, MG);
define
select ligbind3.3
connect 0.5
strut
color strut yellow hide protein or water
# Modelagem molecular #2
=3fgu # carrega estrutura
load
cartoon only
hide waterselect(BGC,ANP)
wireframe only
select MG100
spacefill
color palegreenligbind (ANP,BGC,MG)
define
select remove hetero and not water3.3(ligbind and (oxygen or nitrogen)) (selected and (oxygen or nitrogen)) strut yellow # cria varas de lig.H da proteína com os ligantes
connect 0.5(ligbind) *4 # amplia a cada meio segundo, até 4x no sítio do ligante
zoomTo
0; center
zoom 2 DEPTH 30 / ROTATE 120
navigate zoomto (mg) *7
# Obs: adaptado de Procko, K., Bakheet, S., Beckham, J. T., Franzen, M. A., Jakubowski, H., & Novak, W. R. (2021). Modeling an Enzyme Active Site using Molecular Visualization Freeware. JoVE (Journal of Visualized Experiments), (178), e63170.