-
Notifications
You must be signed in to change notification settings - Fork 2
/
ppdesigner.py
executable file
·41 lines (29 loc) · 1.03 KB
/
ppdesigner.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import os
from pickPrimers.pickPrimers import pickPrimers
from filterPrimers.filterPrimers import filterPrimers
from properPrimers.properPrimers import properPrimers
from compPrimers.greedySearch import greedySearch
from compPrimers.formatOut import formatOut
from verifyPrimers.verifyPrimers import verifyPrimers
def ppdesigner(locs,prefix):
pfa,ptm,ppo = pickPrimers(locs,prefix)
ffa = filterPrimers(pfa,ppo)
pid2pids,sid2pids = properPrimers(ffa,prefix)
greedySearch(sid2pids,pid2pids,prefix)
out = formatOut(prefix)
verifyPrimers(out,pfa,ptm,ppo,prefix)
if __name__ == "__main__":
from docopt import docopt
usage = """
Usage:
ppdesigner.py -i <input> -p <prefix>
Options:
-i,--input=<input> input file in "chr|locus" format.
-p,--prefix=<prefix> output prefix
Description:
ppdesigner is used for design human multiplex pcr primer .
"""
args = docopt(usage)
pi = args["--input"]
px = args["--prefix"]
ppdesigner(pi,px)