Diseñe cebadores degenerados arbitrarios (con criterios no vinculantes)

Me gustaría diseñar una serie de cebadores degenerados arbitrarios (cebadores con bases variables, por ejemplo NGATWGCTSATNGC) para una TAIL-PCR .

Me gustaría poder especificar los siguientes parámetros para la función de diseño:

  • Temperatura de recocido (idealmente 44°C)
  • Degeneración (cuántas variaciones de la cartilla AD hay (idealmente 128 o 256)
  • Frecuencia de unión en el genoma (ratón) (idealmente 1/3000), aunque esto puede depender de la degeneración y viceversa.
  • Área de no unión (por supuesto, no me gustaría que ninguna variación del cebador se una al área de secuencia conocida entre mis cebadores específicos y el área desconocida que quiero secuenciar)

¿Alguna idea de alguna herramienta que pueda ayudarme con los pasos anteriores? Para el diseño de cebadores, he usado eprimer3 hasta ahora (con resultados invariablemente satisfactorios), pero parece no ser compatible con el concepto de cebadores degenerados arbitrarios.

Idealmente, si tuviera una función que pudiera resolver el primero de los criterios anteriores, podría usar Biopython y BLAST para escribir el resto yo mismo. Aunque la frecuencia de unión tardaría horas, si no uno o dos días, para que BLAST la determine. Sería de gran ayuda si alguien ya escribió algo más elaborado para esto.

¿Sabes la secuencia que quieres? Es decir, los lugares degenerados marcados como Npero el resto presente. No conozco un programa que lo haga. Pero puedo sugerirle un flujo de trabajo que usaría scripts simples y herramientas bioinformáticas existentes.
¡Adelante, sugiere! En cuanto a la pregunta, no, la secuencia en sí es completamente irrelevante para mí. lo que me importa son los criterios mencionados anteriormente. Cualquier secuencia que los cumpla se adaptaría a mis propósitos.
Con respecto al cuarto punto: asumo que la cartilla exacta tiene la misma longitud que las degeneradas. ¿Quieres primers con longitudes variables? Eso será más complicado.
¿Por cebador "exacto" se refiere a los cebadores específicos para TAILPCR? si es así, no, son ~ 20 pb, los cebadores AD deberían estar alrededor de ~ 14 pb (aunque supongo que eso puede variar un poco para tener en cuenta la frecuencia de unión y la temperatura de recocido).

Respuestas (1)

Si ya conoce la secuencia básica, es decir, las regiones fijas en la cartilla; por ejemplo, los nucleótidos conocidos en la secuencia - NGATWGCTSATNGC, entonces puede implementar su algoritmo de esta manera:

  • Fijar la longitud máxima de los cebadores. Digamos 20nt.
  • Genere todas las combinaciones de cebadores (20 nt): eso es bastante sencillo. Tendrá un número de combinaciones de
    4 N × 2 (R+Y+S+W+K+M) × 3 (B+D+V+H) , donde cada alfabeto indica el número de dichas instancias. Compruebe este sitio para los códigos de nucleótidos.
  • Calcule la Tm de los pares cebador-plantilla. UNAfold tiene una calculadora Tm de hibridación de nucleótidos. Puede especificar parámetros como la concentración de sal, etc. También existen otras herramientas similares. Estos se pueden ejecutar en la línea de comandos.
  • Deseche todos los cebadores que tengan Tm por debajo del límite aceptable.
  • Para aquellos que excedan la Tm aceptable, siga bajando una base desde los 3' hasta que la Tm esté dentro del rango.
  • Si la longitud de la imprimación es inferior a 14 nt, deséchela.
  • Ahora, con todos estos cebadores seleccionados, compruebe parámetros como la autohibridación, la fijación de GC, etc. (OPCIONAL). Puede usar primer3 para estos fines ejecutándolo en el primer_checkmodo.
  • Descargue la nr/ntbase de datos BLAST.
  • Ajuste los parámetros de BLAST para la búsqueda de nucleótidos cortos: disminuya la longitud de la palabra, aumente el límite de valor e, etc. (consulte esta publicación de biostar y la ayuda de BLAST ).
  • BLAST sus cebadores contra la base de datos en plus-minusmodo.
  • Preocúpese solo por los casos en los que hay una alineación significativa en el 3' del cebador, ya que solo estos pueden causar la extensión.

Estas instrucciones se pueden automatizar utilizando cualquier idioma o script de shell.


Las preguntas sobre la escritura de guiones estarían fuera de tema en este sitio. Puedes preguntar dudas específicas sobre la codificación en stackoverflow.