annotate commons/launcher/MapClusterLauncher.py @ 18:94ab73e8a190

Uploaded
author m-zytnicki
date Mon, 29 Apr 2013 03:20:15 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
18
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
1 #!/usr/bin/env python
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
2
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
3 ##@file
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
4 # Launch MapProgramLauncher.py on several files in parallel on a cluster.
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
5
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
6
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
7 import os
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
8 import sys
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
9 import getopt
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
10 import exceptions
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
11
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
12 from pyRepet.launcher.AbstractClusterLauncher import *
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
13 from commons.launcher.MapProgramLauncher import MapProgramLauncher
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
14
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
15
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
16 class MapClusterLauncher( AbstractClusterLauncher ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
17 """
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
18 Launch Map on several files in parallel on a cluster.
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
19 """
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
20
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
21
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
22 def __init__( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
23 """
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
24 Constructor.
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
25 """
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
26 AbstractClusterLauncher.__init__( self )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
27 AbstractClusterLauncher.setAcronym( self, "Map" )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
28
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
29 self._cmdLineSpecificOptions = "s:m:O:e:"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
30
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
31 self._exeWrapper = "MapProgramLauncher.py"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
32 self._prgLauncher = None
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
33 self._prgLauncher = self.getProgramLauncherInstance()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
34
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
35
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
36 def getSpecificHelpAsString( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
37 """
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
38 Return the specific help as a string.
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
39 """
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
40 string = ""
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
41 string += "\nspecific options:"
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
42 string += "\n -s: size above which a gap is not penalized anymore (default='%i')" % ( self.getGapSize() )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
43 string += "\n -m: penalty for a mismatch (default='%i')" % ( self.getMismatchPenalty() )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
44 string += "\n -O: penalty for a gap openning (default='%i')" % ( self.getGapOpenPenalty() )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
45 string += "\n -e: penalty for a gap extension (default='%i')" % ( self.getGapExtendPenalty() )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
46 return string
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
47
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
48
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
49 def getGapSize( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
50 return self._prgLauncher.getGapSize()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
51
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
52
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
53 def getMismatchPenalty( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
54 return self._prgLauncher.getMismatchPenalty()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
55
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
56
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
57 def getGapOpenPenalty( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
58 return self._prgLauncher.getGapOpenPenalty()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
59
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
60
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
61 def getGapExtendPenalty( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
62 return self._prgLauncher.getGapExtendPenalty()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
63
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
64
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
65 def getProgramLauncherInstance( self ):
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
66 if self._prgLauncher == None:
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
67 self._prgLauncher = MapProgramLauncher()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
68 self._prgLauncher.setInputFile( GENERIC_IN_FILE )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
69 self._prgLauncher.setOutputFile( "%s.fa_aln" % ( GENERIC_IN_FILE ) )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
70 #TESt de SATannot verifier si clean est a vrai
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
71 #self._prgLauncher.setClean()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
72 self._prgLauncher.setVerbosityLevel( 1 )
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
73 self._prgLauncher.setListFilesToKeep()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
74 self._prgLauncher.setListFilesToRemove()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
75 return self._prgLauncher
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
76
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
77
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
78 if __name__ == "__main__":
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
79 i = MapClusterLauncher()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
80 i.setAttributesFromCmdLine()
94ab73e8a190 Uploaded
m-zytnicki
parents:
diff changeset
81 i.run()