using makeoligos_2b.m

command line syntax:

[oligoout,seq,tm_out,overlapbeg_out,overlapend_out]=makeoligos2b(protein,prefix,suffix,readingframe,re1,re2,org);

protein:the protein sequence, no gaps

prefix:constant DNA sequence to be appended to the 5' end of the gene

suffix: constant DNA sequence to be appended to the 3' end of the gene (both prefix and suffix will be the coding sequence for the gene)

readingframe:1, 2 or 3, the reading frame of the protein once the prefix is added. If your prefix is divisible by 3, then readingframe=1

re1 and re2:restriction enzymes used for cloning. The program will inform you if the design generates internal restriction sites.

org:'e' or 'y', to indicate whether E. coli or yeast codon preferences will be used.

notes:

  • the program designs sequences with the following properties:
  • the 3' base must be a G or C
  • at least 3/5 of the 3' bases must be G or C
  • overlap Tm is 54 or 56 °C, using the formula Tm = (#GC * 4) + (#AT * 2)
  • maximum oligo length is 45
  • optimal codons are used when possible, otherwise, a second-best codon is used.
  • the 3'most oligo must be antisense in order for the PCR to work (theoretically). However, the program doesn't take this into account. Therefore, I recommend (manually) building an anti-sense oligo against the constant suffix sequence that has the properties described above.
  • the output indicates number of occurrences of re1 and re2, including the instances specified in prefix and suffix. If these values are greater than 1, then there is an extra site somewhere in the gene. You have to change this by manually altering the offending oligos, sticking to the criteria described above. Codon tables with preferences for yeast and E. coli are attached.

an example:

here is the first sequence in the WW alignment:

> aln(1,:)

ans =

PLP------PG---WEIKIDPQTGWPFFVDHNSRTTTWNDPRVP

to get it without gaps, use:

aln(1,find(aln(1,:)~='-'))

ans =

PLPPGWEIKIDPQTGWPFFVDHNSRTTTWNDPRVP

[oligoout,seq,tm_out,overlapbeg_out,overlapend_out]=makeoligos2b(aln(1,find(aln(1,:)~='-')),'actgacggatcc','ggtgaattcgtgggcg',1,'ggatcc','gaattc','e');

or

[oligoout,seq,tm_out,overlapbeg_out,overlapend_out]=makeoligos2b('PLPPGWEIKIDPQTGWPFFVDHNSRTTTWNDPRVP','actgacggatcc','ggtgaattcgtgggcg',1,'ggatcc','gaattc','e');

the output looks like:

actgacggatccccattgccaccaggttgggaaattaaaatcgac

ggccaaccagtttgtgggtcgattttaatttcccaac

ccacaaactggttggccattttttgttgatcacaactccaggacc

ggacccttgggtcgttccaagtagtggtcctggagttgtgatc

gaacgacccaagggtcccaggtgaattcgtgggcg

actgacggatccccattgccaccaggttgggaaattaaaatcgacccacaaactggttggccattttttgttgatcacaactccaggacc gaacgacccaagggtcccaggtgaattcgtgggcg

gttgggaaattaaaatcgacccacaaactggttggcc gatcacaactccaggaccactacttggaacgacccaagggtcc

1 occurrences of re1

1 occurrences of re2

the output shows first the sequences that you should order, second the alignment of these sequences that will produce the gene in question, and third the number of occurrences of re1 and re2. This output shows that each restriction site occurs once (as specified in prefix and suffix) and therefore doesn't require further adjustment.

the variables returned are:

oligoout:a cell array containing sequences of the 5 oligos

seq:the sequence of the gene that should result from the design (after PCR)

tm_out:a list of overlap tms (all should be 54 or 56)

overlapbeg_out:positions in seq where overlaps begin

overlapend_out:positions in seq where overlaps end

Since the design returned 5 oligos, we'll have to design a short anti-sense oligo for the end.

here's the last two oligos in the design:

gaacgacccaagggtcccaggtgaattcgtgggcg

gatcacaactccaggaccactacttggaacgacccaagggtcc

the residues in blue will give a Tm of 54. The oligo must be the reverse complement of this:

gcccacgaattcacctg

note: there is a flaw in my example… the final anti-sense oligo extends beyond the constant suffix sequence, which means that it will be different for every gene. This is fine for a single gene, but if you're making a family of genes, they might as well use the same anti-sense oligo, so just make the suffix longer.

KRANTZ LAB

Version 3

makeoligos2bv3.m

Function:

[oligoout,seq,tm_out,overlapbeg_out,overlapend_out]=makeoligos2bv3(protein,prefix,suffix,readingframe,org,re1,re2,re3,re4);

Example:

[oligoout,seq,tm_out,overlapbeg_out,overlapend_out]=makeoligos2bv3('PLPPGWEIKIDPQTGWPFFVDHNSRTTTWNDPRVP','actgacggatcc','ggtgaattcgtgggcg',1,'e','ggatcc','gaattc','agatct','ctcgag');

Note ‘org’ moved up in the parameter list and now 4 restriction sites may be added to search for. Requires an additional file: getrestrictionsitename.m

Other restriction sites may be added to the above function.

Bryan

6/16/2008 4:47 PM

E. coli prefs
U / C / A / G
U / UUU / Phe / 57 / UCU / Ser / 15 / UAU / Tyr / 57 / UGU / Cys / 44 / U
UUC / Phe / 43 / UCC / Ser / 15 / UAC / Tyr / 43 / UGC / Cys / 56 / C
UUA / Leu / 13 / UCA / Ser / 12 / UAA / Stop / 65 / UGA / Stop / 29 / A
UUG / Leu / 13 / UCG / Ser / 15 / UAG / Stop / 6 / UGG / Trp / 100 / G
C / CUU / Leu / 10 / CCU / Pro / 16 / CAU / His / 57 / CGU / Arg / 38 / U
CUC / Leu / 10 / CCC / Pro / 12 / CAC / His / 43 / CGC / Arg / 40 / C
CUA / Leu / 4 / CCA / Pro / 19 / CAA / Gln / 35 / CGA / Arg / 7 / A
CUG / Leu / 50 / CCG / Pro / 53 / CAG / Gln / 65 / CGG / Arg / 10 / G
A / AUU / Ile / 51 / ACU / Thr / 17 / AAU / Asn / 45 / AGU / Ser / 15 / U
AUC / Ile / 42 / ACC / Thr / 43 / AAC / Asn / 55 / AGC / Ser / 28 / C
AUA / Ile / 7 / ACA / Thr / 13 / AAA / Lys / 77 / AGA / Arg / 4 / A
AUG / Met / 100 / ACG / Thr / 27 / AAG / Lys / 23 / AGG / Arg / 2 / G
G / GUU / Val / 26 / GCU / Ala / 16 / GAU / Asp / 63 / GGU / Gly / 34 / U
GUC / Val / 22 / GCC / Ala / 27 / GAC / Asp / 37 / GGC / Gly / 40 / C
GUA / Val / 15 / GCA / Ala / 21 / GAA / Glu / 69 / GGA / Gly / 11 / A
GUG / Val / 37 / GCG / Ala / 36 / GAG / Glu / 31 / GGG / Gly / 15 / G
yeast prefs, from ftp://genome-ftp.stanford.edu/pub/codon/ysc.gene.cod
U / C / A / G
U / UUU / Phe / 58 / UCU / Ser / 27 / UAU / Tyr / 56 / UGU / Cys / 64 / U
UUC / Phe / 42 / UCC / Ser / 16 / UAC / Tyr / 44 / UGC / Cys / 36 / C
UUA / Leu / 28 / UCA / Ser / 21 / UAA / Stop / 50 / UGA / Stop / 28 / A
UUG / Leu / 30 / UCG / Ser / 9 / UAG / Stop / 22 / UGG / Trp / 100 / G
C / CUU / Leu / 12 / CCU / Pro / 31 / CAU / His / 64 / CGU / Arg / 15 / U
CUC / Leu / 5 / CCC / Pro / 15 / CAC / His / 36 / CGC / Arg / 5 / C
CUA / Leu / 14 / CCA / Pro / 42 / CAA / Gln / 70 / CGA / Arg / 6 / A
CUG / Leu / 11 / CCG / Pro / 12 / CAG / Gln / 30 / CGG / Arg / 4 / G
A / AUU / Ile / 47 / ACU / Thr / 35 / AAU / Asn / 59 / AGU / Ser / 16 / U
AUC / Ile / 27 / ACC / Thr / 22 / AAC / Asn / 41 / AGC / Ser / 11 / C
AUA / Ile / 26 / ACA / Thr / 30 / AAA / Lys / 57 / AGA / Arg / 49 / A
AUG / Met / 100 / ACG / Thr / 13 / AAG / Lys / 43 / AGG / Arg / 21 / G
G / GUU / Val / 40 / GCU / Ala / 38 / GAU / Asp / 65 / GGU / Gly / 49 / U
GUC / Val / 21 / GCC / Ala / 23 / GAC / Asp / 35 / GGC / Gly / 19 / C
GUA / Val / 20 / GCA / Ala / 28 / GAA / Glu / 71 / GGA / Gly / 21 / A
GUG / Val / 19 / GCG / Ala / 11 / GAG / Glu / 29 / GGG / Gly / 11 / G