Package Bio :: Package Emboss :: Module Applications
[hide private]
[frames] | no frames]

Source Code for Module Bio.Emboss.Applications

   1  # Copyright 2001-2009 Brad Chapman. 
   2  # Revisions copyright 2009-2010 by Peter Cock. 
   3  # Revisions copyright 2009 by David Winter. 
   4  # Revisions copyright 2009-2010 by Leighton Pritchard. 
   5  # All rights reserved. 
   6  # This code is part of the Biopython distribution and governed by its 
   7  # license.  Please see the LICENSE file that should have been included 
   8  # as part of this package. 
   9  """Code to interact with and run various EMBOSS programs. 
  10   
  11  These classes follow the AbstractCommandline interfaces for running 
  12  programs. 
  13  """ 
  14   
  15  from Bio.Application import _Option, _Switch, AbstractCommandline 
  16   
17 -class _EmbossMinimalCommandLine(AbstractCommandline):
18 """Base Commandline object for EMBOSS wrappers (PRIVATE). 19 20 This is provided for subclassing, it deals with shared options 21 common to all the EMBOSS tools: 22 23 - auto Turn off prompts 24 - stdout Write standard output 25 - filter Read standard input, write standard output 26 - options Prompt for standard and additional values 27 - debug Write debug output to program.dbg 28 - verbose Report some/full command line options 29 - help Report command line options. More 30 information on associated and general 31 qualifiers can be found with -help -verbose 32 - warning Report warnings 33 - error Report errors 34 - fatal Report fatal errors 35 - die Report dying program messages 36 """
37 - def __init__(self, cmd=None, **kwargs):
38 assert cmd is not None 39 extra_parameters = [\ 40 _Switch(["-auto","auto"], [], 41 """Turn off prompts. 42 43 Automatic mode disables prompting, so we recommend you set 44 this argument all the time when calling an EMBOSS tool from 45 Biopython. 46 """), 47 _Switch(["-stdout","stdout"], [], 48 "Write standard output."), 49 _Switch(["-filter","filter"], [], 50 "Read standard input, write standard output."), 51 _Switch(["-options","options"], [], 52 """Prompt for standard and additional values. 53 54 If you are calling an EMBOSS tool from within Biopython, 55 we DO NOT recommend using this option. 56 """), 57 _Switch(["-debug","debug"], [], 58 "Write debug output to program.dbg."), 59 _Switch(["-verbose","verbose"], [], 60 "Report some/full command line options"), 61 _Switch(["-help","help"], [], 62 """Report command line options. 63 64 More information on associated and general qualifiers can 65 be found with -help -verbose 66 """), 67 _Switch(["-warning","warning"], [], 68 "Report warnings."), 69 _Switch(["-error","error"], [], 70 "Report errors."), 71 _Switch(["-die","die"], [], 72 "Report dying program messages."), 73 ] 74 try: 75 #Insert extra parameters - at the start just in case there 76 #are any arguments which must come last: 77 self.parameters = extra_parameters + self.parameters 78 except AttributeError: 79 #Should we raise an error? The subclass should have set this up! 80 self.parameters = extra_parameters 81 AbstractCommandline.__init__(self, cmd, **kwargs)
82
83 -class _EmbossCommandLine(_EmbossMinimalCommandLine):
84 """Base Commandline object for EMBOSS wrappers (PRIVATE). 85 86 This is provided for subclassing, it deals with shared options 87 common to all the EMBOSS tools plus: 88 89 - outfile Output filename 90 91 """
92 - def __init__(self, cmd=None, **kwargs):
93 assert cmd is not None 94 extra_parameters = [\ 95 _Option(["-outfile","outfile"], ["output", "file"], None, 0, 96 "Output filename"), 97 ] 98 try: 99 #Insert extra parameters - at the start just in case there 100 #are any arguments which must come last: 101 self.parameters = extra_parameters + self.parameters 102 except AttributeError: 103 #Should we raise an error? The subclass should have set this up! 104 self.parameters = extra_parameters 105 _EmbossMinimalCommandLine.__init__(self, cmd, **kwargs)
106
107 - def _validate(self):
108 #Check the outfile, filter, or stdout option has been set. 109 #We can't simply do this via the required flag for the outfile 110 #output - this seems the simplest solution. 111 if not (self.outfile or self.filter or self.stdout): 112 raise ValueError("You must either set outfile (output filename), " 113 "or enable filter or stdout (output to stdout).") 114 return _EmbossMinimalCommandLine._validate(self)
115
116 -class Primer3Commandline(_EmbossCommandLine):
117 """Commandline object for the Primer3 interface from EMBOSS. 118 119 The precise set of supported arguments depends on your version of EMBOSS. 120 This version accepts arguments current at EMBOSS 6.1.0, but in order to 121 remain backwards compatible also support the old argument names as well. 122 123 e.g. Using EMBOSS 6.1.0 or later, 124 125 >>> cline = Primer3Commandline(sequence="mysequence.fas", auto=True, hybridprobe=True) 126 >>> cline.explainflag = True 127 >>> cline.osizeopt=20 128 >>> cline.psizeopt=200 129 >>> cline.outfile = "myresults.out" 130 >>> cline.bogusparameter = 1967 # Invalid parameter 131 Traceback (most recent call last): 132 ... 133 ValueError: Option name bogusparameter was not found. 134 >>> print cline 135 eprimer3 -auto -outfile=myresults.out -sequence=mysequence.fas -hybridprobe=True -psizeopt=200 -osizeopt=20 -explainflag=True 136 137 The equivalent for anyone still using an older version of EMBOSS would be: 138 139 >>> cline = Primer3Commandline(sequence="mysequence.fas", auto=True, hybridprobe=True) 140 >>> cline.explainflag = True 141 >>> cline.oligosize=20 # Old EMBOSS, instead of osizeopt 142 >>> cline.productosize=200 # Old EMBOSS, instead of psizeopt 143 >>> cline.outfile = "myresults.out" 144 >>> print cline 145 eprimer3 -auto -outfile=myresults.out -sequence=mysequence.fas -hybridprobe=True -productosize=200 -oligosize=20 -explainflag=True 146 147 """
148 - def __init__(self, cmd="eprimer3", **kwargs):
149 self.parameters = \ 150 [_Option(["-sequence","sequence"], ["input"], None, 1, 151 "Sequence to choose primers from."), 152 _Option(["-task","task"], ["input"], None, 0, 153 "Tell eprimer3 what task to perform."), 154 _Option(["-hybridprobe","hybridprobe"], ["input"], None, 0, 155 "Find an internal oligo to use as a hyb probe."), 156 _Option(["-numreturn","numreturn"], ["input"], None, 0, 157 "Maximum number of primer pairs to return."), 158 _Option(["-includedregion","includedregion"], ["input"], None, 0, 159 "Subregion of the sequence in which to pick primers."), 160 _Option(["-target","target"], ["input"], None, 0, 161 "Sequence to target for flanking primers."), 162 _Option(["-excludedregion","excludedregion"], ["input"], None, 0, 163 "Regions to exclude from primer picking."), 164 _Option(["-forwardinput","forwardinput"], ["input"], None, 0, 165 "Sequence of a forward primer to check."), 166 _Option(["-reverseinput","reverseinput"], ["input"], None, 0, 167 "Sequence of a reverse primer to check."), 168 _Option(["-gcclamp","gcclamp"], ["input"], None, 0, 169 "The required number of Gs and Cs at the 3' of each primer."), 170 _Option(["-osize","osize"], ["input"], None, 0, 171 "Optimum length of a primer oligo."), 172 _Option(["-minsize","minsize"], ["input"], None, 0, 173 "Minimum length of a primer oligo."), 174 _Option(["-maxsize","maxsize"], ["input"], None, 0, 175 "Maximum length of a primer oligo."), 176 _Option(["-otm","otm"], ["input"], None, 0, 177 "Optimum melting temperature for a primer oligo."), 178 _Option(["-mintm","mintm"], ["input"], None, 0, 179 "Minimum melting temperature for a primer oligo."), 180 _Option(["-maxtm","maxtm"], ["input"], None, 0, 181 "Maximum melting temperature for a primer oligo."), 182 _Option(["-maxdifftm","maxdifftm"], ["input"], None, 0, 183 "Maximum difference in melting temperatures between forward and " +\ 184 "reverse primers."), 185 _Option(["-ogcpercent","ogcpercent"], ["input"], None, 0, 186 "Optimum GC% for a primer."), 187 _Option(["-mingc","mingc"], ["input"], None, 0, 188 "Minimum GC% for a primer."), 189 _Option(["-maxgc","maxgc"], ["input"], None, 0, 190 "Maximum GC% for a primer."), 191 _Option(["-saltconc","saltconc"], ["input"], None, 0, 192 "Millimolar salt concentration in the PCR."), 193 _Option(["-dnaconc","dnaconc"], ["input"], None, 0, 194 "Nanomolar concentration of annealing oligos in the PCR."), 195 _Option(["-maxployx","maxployx"], ["input"], None, 0, 196 "Maximum allowable mononucleotide repeat length in a primer."), 197 #Primer length: 198 _Option(["-productosize","productosize"], ["input"], None, 0, 199 """Optimum size for the PCR product (OBSOLETE). 200 201 Option replaced in EMBOSS 6.1.0 by -psizeopt 202 """), 203 _Option(["-psizeopt", "psizeopt"], ["input"], None, 0, 204 """Optimum size for the PCR product. 205 206 Option added in EMBOSS 6.1.0, replacing -productosize 207 """), 208 _Option(["-productsizerange","productsizerange"], ["input"], None, 0, 209 """Acceptable range of length for the PCR product (OBSOLETE). 210 211 Option replaced in EMBOSS 6.1.0 by -prange 212 """), 213 _Option(["-prange", "prange"], ["input"], None, 0, 214 """Acceptable range of length for the PCR product. 215 216 Option added in EMBOSS 6.1.0, replacing -productsizerange 217 """), 218 #Primer temperature: 219 _Option(["-productotm","productotm"], ["input"], None, 0, 220 """Optimum melting temperature for the PCR product (OBSOLETE). 221 222 Option replaced in EMBOSS 6.1.0 by -ptmopt 223 """), 224 _Option(["-ptmopt", "ptmopt"], ["input"], None, 0, 225 """Optimum melting temperature for the PCR product. 226 227 Option added in EMBOSS 6.1.0, replacing -productotm 228 """), 229 _Option(["-productmintm","productmintm"], ["input"], None, 0, 230 """Minimum allowed melting temperature for the amplicon (OBSOLETE) 231 232 Option replaced in EMBOSS 6.1.0 by -ptmmin 233 """), 234 _Option(["-ptmmin", "ptmmin"], ["input"], None, 0, 235 """Minimum allowed melting temperature for the amplicon."), 236 237 Option added in EMBOSS 6.1.0, replacing -productmintm 238 """), 239 _Option(["-productmaxtm","productmaxtm"], ["input"], None, 0, 240 """Maximum allowed melting temperature for the amplicon (OBSOLETE). 241 242 Option replaced in EMBOSS 6.1.0 by -ptmmax 243 """), 244 _Option(["-ptmmax", "ptmmax"], ["input"], None, 0, 245 """Maximum allowed melting temperature for the amplicon."), 246 247 Option added in EMBOSS 6.1.0, replacing -productmaxtm 248 """), 249 #Note to self, should be -oexcludedregion not -oexcluderegion 250 _Option(["-oexcludedregion", "oexcludedregion"], ["input"], None, 0, 251 """Do not pick internal oligos in this region."), 252 253 Option added in EMBOSS 6.1.0, replacing -oligoexcludedregion. 254 """), 255 _Option(["-oligoexcludedregion", "oligoexcludedregion"], ["input"], 256 None, 0, 257 """Do not pick internal oligos in this region (OBSOLETE)."), 258 259 Option replaced in EMBOSS 6.1.0 by -oexcluderegion. 260 """), 261 _Option(["-oligoinput","oligoinput"], ["input"], None, 0, 262 "Sequence of the internal oligo."), 263 #Oligo length: 264 _Option(["-oligosize","oligosize"], ["input"], None, 0, 265 """Optimum length of internal oligo (OBSOLETE). 266 267 Option replaced in EMBOSS 6.1.0 by -osizeopt. 268 """), 269 _Option(["-osizeopt", "osizeopt"], ["input"], None, 0, 270 """Optimum length of internal oligo. 271 272 Option added in EMBOSS 6.1.0, replaces -oligosize 273 """), 274 _Option(["-oligominsize","oligominsize"], ["input"], None, 0, 275 """Minimum length of internal oligo (OBSOLETE)."), 276 277 Option replaced in EMBOSS 6.1.0 by -ominsize. 278 """), 279 _Option(["-ominsize", "ominsize"], ["input"], None, 0, 280 """Minimum length of internal oligo." 281 282 Option added in EMBOSS 6.1.0, replaces -oligominsize 283 """), 284 _Option(["-oligomaxsize","oligomaxsize"], ["input"], None, 0, 285 """Maximum length of internal oligo (OBSOLETE). 286 287 Option replaced in EMBOSS 6.1.0 by -omaxsize. 288 """), 289 _Option(["-omaxsize", "omaxsize"], ["input"], None, 0, 290 """Maximum length of internal oligo. 291 292 Option added in EMBOSS 6.1.0, replaces -oligomaxsize 293 """), 294 #Oligo GC temperature: 295 _Option(["-oligotm","oligotm"], ["input"], None, 0, 296 """Optimum melting temperature of internal oligo (OBSOLETE). 297 298 Option replaced in EMBOSS 6.1.0 by -otmopt. 299 """), 300 _Option(["-otmopt", "otmopt"], ["input"], None, 0, 301 """Optimum melting temperature of internal oligo. 302 303 Option added in EMBOSS 6.1.0. 304 """), 305 _Option(["-oligomintm","oligomintm"], ["input"], None, 0, 306 """Minimum melting temperature of internal oligo (OBSOLETE). 307 308 Option replaced in EMBOSS 6.1.0 by -otmmin. 309 """), 310 _Option(["-otmmin", "otmmin"], ["input"], None, 0, 311 """Minimum melting temperature of internal oligo. 312 313 Option added in EMBOSS 6.1.0, replacing -oligomintm 314 """), 315 _Option(["-oligomaxtm","oligomaxtm"], ["input"], None, 0, 316 """Maximum melting temperature of internal oligo (OBSOLETE). 317 318 Option replaced in EMBOSS 6.1.0 by -otmmax. 319 """), 320 _Option(["-otmmax", "otmmax"], ["input"], None, 0, 321 """Maximum melting temperature of internal oligo. 322 323 Option added in EMBOSS 6.1.0, replacing -oligomaxtm 324 """), 325 #Oligo GC percent: 326 _Option(["-oligoogcpercent","oligoogcpercent"], ["input"], None, 0, 327 """Optimum GC% for internal oligo (OBSOLETE). 328 329 Option replaced in EMBOSS 6.1.0 by -ogcopt. 330 """), 331 _Option(["-ogcopt", "ogcopt"], ["input"], None, 0, 332 """Optimum GC% for internal oligo." 333 334 Option added in EMBOSS 6.1.0, replacing -oligoogcpercent 335 """), 336 _Option(["-oligomingc","oligomingc"], ["input"], None, 0, 337 """Minimum GC% for internal oligo (OBSOLETE). 338 339 Option replaced in EMBOSS 6.1.0 by -ogcmin. 340 """), 341 _Option(["-ogcmin", "ogcmin"], ["input"], None, 0, 342 """Minimum GC% for internal oligo. 343 344 Option added in EMBOSS 6.1.0, replacing -oligomingc 345 """), 346 _Option(["-oligomaxgc","oligomaxgc"], ["input"], None, 0, 347 """Maximum GC% for internal oligo. 348 349 Option replaced in EMBOSS 6.1.0 by -ogcmax 350 """), 351 _Option(["-ogcmax", "ogcmax"], ["input"], None, 0, 352 """Maximum GC% for internal oligo."), 353 354 Option added in EMBOSS 6.1.0, replacing -oligomaxgc 355 """), 356 #Oligo salt concentration: 357 _Option(["-oligosaltconc","oligosaltconc"], ["input"], None, 0, 358 """Millimolar concentration of salt in the hybridisation."), 359 360 Option replaced in EMBOSS 6.1.0 by -osaltconc 361 """), 362 _Option(["-osaltconc", "osaltconc"], ["input"], None, 0, 363 """Millimolar concentration of salt in the hybridisation."), 364 365 Option added in EMBOSS 6.1.0, replacing -oligosaltconc 366 """), 367 _Option(["-oligodnaconc","oligodnaconc"], ["input"], None, 0, 368 """Nanomolar concentration of internal oligo in the hybridisation. 369 370 Option replaced in EMBOSS 6.1.0 by -odnaconc 371 """), 372 _Option(["-odnaconc", "odnaconc"], ["input"], None, 0, 373 """Nanomolar concentration of internal oligo in the hybridisation. 374 375 Option added in EMBOSS 6.1.0, replacing -oligodnaconc 376 """), 377 #Oligo self complementarity 378 _Option(["-oligoselfany","oligoselfany"], ["input"], None, 0, 379 """Maximum allowable alignment score for self-complementarity (OBSOLETE). 380 381 Option replaced in EMBOSS 6.1.0 by -oanyself 382 """), 383 _Option(["-oanyself", "oanyself"], ["input"], None, 0, 384 """Maximum allowable alignment score for self-complementarity."), 385 386 Option added in EMBOSS 6.1.0, replacing -oligoselfany 387 """), 388 _Option(["-oligoselfend","oligoselfend"], ["input"], None, 0, 389 """Maximum allowable 3`-anchored global alignment score for " +\ 390 self-complementarity (OBSOLETE). 391 392 Option replaced in EMBOSS 6.1.0 by -oendself 393 """), 394 _Option(["-oendself", "oendself"], ["input"], None, 0, 395 """Max 3`-anchored self-complementarity global alignment score. 396 397 Option added in EMBOSS 6.1.0, replacing -oligoselfend 398 """), 399 _Option(["-oligomaxpolyx","oligomaxpolyx"], ["input"], None, 0, 400 """Maximum length of mononucleotide repeat in internal oligo (OBSOLETE). 401 402 Option replaced in EMBOSS 6.1.0 by -opolyxmax 403 """), 404 _Option(["-opolyxmax", "opolyxmax"], ["input"], None, 0, 405 """Maximum length of mononucleotide repeat in internal oligo."), 406 407 Option added in EMBOSS 6.1.0, replacing -oligomaxpolyx 408 """), 409 _Option(["-mispriminglibraryfile","mispriminglibraryfile"], ["input"], None, 0, 410 "File containing library of sequences to avoid amplifying"), 411 _Option(["-maxmispriming","maxmispriming"], ["input"], None, 0, 412 "Maximum allowed similarity of primers to sequences in " +\ 413 "library specified by -mispriminglibrary"), 414 _Option(["-oligomaxmishyb","oligomaxmishyb"], ["input"], None, 0, 415 """Maximum alignment score for hybridisation of internal oligo to 416 library specified by -oligomishyblibraryfile (OBSOLETE). 417 418 Option replaced in EMBOSS 6.1.0 by -omishybmax 419 """), 420 _Option(["-omishybmax", "omishybmax"], ["input"], None, 0, 421 """Maximum alignment score for hybridisation of internal oligo to 422 library specified by -mishyblibraryfile. 423 424 Option added in EMBOSS 6.1.0, replacing -oligomaxmishyb 425 """), 426 _Option(["-oligomishyblibraryfile", "oligomishyblibraryfile"], 427 ["input"], None, 0, 428 """Library file of seqs to avoid internal oligo hybridisation (OBSOLETE). 429 430 Option replaced in EMBOSS 6.1.0 by -mishyblibraryfile 431 """), 432 _Option(["-mishyblibraryfile", "mishyblibraryfile"], ["input"], None, 0, 433 """Library file of seqs to avoid internal oligo hybridisation. 434 435 Option added in EMBOSS 6.1.0, replacing -oligomishyblibraryfile 436 """), 437 _Option(["-explainflag","explainflag"], ["input"], None, 0, 438 "Produce output tags with eprimer3 statistics"), 439 ] 440 _EmbossCommandLine.__init__(self, cmd, **kwargs)
441 442
443 -class PrimerSearchCommandline(_EmbossCommandLine):
444 """Commandline object for the primersearch program from EMBOSS. 445 """
446 - def __init__(self, cmd="primersearch", **kwargs):
447 self.parameters = \ 448 [_Option(["-seqall","-sequences","sequences","seqall"], ["input"], 449 None, 1, "Sequence to look for the primer pairs in."), 450 #When this wrapper was written primersearch used -sequences 451 #as the argument name. Since at least EMBOSS 5.0 (and 452 #perhaps earlier) this has been -seqall instead. 453 _Option(["-infile","-primers","primers","infile"], ["input", "file"], 454 None, 1, "File containing the primer pairs to search for."), 455 #When this wrapper was written primersearch used -primers 456 #as the argument name. Since at least EMBOSS 5.0 (and 457 #perhaps earlier) this has been -infile instead. 458 _Option(["-mismatchpercent","mismatchpercent"], ["input"], None, 1, 459 "Allowed percentage mismatch (any integer value, default 0)."), 460 _Option(["-snucleotide","snucleotide"], ["input"], None, 0, 461 "Sequences are nucleotide (boolean)"), 462 _Option(["-sprotein","sprotein"], ["input"], None, 0, 463 "Sequences are protein (boolean)"), 464 ] 465 _EmbossCommandLine.__init__(self, cmd, **kwargs)
466 467
468 -class EProtDistCommandline(_EmbossCommandLine):
469 """Commandline object for the eprotdist program from EMBOSS (DEPRECATED). 470 471 This is an EMBOSS wrapper around protdist from PHYLIP. 472 473 It has been replaced by "fprotdist", see FProtDistCommandline. 474 """
475 - def __init__(self, cmd="eprotdist", **kwargs):
476 import warnings 477 import Bio 478 warnings.warn("Bio.Emboss.Application.EProtDistCommandline has been deprecated; please use 'fprotdist' instead (see FProtDistCommandline).", Bio.BiopythonDeprecationWarning) 479 self.parameters = \ 480 [_Option(["-msf","msf"], ["input"], None, 1, 481 "File containing sequences"), 482 _Option(["-method","method"], ["input"], None, 1, 483 "Choose the method to use"), 484 _Option(["-categ","categ"], ["input"], None, 0, 485 "Choose the category to use"), 486 _Option(["-gencode","gencode"], ["input"], None, 0, 487 "Which genetic code"), 488 _Option(["-prob","prob"], ["input"], None, 0, 489 "Prob change category (1.0=easy)"), 490 _Option(["-tranrate","tranrate"], ["input"], None, 0, 491 "Transition/transversion ratio"), 492 _Option(["-freqa","freqa"], ["input"], None, 0, 493 "Frequency for A"), 494 _Option(["-freqc","freqc"], ["input"], None, 0, 495 "Frequency for C"), 496 _Option(["-freqg","freqg"], ["input"], None, 0, 497 "Frequency for G"), 498 _Option(["-freqt","freqt"], ["input"], None, 0, 499 "Frequency for T"), 500 _Option(["-printdata","printdata"], ["input"], None, 0, 501 "Print out the data at start of run"), 502 _Option(["-progress","progress"], ["input"], None, 0, 503 "Print indications of progress of run"), 504 _Option(["-basefrequency","basefrequency"], ["input"], None, 0, 505 "Use empirical base frequencies")] 506 _EmbossCommandLine.__init__(self, cmd, **kwargs)
507 508
509 -class ENeighborCommandline(_EmbossCommandLine):
510 """Commandline object for the eneighbor program from EMBOSS (DEPRECATED). 511 512 This is an EMBOSS wrapper around neighbor from PHYLIP. 513 514 It has been replaced by "fneighbor", see FNeighborCommandline. 515 """
516 - def __init__(self, cmd="eneighbor", **kwargs):
517 import warnings 518 import Bio 519 warnings.warn("Bio.Emboss.Application.ENeighborCommandline has been deprecated; please use 'fneighbor' instead (see FNeighborCommandline).", Bio.BiopythonDeprecationWarning) 520 self.parameters = \ 521 [_Option(["-infile","infile"], ["input"], None, 1, 522 "infile value"), 523 _Option(["-trout","trout"], ["input"], None, 1, 524 "Create a tree file"), 525 _Option(["-treefile","treefile"], ["input"], None, 1, 526 "Tree file name"), 527 _Option(["-nj","nj"], ["input"], None, 1, 528 "Neighbor-joining"), 529 _Option(["-noog","noog"], ["input"], None, 1, 530 "Outgroup root"), 531 _Option(["-outgnum","outgnum"], ["input"], None, 0, 532 "number of the outgroup"), 533 _Option(["-randseed","randseed"], ["input"], None, 0, 534 "Random number seed (must be odd)"), 535 _Option(["-datasets","datasets"], ["input"], None, 0, 536 "How many data sets"), 537 _Option(["-drawtree","drawtree"], ["input"], None, 0, 538 "Draw tree"), 539 _Option(["-lt","lt"], ["input"], None, 0, 540 "Lower-triangular data matrix"), 541 _Option(["-ut","ut"], ["input"], None, 0, 542 "Upper-triangular data matrix"), 543 _Option(["-sr","sr"], ["input"], None, 0, 544 "Subreplicates"), 545 _Option(["-random","random"], ["input"], None, 0, 546 "Randomize input order of species"), 547 _Option(["-multsets","multsets"], ["input"], None, 0, 548 "Analyze multiple data sets"), 549 _Option(["-printdata","printdata"], ["input"], None, 0, 550 "Print out the data at start of run"), 551 _Option(["-progress","progress"], ["input"], None, 0, 552 "Print indications of progress of run")] 553 _EmbossCommandLine.__init__(self, cmd, **kwargs)
554 555
556 -class EProtParsCommandline(_EmbossCommandLine):
557 """Commandline object for the eprotpars program from EMBOSS (DEPRECATED). 558 559 This is an EMBOSS wrapper around protpars from PHYLIP. 560 561 It has been replaced by "fprotpars", see FProtParsCommandline. 562 """
563 - def __init__(self, cmd="eprotpars", **kwargs):
564 import warnings 565 import Bio 566 warnings.warn("Bio.Emboss.Application.EProtParsCommandline has been deprecated; please use 'fprotpars' instead (see FProtParsCommandline).", Bio.BiopythonDeprecationWarning) 567 self.parameters = \ 568 [_Option(["-msf","msf"], ["input", "file"], None, 1, 569 "Sequences file to be read in"), 570 _Option(["-besttree","besttree"], ["input"], None, 0, 571 "Search for the best tree"), 572 _Option(["-random","random"], ["input"], None, 0, 573 "Randomize input order of species"), 574 _Option(["-norandom","norandom"], ["input"], None, 0, 575 "Do not randomize input order of species"), 576 _Option(["-randseed","randseed"], ["input"], None, 0, 577 "Random number seed (must be odd)"), 578 _Option(["-randtimes","randtimes"], ["input"], None, 0, 579 "How many times to randomize"), 580 _Option(["-og","og"], ["input"], None, 0, 581 "Use an outgroup root"), 582 _Option(["-noog","noog"], ["input"], None, 0, 583 "Do not use an outgroup root"), 584 _Option(["-outgnum","outgnum"], ["input"], None, 0, 585 "Number of the outgroup"), 586 _Option(["-thresh","thresh"], ["input"], None, 0, 587 "Use Threshold parsimony"), 588 _Option(["-valthresh","valthresh"], ["input"], None, 0, 589 "threshold value"), 590 _Option(["-printdata","printdata"], ["input"], None, 0, 591 "Print out the data at start of run"), 592 _Option(["-progress","progress"], ["input"], None, 0, 593 "Print indications of progress of run"), 594 _Option(["-steps","steps"], ["input"], None, 0, 595 "Print out steps in each site"), 596 _Option(["-seqatnodes","seqatnodes"], ["input"], None, 0, 597 "Print sequences at all nodes of tree"), 598 _Option(["-drawtree","drawtree"], ["input"], None, 0, 599 "Draw tree"), 600 _Option(["-trout","trout"], ["input"], None, 0, 601 "Create a tree file"), 602 _Option(["-notrout","notrout"], ["input"], None, 0, 603 "Do not create a tree file"), 604 _Option(["-treefile","treefile"], ["output", "file"], None, 0, 605 "Output treefile name")] 606 _EmbossCommandLine.__init__(self, cmd, **kwargs)
607 608
609 -class EConsenseCommandline(_EmbossCommandLine):
610 """Commandline object for the econsense program from EMBOSS (DEPRECATED). 611 612 This is an EMBOSS wrapper around consense from PHYLIP. 613 614 It has been replaced by "fconsense", see FConsenseCommandline. 615 """
616 - def __init__(self, cmd="econsense", **kwargs):
617 import warnings 618 import Bio 619 warnings.warn("Bio.Emboss.Application.EConsenseCommandline has been deprecated; please use 'fconsense' instead (see FConsenseCommandline).", Bio.BiopythonDeprecationWarning) 620 self.parameters = \ 621 [_Option(["-infile","infile"], ["input", "file"], None, 1, 622 "file to read in (New Hampshire standard form)"), 623 _Option(["-notrout","notrout"], ["input"], None, 0, 624 "Do not create a tree file"), 625 _Option(["-trout","trout"], ["input"], None, 0, 626 "Create a tree file"), 627 _Option(["-treefile","treefile"], ["output", "file"], None, 0, 628 "tree file name"), 629 _Option(["-noog","noog"], ["input"], None, 0, 630 "Do not use an outgroup"), 631 _Option(["-og","og"], ["input"], None, 0, 632 "Use an outgroup"), 633 _Option(["-outgnum","outgnum"], ["input"], None, 0, 634 "number of the outgroup"), 635 _Option(["-nodrawtree","nodrawtree"], ["input"], None, 0, 636 "Do not draw a tree"), 637 _Option(["-drawtree","drawtree"], ["input"], None, 0, 638 "Draw tree"), 639 _Option(["-root","root"], ["input"], None, 0, 640 "Trees to be treated as Rooted"), 641 _Option(["-progress","progress"], ["input"], None, 0, 642 "Print indications of the progress of run"), 643 _Option(["-noprintsets","noprintsets"], ["input"], None, 0, 644 "Do not print out the sets of species"), 645 _Option(["-printsets","printsets"], ["input"], None, 0, 646 "Print out the sets of species")] 647 _EmbossCommandLine.__init__(self, cmd, **kwargs)
648 649
650 -class ESeqBootCommandline(_EmbossCommandLine):
651 """Commandline object for the eseqboot program from EMBOSS (DEPRECATED). 652 653 This is an EMBOSS wrapper around seqboot from PHYLIP. 654 655 It has been replaced by "fseqboot", see FSeqBootCommandline. 656 """
657 - def __init__(self, cmd="eseqboot", **kwargs):
658 import warnings 659 import Bio 660 warnings.warn("Bio.Emboss.Application.ESeqBootCommandline has been deprecated; please use 'fseqboot' instead (see FSeqBootCommandline).", Bio.BiopythonDeprecationWarning) 661 self.parameters = \ 662 [_Option(["-datafile","datafile"], ["input", "file"], None, 1, 663 "Input file"), 664 _Option(["-randseed","randseed"], ["input"], None, 1, 665 "Random number seed (must be odd)"), 666 _Option(["-method","method"], ["input"], None, 1, 667 "Choose the method"), 668 _Option(["-test","test"], ["input"], None, 1, 669 "Choose test"), 670 _Option(["-reps","reps"], ["input"], None, 1, 671 "How many replicates"), 672 _Option(["-inter","inter"], ["input"], None, 0, 673 "Interleaved input"), 674 _Option(["-enzymes","enzymes"], ["input"], None, 0, 675 "Present in input file"), 676 _Option(["-all","all"], ["input"], None, 0, 677 "All alleles present at each locus"), 678 _Option(["-printdata","printdata"], ["input"], None, 0, 679 "Print out the data at start of run"), 680 _Option(["-progress","progress"], ["input"], None, 0, 681 "Print indications of progress of run")] 682 _EmbossCommandLine.__init__(self, cmd, **kwargs)
683 684
685 -class FDNADistCommandline(_EmbossCommandLine):
686 """Commandline object for the fdnadist program from EMBOSS. 687 688 fdnadist is an EMBOSS wrapper for the PHYLIP program dnadist for 689 calulating distance matrices from DNA sequence files. 690 """
691 - def __init__(self, cmd = "fdnadist", **kwargs):
692 self.parameters = \ 693 [_Option(["-sequence", "sequence"], ["input"], None, 1, 694 "seq file to use (phylip)"), 695 _Option(["-method", "method"], ["input"], None, 1, 696 "sub. model [f,k,j,l,s]"), 697 _Option(["-gamma", "gamma"], ["input"], None, 0, 698 "gamma [g, i,n]"), 699 _Option(["-ncategories", "ncategories"], ["input"], None, 0, 700 "number of rate catergories (1-9)"), 701 _Option(["-rate", "rate"], ["input"], None, 0, 702 "rate for each category"), 703 _Option(["-categories","categories"], ["input"], None, 0, 704 "File of substitution rate categories"), 705 _Option(["-weights", "weights"], ["input"], None, 0, 706 "weights file"), 707 _Option(["-gammacoefficient", "gammacoefficient"], ["input"], None, 0, 708 "value for gamma (> 0.001)"), 709 _Option(["-invarfrac", "invarfrac"], ["input"], None, 0, 710 "proportoin of invariant sites"), 711 _Option(["-ttratio", "ttratio"], ["input"], None, 0, 712 "ts/tv ratio"), 713 _Option(["-freqsfrom", "freqsfrom"], ["input"], None, 0, 714 "use emprical base freqs"), 715 _Option(["-basefreq", "basefreq"], ["input"], None, 0, 716 "specify basefreqs"), 717 _Option(["-lower", "lower"], ["input"], None, 0, 718 "lower triangle matrix (y/N)")] 719 _EmbossCommandLine.__init__(self, cmd, **kwargs)
720 721
722 -class FTreeDistCommandline(_EmbossCommandLine):
723 """Commandline object for the ftreedist program from EMBOSS. 724 725 ftreedist is an EMBOSS wrapper for the PHYLIP program treedist used for 726 calulating distance measures between phylogentic trees. 727 """
728 - def __init__(self, cmd = "ftreedist", **kwargs):
729 self.parameters = \ 730 [_Option(["-intreefile", "intreefile"], ["input"], None, 1, 731 "tree file to score (phylip)"), 732 _Option(["-dtype", "dtype"], ["input"], None, 0, 733 "distance type ([S]ymetric, [b]ranch score)"), 734 _Option(["-pairing", "pairing"], ["input"], None, 0, 735 "tree pairing method ([A]djacent pairs, all [p]ossible pairs)"), 736 _Option(["-style", "style"], ["input"], None, 0, 737 "output style - [V]erbose, [f]ill, [s]parse"), 738 _Option(["-noroot", "noroot"], ["input"], None, 0, 739 "treat trees as rooted [N/y]"), 740 _Option(["-outgrno", "outgrno"], ["input"], None, 0, 741 "which taxon to root the trees with (starts from 0)")] 742 _EmbossCommandLine.__init__(self, cmd, **kwargs)
743 744
745 -class FNeighborCommandline(_EmbossCommandLine):
746 """Commandline object for the fneighbor program from EMBOSS. 747 748 fneighbor is an EMBOSS wrapper for the PHYLIP program neighbor used for 749 calulating neighbor-joining or UPGMA trees from distance matrices. 750 """
751 - def __init__(self, cmd = "fneighbor", **kwargs):
752 self.parameters = \ 753 [_Option(["-datafile", "datafile"], ["input"], None, 1, 754 "dist file to use (phylip)"), 755 _Option(["-matrixtype", "matrixtype"], ["input"], None, 0, 756 "is martrix [S]quare pr [u]pper or [l]ower"), 757 _Option(["-treetype", "treetype"], ["input"], None, 0, 758 "nj or UPGMA tree (n/u)"), 759 _Option(["-outgrno","outgrno" ], ["input"], None, 0, 760 "taxon to use as OG"), 761 _Option(["-jumble", "jumble"], ["input"], None, 0, 762 "randommise input order (Y/n)"), 763 _Option(["-seed", "seed"], ["input"], None, 0, 764 "provide a random seed"), 765 _Option(["-trout", "trout"], ["input"], None, 0, 766 "write tree (Y/n)"), 767 _Option(["-outtreefile", "outtreefile"], ["input"], None, 0, 768 "filename for output tree"), 769 _Option(["-progress", "progress"], ["input"], None, 0, 770 "print progress (Y/n)"), 771 _Option(["-treeprint", "treeprint"], ["input"], None, 0, 772 "print tree (Y/n)")] 773 _EmbossCommandLine.__init__(self, cmd, **kwargs)
774 775
776 -class FSeqBootCommandline(_EmbossCommandLine):
777 """Commandline object for the fseqboot program from EMBOSS. 778 779 fseqboot is an EMBOSS wrapper for the PHYLIP program seqboot used to 780 pseudo-sample alignment files. 781 """
782 - def __init__(self, cmd = "fseqboot", **kwargs):
783 self.parameters = \ 784 [_Option(["-sequence", "sequence"], ["input"], None, 1, 785 "seq file to sample (phylip)"), 786 _Option(["-categories", "catergories"], ["input"], None, 0, 787 "file of input categories"), 788 _Option(["-weights", "weights"], ["input"], None, 0, 789 " weights file"), 790 _Option(["-test", "test"], ["input"], None, 0, 791 "specify operation, default is bootstrap"), 792 _Option(["-regular", "regular"], ["input"], None, 0, 793 "absolute number to resample"), 794 _Option(["-fracsample", "fracsample"], ["input"], None, 0, 795 "fraction to resample"), 796 _Option(["-rewriteformat", "rewriteformat"], ["input"], None, 0, 797 "output format ([P]hyilp, [n]exus, [x]ml"), 798 _Option(["-seqtype", "seqtype"], ["input"], None, 0, 799 "output format ([D]na, [p]rotein, [r]na"), 800 _Option(["-blocksize", "blocksize"], ["input"], None, 0, 801 "print progress (Y/n)"), 802 _Option(["-reps", "reps"], ["input"], None, 0, 803 "how many replicates, defaults to 100)"), 804 _Option(["-justweights", "jusweights"], ["input"], None, 0, 805 "what to write out [D]atasets of just [w]eights"), 806 _Option(["-seed", "seed"], ["input"], None, 0, 807 "specify random seed"), 808 _Option(["-dotdiff", "dotdiff"], ["input"], None, 0, 809 "Use dot-differencing? [Y/n]"),] 810 _EmbossCommandLine.__init__(self, cmd, **kwargs)
811 812
813 -class FDNAParsCommandline(_EmbossCommandLine):
814 """Commandline object for the fdnapars program from EMBOSS. 815 816 fdnapars is an EMBOSS version of the PHYLIP program dnapars, for 817 estimating trees from DNA sequences using parsiomny. Calling this command 818 without providing a value for the option "-intreefile" will invoke 819 "interactive mode" (and as a result fail if called with subprocess) if 820 "-auto" is not set to true. 821 """
822 - def __init__(self, cmd = "fdnapars", **kwargs):
823 self.parameters = \ 824 [_Option(["-sequence", "sequence"], ["input"], None, 1, 825 "seq file to use (phylip)"), 826 _Option(["-intreefile", "intreefile"], ["input"], None, 0, 827 "Phylip tree file"), 828 _Option(["-weights", "weights"], ["input"], None, 0, 829 "weights file"), 830 _Option(["-maxtrees", "maxtrees"], ["input"], None, 0, 831 "max trees to save during run"), 832 _Option(["-thorough", "thorough"], ["input"], None, 0, 833 "more thorough search (Y/n)"), 834 _Option(["-rearrange", "rearrange"], ["input"], None, 0, 835 "Rearrange on jsut 1 best tree (Y/n)"), 836 _Option(["-transversion", "transversion"], ["input"], None, 0, 837 "Use tranversion parsimony (y/N)"), 838 _Option(["-njumble", "njumble"], ["input"], None, 0, 839 "number of times to randomise input order (default is 0)"), 840 _Option(["-seed", "seed"], ["input"], None, 0, 841 "provde random seed"), 842 _Option(["-outgrno", "outgrno"], ["input"], None, 0, 843 "Specify outgroup"), 844 _Option(["-thresh", "thresh"], ["input"], None, 0, 845 "Use threshold parsimony (y/N)"), 846 _Option(["-threshold", "threshold"], ["input"], None, 0, 847 "Threshold value"), 848 _Option(["-trout", "trout"], ["input"], None, 0, 849 "Write trees to file (Y/n)"), 850 _Option(["-outtreefile", "outtreefile"], ["input"], None, 0, 851 "filename for output tree"), 852 _Option(["-dotdiff", "dotdiff"], ["input"], None, 0, 853 "Use dot-differencing? [Y/n]")] 854 _EmbossCommandLine.__init__(self, cmd, **kwargs)
855 856
857 -class FProtParsCommandline(_EmbossCommandLine):
858 """Commandline object for the fdnapars program from EMBOSS. 859 860 fprotpars is an EMBOSS version of the PHYLIP program protpars, for 861 estimating trees from protein sequences using parsiomny. Calling this 862 command without providing a value for the option "-intreefile" will invoke 863 "interactive mode" (and as a result fail if called with subprocess) if 864 "-auto" is not set to true. 865 """
866 - def __init__(self, cmd = "fprotpars", **kwargs):
867 self.parameters = \ 868 [_Option(["-sequence", "sequence"], ["input"], None, 1, 869 "seq file to use (phylip)"), 870 _Option(["-intreefile", "intreefile"], ["input"], None, 0, 871 "Phylip tree file to score"), 872 _Option(["-outtreefile", "outtreefile"], ["input"], None, 1, 873 "phylip tree output file"), 874 _Option(["-weights", "weights"], ["input"], None, 0, 875 "weights file"), 876 _Option(["-whichcode", "whichcode"], ["input"], None, 0, 877 "which genetic code, [U,M,V,F,Y]]"), 878 _Option(["-njumble", "njumble"], ["input"], None, 0, 879 "number of times to randomise input order (default is 0)"), 880 _Option(["-seed", "seed"], ["input"], None, 0, 881 "provde random seed"), 882 _Option(["-outgrno", "outgrno"], ["input"], None, 0, 883 "Specify outgroup"), 884 _Option(["-thresh", "thresh"], ["input"], None, 0, 885 "Use threshold parsimony (y/N)"), 886 _Option(["-threshold", "threshold"], ["input"], None, 0, 887 "Threshold value"), 888 _Option(["-trout", "trout"], ["input"], None, 0, 889 "Write trees to file (Y/n)"), 890 _Option(["-dotdiff", "dotdiff"], ["input"], None, 0, 891 "Use dot-differencing? [Y/n]")] 892 _EmbossCommandLine.__init__(self, cmd, **kwargs)
893 894
895 -class FProtDistCommandline(_EmbossCommandLine):
896 """Commandline object for the fprotdist program from EMBOSS. 897 898 fprotdist is an EMBOSS wrapper for the PHYLIP program protdist used to 899 estimate trees from protein sequences using parsimony 900 """
901 - def __init__(self, cmd = "fprotdist", **kwargs):
902 self.parameters = \ 903 [_Option(["-sequence", "sequence"], ["input"], None, 1, 904 "seq file to use (phylip)"), 905 _Option(["-ncategories", "ncategories"], ["input"], None, 0, 906 "number of rate catergories (1-9)"), 907 _Option(["-rate", "rate"], ["input"], None, 0, 908 "rate for each category"), 909 _Option(["-catergories","catergories"], ["input"], None, 0, 910 "file of rates"), 911 _Option(["-weights", "weights"], ["input"], None, 0, 912 "weights file"), 913 _Option(["-method", "method"], ["input"], None, 0, 914 "sub. model [j,h,d,k,s,c]"), 915 _Option(["-gamma", "gamma"], ["input"], None, 0, 916 "gamma [g, i,c]"), 917 _Option(["-gammacoefficient", "gammacoefficient"], ["input"], None, 0, 918 "value for gamma (> 0.001)"), 919 _Option(["-invarcoefficient", "invarcoefficient"], ["input"], None, 0, 920 "float for variation of substitution rate among sites"), 921 _Option(["-aacateg", "aacateg"], ["input"], None, 0, 922 "Choose the category to use [G,C,H]"), 923 _Option(["-whichcode", "whichcode"], ["input"], None, 0, 924 "genetic code [c,m,v,f,y]"), 925 _Option(["-ease", "ease"], ["input"], None, 0, 926 "Pob change catergory (float between -0 and 1)"), 927 _Option(["-ttratio", "ttratio"], ["input"], None, 0, 928 "Transition/transversion ratio (0-1)"), 929 _Option(["-basefreq", "basefreq"], ["input"], None, 0, 930 "DNA base frequencies (space seperated list)")] 931 _EmbossCommandLine.__init__(self, cmd, **kwargs)
932 933
934 -class FConsenseCommandline(_EmbossCommandLine):
935 """Commandline object for the fconsense program from EMBOSS. 936 937 fconsense is an EMBOSS wrapper for the PHYLIP program consense used to 938 calculate consensus trees. 939 """
940 - def __init__(self, cmd = "fconsense", **kwargs):
941 self.parameters = \ 942 [_Option(["-intreefile", "intreefile"], ["input"], None, 1, 943 "file with phylip trees to make consensus from"), 944 _Option(["-method", "method"], ["input"], None, 0, 945 "consensus method [s, mr, MRE, ml]"), 946 _Option(["-mlfrac", "mlfrac"], ["input"], None, 0, 947 "cut-off freq for a branch to appear in consensus (0.5-1.0)"), 948 _Option(["-root", "root"], ["input"], None, 0, 949 "treat trees as rooted (YES, no)"), 950 _Option(["-outgrno", "outgrno"], ["input"], None, 0, 951 "OTU to use as outgroup (starts from 0)"), 952 _Option(["-trout", "trout"], ["input"], None, 0, 953 "treat trees as rooted (YES, no)"), 954 _Option(["-outtreefile", "outtreefile"], ["input"], None, 0, 955 "Phylip tree output file (optional)")] 956 _EmbossCommandLine.__init__(self, cmd, **kwargs)
957 958
959 -class WaterCommandline(_EmbossCommandLine):
960 """Commandline object for the water program from EMBOSS. 961 """
962 - def __init__(self, cmd="water", **kwargs):
963 self.parameters = \ 964 [_Option(["-asequence","asequence"], ["input", "file"], None, 1, 965 "First sequence to align"), 966 _Option(["-bsequence","bsequence"], ["input", "file"], None, 1, 967 "Second sequence to align"), 968 _Option(["-gapopen","gapopen"], ["input"], None, 1, 969 "Gap open penalty"), 970 _Option(["-gapextend","gapextend"], ["input"], None, 1, 971 "Gap extension penalty"), 972 _Option(["-datafile","datafile"], ["input", "file"], None, 0, 973 "Matrix file"), 974 _Option(["-similarity","similarity"], ["input"], None, 0, 975 "Display percent identity and similarity"), 976 _Option(["-snucleotide","snucleotide"], ["input"], None, 0, 977 "Sequences are nucleotide (boolean)"), 978 _Option(["-sprotein","sprotein"], ["input"], None, 0, 979 "Sequences are protein (boolean)"), 980 _Option(["-aformat","aformat"], ["input"], None, 0, 981 "Display output in a different specified output format")] 982 _EmbossCommandLine.__init__(self, cmd, **kwargs)
983 984
985 -class NeedleCommandline(_EmbossCommandLine):
986 """Commandline object for the needle program from EMBOSS. 987 """
988 - def __init__(self, cmd="needle", **kwargs):
989 self.parameters = \ 990 [_Option(["-asequence","asequence"], ["input", "file"], None, 1, 991 "First sequence to align"), 992 _Option(["-bsequence","bsequence"], ["input", "file"], None, 1, 993 "Second sequence to align"), 994 _Option(["-gapopen","gapopen"], ["input"], None, 1, 995 "Gap open penalty"), 996 _Option(["-gapextend","gapextend"], ["input"], None, 1, 997 "Gap extension penalty"), 998 _Option(["-datafile","datafile"], ["input", "file"], None, 0, 999 "Matrix file"), 1000 _Option(["-similarity","similarity"], ["input"], None, 0, 1001 "Display percent identity and similarity"), 1002 _Option(["-snucleotide","snucleotide"], ["input"], None, 0, 1003 "Sequences are nucleotide (boolean)"), 1004 _Option(["-sprotein","sprotein"], ["input"], None, 0, 1005 "Sequences are protein (boolean)"), 1006 _Option(["-aformat","aformat"], ["input"], None, 0, 1007 "Display output in a different specified output format")] 1008 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1009 1010
1011 -class FuzznucCommandline(_EmbossCommandLine):
1012 """Commandline object for the fuzznuc program from EMBOSS. 1013 """
1014 - def __init__(self, cmd="fuzznuc", **kwargs):
1015 self.parameters = [ 1016 _Option(["-sequence","sequence"], ["input"], None, 1, 1017 "Sequence database USA"), 1018 _Option(["-pattern","pattern"], ["input"], None, 1, 1019 "Search pattern, using standard IUPAC one-letter codes"), 1020 _Option(["-mismatch","mismatch"], ["input"], None, 1, 1021 "Number of mismatches"), 1022 _Option(["-complement","complement"], ["input"], None, 0, 1023 "Search complementary strand"), 1024 _Option(["-rformat","rformat"], ["input"], None, 0, 1025 "Specify the report format to output in.")] 1026 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1027 1028
1029 -class Est2GenomeCommandline(_EmbossCommandLine):
1030 """Commandline object for the est2genome program from EMBOSS. 1031 """
1032 - def __init__(self, cmd="est2genome", **kwargs):
1033 self.parameters = [ 1034 _Option(["-est","est"], ["input"], None, 1, 1035 "EST sequence(s)"), 1036 _Option(["-genome","genome"], ["input"], None, 1, 1037 "Genomic sequence"), 1038 _Option(["-match","match"], ["input"], None, 0, 1039 "Score for matching two bases"), 1040 _Option(["-mismatch","mismatch"], ["input"], None, 0, 1041 "Cost for mismatching two bases"), 1042 _Option(["-gappenalty","gappenalty"], ["input"], None, 0, 1043 "Cost for deleting a single base in either sequence, " + \ 1044 "excluding introns"), 1045 _Option(["-intronpenalty","intronpenalty"], ["input"], None, 0, 1046 "Cost for an intron, independent of length."), 1047 _Option(["-splicepenalty","splicepenalty"], ["input"], None, 0, 1048 "Cost for an intron, independent of length " + \ 1049 "and starting/ending on donor-acceptor sites"), 1050 _Option(["-minscore","minscore"], ["input"], None, 0, 1051 "Exclude alignments with scores below this threshold score."), 1052 _Option(["-reverse","reverse"], ["input"], None, 0, 1053 "Reverse the orientation of the EST sequence"), 1054 _Option(["-splice","splice"], ["input"], None, 0, 1055 "Use donor and acceptor splice sites."), 1056 _Option(["-mode","mode"], ["input"], None, 0, 1057 "This determines the comparion mode. 'both', 'forward' " + \ 1058 "'reverse'"), 1059 _Option(["-best","best"], ["input"], None, 0, 1060 "You can print out all comparisons instead of just the best"), 1061 _Option(["-space","space"], ["input"], None, 0, 1062 "for linear-space recursion."), 1063 _Option(["-shuffle","shuffle"], ["input"], None, 0, 1064 "Shuffle"), 1065 _Option(["-seed","seed"], ["input"], None, 0, 1066 "Random number seed"), 1067 _Option(["-align","align"], ["input"], None, 0, 1068 "Show the alignment."), 1069 _Option(["-width","width"], ["input"], None, 0, 1070 "Alignment width") 1071 ] 1072 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1073 1074
1075 -class ETandemCommandline(_EmbossCommandLine):
1076 """Commandline object for the etandem program from EMBOSS. 1077 """
1078 - def __init__(self, cmd="etandem", **kwargs):
1079 self.parameters = [ 1080 _Option(["-sequence","sequence"], ["input", "file"], None, 1, 1081 "Sequence"), 1082 _Option(["-minrepeat","minrepeat"], ["input"], None, 1, 1083 "Minimum repeat size"), 1084 _Option(["-maxrepeat","maxrepeat"], ["input"], None, 1, 1085 "Maximum repeat size"), 1086 _Option(["-threshold","threshold"], ["input"], None, 0, 1087 "Threshold score"), 1088 _Option(["-mismatch","mismatch"], ["input"], None, 0, 1089 "Allow N as a mismatch"), 1090 _Option(["-uniform","uniform"], ["input"], None, 0, 1091 "Allow uniform consensus"), 1092 _Option(["-rformat","rformat"], ["output"], None, 0, 1093 "Output report format")] 1094 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1095 1096
1097 -class EInvertedCommandline(_EmbossCommandLine):
1098 """Commandline object for the einverted program from EMBOSS. 1099 """
1100 - def __init__(self, cmd="einverted", **kwargs):
1101 self.parameters = [ 1102 _Option(["-sequence","sequence"], ["input", "file"], None, 1, 1103 "Sequence"), 1104 _Option(["-gap","gap"], ["input", "file"], None, 1, 1105 "Gap penalty"), 1106 _Option(["-threshold","threshold"], ["input"], None, 1, 1107 "Minimum score threshold"), 1108 _Option(["-match","match"], ["input"], None, 1, 1109 "Match score"), 1110 _Option(["-mismatch","mismatch"], ["input"], None, 1, 1111 "Mismatch score"), 1112 _Option(["-maxrepeat","maxrepeat"], ["input"], None, 0, 1113 "Maximum separation between the start and end of repeat"), 1114 ] 1115 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1116 1117
1118 -class PalindromeCommandline(_EmbossCommandLine):
1119 """Commandline object for the palindrome program from EMBOSS. 1120 """
1121 - def __init__(self, cmd="palindrome", **kwargs):
1122 self.parameters = [ 1123 _Option(["-sequence","sequence"], ["input", "file"], None, 1, 1124 "Sequence"), 1125 _Option(["-minpallen","minpallen"], ["input"], None, 1, 1126 "Minimum palindrome length"), 1127 _Option(["-maxpallen","maxpallen"], ["input"], None, 1, 1128 "Maximum palindrome length"), 1129 _Option(["-gaplimit","gaplimit"], ["input"], None, 1, 1130 "Maximum gap between repeats"), 1131 _Option(["-nummismatches","nummismatches"], ["input"], None, 1, 1132 "Number of mismatches allowed"), 1133 _Option(["-overlap","overlap"], ["input"], None, 1, 1134 "Report overlapping matches"), 1135 ] 1136 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1137 1138
1139 -class TranalignCommandline(_EmbossCommandLine):
1140 """Commandline object for the tranalign program from EMBOSS. 1141 """
1142 - def __init__(self, cmd="tranalign", **kwargs):
1143 self.parameters = [ 1144 _Option(["-asequence","asequence"], ["input", "file"], None, 1, 1145 "Nucleotide sequences to be aligned."), 1146 _Option(["-bsequence","bsequence"], ["input", "file"], None, 1, 1147 "Protein sequence alignment"), 1148 _Option(["-outseq","outseq"], ["output", "file"], None, 1, 1149 "Output sequence file."), 1150 _Option(["-table","table"], ["input"], None, 0, 1151 "Code to use")] 1152 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1153 1154
1155 -class DiffseqCommandline(_EmbossCommandLine):
1156 """Commandline object for the diffseq program from EMBOSS. 1157 """
1158 - def __init__(self, cmd="diffseq", **kwargs):
1159 self.parameters = [ 1160 _Option(["-asequence","asequence"], ["input", "file"], None, 1, 1161 "First sequence to compare"), 1162 _Option(["-bsequence","bsequence"], ["input", "file"], None, 1, 1163 "Second sequence to compare"), 1164 _Option(["-wordsize","wordsize"], ["input"], None, 1, 1165 "Word size to use for comparisons (10 default)"), 1166 _Option(["-aoutfeat","aoutfeat"], ["output", "file"], None, 1, 1167 "File for output of first sequence's features"), 1168 _Option(["-boutfeat","boutfeat"], ["output", "file"], None, 1, 1169 "File for output of second sequence's features"), 1170 _Option(["-rformat","rformat"], ["output"], None, 0, 1171 "Output report file format") 1172 ] 1173 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1174 1175
1176 -class IepCommandline(_EmbossCommandLine):
1177 """Commandline for EMBOSS iep: calculated isoelectric point and charge. 1178 """
1179 - def __init__(self, cmd="iep", **kwargs):
1180 self.parameters = [ 1181 _Option(["-sequence","sequence"], ["input", "file"], None, 1, 1182 "Protein sequence(s) filename"), 1183 _Option(["-amino","amino"], ["input"], None, 0), 1184 _Option(["-lysinemodified","lysinemodified"], ["input"], None, 0), 1185 _Option(["-disulphides","disulphides"], ["input"], None, 0), 1186 _Option(["-notermini","notermini"], ["input"], None, 0), 1187 ] 1188 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1189 1190 1191 #seqret uses -outseq, not -outfile, so use the base class:
1192 -class SeqretCommandline(_EmbossMinimalCommandLine):
1193 """Commandline object for the seqret program from EMBOSS. 1194 1195 This tool allows you to interconvert between different sequence file 1196 formats (e.g. GenBank to FASTA). Combining Biopython's Bio.SeqIO module 1197 with seqret using a suitable intermediate file format can allow you to 1198 read/write to an even wider range of file formats. 1199 1200 This wrapper currently only supports the core functionality, things like 1201 feature tables (in EMBOSS 6.1.0 onwards) are not yet included. 1202 """
1203 - def __init__(self, cmd="seqret", **kwargs):
1204 self.parameters = [ 1205 _Option(["-sequence","sequence"], ["input", "file"], None, 0, 1206 "Input sequence(s) filename"), 1207 _Option(["-outseq","outseq"], ["output", "file"], None, 0, 1208 "Output sequence file."), 1209 _Option(["-sformat","sformat"], ["input"], None, 0, 1210 "Input sequence(s) format (e.g. fasta, genbank)"), 1211 _Option(["-osformat","osformat"], ["input"], None, 0, 1212 "Output sequence(s) format (e.g. fasta, genbank)"), 1213 ] 1214 _EmbossMinimalCommandLine.__init__(self, cmd, **kwargs)
1215
1216 - def _validate(self):
1217 #Check the outfile, filter, or stdout option has been set. 1218 #We can't simply do this via the required flag for the outfile 1219 #output - this seems the simplest solution. 1220 if not (self.outseq or self.filter or self.stdout): 1221 raise ValueError("You must either set outfile (output filename), " 1222 "or enable filter or stdout (output to stdout).") 1223 if not (self.sequence or self.filter or self.stdint): 1224 raise ValueError("You must either set sequence (input filename), " 1225 "or enable filter or stdin (input from stdin).") 1226 return _EmbossMinimalCommandLine._validate(self)
1227
1228 -class SeqmatchallCommandline(_EmbossCommandLine):
1229 """ Commandline object for the seqmatchall program from EMBOSS 1230 1231 e.g. 1232 >>> cline = SeqmatchallCommandline(sequence="opuntia.fasta", outfile="opuntia.txt") 1233 >>> cline.auto = True 1234 >>> cline.wordsize = 18 1235 >>> cline.aformat = "pair" 1236 >>> print cline 1237 seqmatchall -auto -outfile=opuntia.txt -sequence=opuntia.fasta -wordsize=18 -aformat=pair 1238 1239 """
1240 - def __init__(self, cmd="seqmatchall", **kwargs):
1241 self.parameters = [ 1242 _Option(["-sequence", "sequence"], ["input", "file"], 1243 None, 1, "Readable set of sequences"), 1244 _Option(["-wordsize", "wordsize"], ["input"], 1245 None, 0, "Word size (Integer 2 or more, default 4)"), 1246 _Option(["-aformat","aformat"], ["input"], None, 0, 1247 "Display output in a different specified output format"), 1248 ] 1249 _EmbossCommandLine.__init__(self, cmd, **kwargs)
1250
1251 -def _test():
1252 """Run the Bio.Emboss.Applications module doctests.""" 1253 import doctest 1254 doctest.testmod(verbose=1)
1255 1256 if __name__ == "__main__": 1257 #Run the doctests 1258 _test() 1259