Búsqueda en parsimonia, consenso estricto y cálculo de IC e IR en

Anuncio
Búsqueda en parsimonia, consenso estricto y cálculo de IC e IR en TNT
utilizando script basado en lenguaje macro
Orlando Fuentes cód. 1993544
Introducción
El manejo de scripts permite la automatización de procesos que extiende las capacidades del
programa (Goloboff et al., 2008). El lenguaje macro, poco utilizado por los usuarios de TNT,
permite manipular variables internas del programa y hacer cosas que normalmente no hace. Es
así como el comando “macro=;” controla ajustes básicos del lenguaje macro, como RAM total
utilizada, número de variables y número de loops o ciclos. De este modo, provee capacidad
computacional efectiva en el manejo de grandes sets de datos. El objetivo principal de esta
revisión es el de aplicar el lenguaje macro en una búsqueda sencilla basada en parsimonia,
consenso de Nelsen y cálculo de IC e IR utilizando caracteres moleculares.
Metodología
Los datos moleculares fueron extraídos del trabajo en ranas realizado por Che et al., (2007)
basado en secuencias nucleares y mitocondriales. Se utilizaron las secuencias mitocondriales
del gen 16s para siete taxa: Fejervarya cancrivora, Hoplobatrachus rugulosa, Fejervarya
limnocharis, Limnonectes fujianensis, Limnonectes kuhlii, Limnonectes fragilis y Occidozyga
martensii. Las secuencias fueron alineadas en el programa CLUSTAL ver. 2.0.11 liberado por
Larkin et al. (2007, actualización 2009). A continuación se procedió a una lectura extensiva de
los manuales de TNT (Goloboff et al., 2007) y revisión de documentación disponible online
respecto al manejo de macros. Finalmente se realizó un script basado en el comando
“macro=;” que permitió la realización de una búsqueda bajo el criterio de parsimonia (it=100
hold=10) de caracteres moleculares, con consenso de Nelsen, así como el cálculo de Índices
de Retensión y Consistencia para los árboles obtenidos.
Resultados
El comando “macro=;” activa el lenguaje dentro del programa, y su forma de desactivarlo es
“macro-;”. Posterior a este se exponen las variables a manejar con el comando “var=”, que
usa números internos (que el programa identificará) o expresiones (es decir, enunciando
directamente los nombres), mediante “var:”. Luego se asigna valor a las variables mediante el
comando “set”, seguido del nombre de la variable y su valor. Para el script que construí esta
sería la secuencia de mandos:
macro=;
var:
numIts
numTrees
itTrees;
set numIts 100;
set itTrees 10;
set numTrees 'numIts' * 'itTrees';
Paso siguiente se añadieron los comandos regulares del programa “hold” y “mult” para iniciar
la búsqueda.
hold 'numTrees';
mult = replic 'numIts' hold 'itTrees';
El consenso estricto se realizó mediante el comando “nel *;”. Y a continuación se añadió
“tsave 16s.tre;” “save;” y “tsave/;” para salvar los árboles obtenidos.
Al buscar la forma de calcular IC e IR se encontró que la instalación del programa provee
ejemplos de macros en el archivo “tnt_scripts.rar” por lo cual se utilizó el macro “stats.run”
para este fin; simplemente añadiendo “stats;” en el script. Así mismo se puede hallar soporte
de bremmer, optimización de Sankoff y demás mediante la manipulación de estos macros.
La secuencia completa de las instrucciones se observa en la figura 1.
Se obtuvo dos árboles de longitud 309, cuyo consenso se observa en la figura 2, y en la figura
3 se halla el cuadro obtenido de los cálculos de IC e IR.
Otros comandos.
Loop. Es usado para ejecutar acciones repetitivas o en ciclos y su forma general es usada
así:
loop =name X+Y Z
actions, decisions ...
stop
Donde name representa el nombre que se pone al loop y X, Y, Z son números de las variables,
aunque también se puede utilizar los nombres directamente. Es así como loop permite llevar a
cabo varias acciones y acceder a variables en otros archivos.
If, else y end. Usados en decisiones lógicas.
if ( condition )
action(s) A ;
else
action(s) B ;
end
Donde si la condición es válida, se ejecuta la acción A, ó de lo contrario, se llevará a cabo la
acción B, que puede ser omitida y donde A y B pueden ser comandos regulares de TNT. Cada
if debe ser seguida de else ó end.
Conclusiones y recomendaciones
Los principales comandos en el manejo de un script basado en lenguaje macro son “macro=;”
“var=” y “set”, donde se pueden especificar las diferentes variables internas del programa que
no son accesibles desde las acciones regulares de TNT.
La ejecución automática de macros resulta sencilla desde un script añadiendo simplemente el
nombre del macro previamente guardado bajo la extensión “.run” sin olvidar ubicarlo en la
misma dirección del script y el programa.
TNT provee muchas posibilidades respecto al manejo del lenguaje macro incrementando el
poder computacional de las máquinas comunes a la vez que reduce el tiempo de
procesamiento en cuanto a grandes sets de datos se refiere.
La corrida realizada en esta revisión pudo haber sido hecha por medio de los comandos
normales de TNT; sin embargo se utilizó el script basado en lenguaje macro con el fin de
demostrar que resulta una herramienta versátil y fácilmente manejable aún para usuarios no
programadores.
Referencias
Arias, J.S. & Miranda-Esquivel, D.R. 2006. A sensitivity analysis for choosing reliability functions
to select cladograms. Zoologica scripta.
Che, J., Pang, J., Zhao, H., Wu, G., Zhao, E. & Zhang, Y. 2007. Molecular phylogeny of the
Chinese ranids inferred from nuclear and mitochondrial DNA sequences. Biochemical
Systematics and Ecology, 35: 29-39.
Goloboff, P.A., Farris, J.S., Nixon, K.C. 2007. T.N.T. Tree analysis using new technology.
Programa y documentación disponible en: http://www.zmuc.dk/public/phylogeny/TNT/
Goloboff, P.A., Farris, J.S., Nixon, K.C. 2008. TNT, a free program for phylogenetic analysis.
Cladistics, 24: 1-13.
Larkin, M.A., Blackshields, G. Brown, N.P., Chenna, R., McGettigan, P.A., McWilliam, H.,
Valentin, F., Wallace, I.M., Wilm, A., Lopez, R., Thompson, J.D., Gibson, T.J. & Higgins, D.G.
2007. Clustal W and Clustal X version 2.0. Bioinformatics, 23(21): 2947-2948.
Yang, Z. 2006. Computational Molecular Evolution. First edition. Oxford University Press.
Disponible en:
http://books.google.com.co/books?id=K5sBXe1qPt8C&printsec=frontcover#v=onepage&q=&f=f
alse . Fecha de consulta: 17-09-2009.
Wiki de TNT - Tree analysis using New Technology. Disponible en:
http://tnt.insectmuseum.org/index.php/Main_Page
Anexos
Figura 1. Secuencia de
instrucciones.
Figura 2. Reconstrucción
obtenida a partir de gen mit 16s.
Figura 3. Índices de Consistencia y Retensión
para los árboles obtenidos.
Descargar