Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/raw-rev/20d687480d83
Дата изменения: Unknown
Дата индексирования: Tue Oct 2 08:13:52 2012
Кодировка:

# HG changeset patch
# User Boris Burkov
# Date 1311952101 -14400
# Node ID 20d687480d83b361b5f0564ac759d62f9ee5f380
# Parent e460ca5a071fcfe2b7bb8433051092573728e7d1
Post-MCCMB state of blocks_finder

diff -r e460ca5a071f -r 20d687480d83 sbbs_2009/blocks_finder.py
--- a/sbbs_2009/blocks_finder.py Mon Jul 11 22:15:50 2011 +0400
+++ b/sbbs_2009/blocks_finder.py Fri Jul 29 19:08:21 2011 +0400
@@ -78,19 +78,22 @@
return blocks_for_print


+sys.path.append(os.path.dirname(__file__)+"/../utils")
+from timesup import *
+@timesup
def blocks2homology_file(blocks, homology_file):
sys.path.append(os.path.dirname(__file__)+"/../allpy/")
from homology import MonomerHomology
class_counter = 0
for b in blocks:
if b[0].content[0].state == "aligned":
- for sa in b[0].content[0].sequence_indexes_a:
- sequence_name = b[0].content[0].alignment.sequences[b[0].content[0].alignment.sequence_indexes_s[sa]].name
- for pa in b[0].content[0].position_indexes_a:
+ for pa in b[0].content[0].position_indexes_a:
+ for sa in b[0].content[0].sequence_indexes_a:
+ sequence_name = b[0].content[0].alignment.sequences[b[0].content[0].alignment.sequence_indexes_s[sa]].name
if b[0].content[0].alignment.get_aa(sa,pa)!=None:
- monomer_id = (sequence_name, pa+1)
- MonomerHomology.write_monomer(homology_file, monomer_id, class_counter)
- class_counter+=1
+ monomer_id = (sequence_name, b[0].content[0].alignment.body[sa][pa]+1)
+ MonomerHomology.write_monomer(homology_file, monomer_id, class_counter, pa+1)
+ class_counter+=1
else:
if b[0].content[0].state == "no_alignment":
#print each monomer as a separate class
@@ -98,8 +101,8 @@
sequence_name = b[0].content[0].alignment.sequences[b[0].content[0].alignment.sequence_indexes_s[sa]].name
for pa in b[0].content[0].position_indexes_a:
if b[0].content[0].alignment.get_aa(sa, pa) != None:
- monomer_id = (sequence_name, pa+1)
- MonomerHomology.write_monomer(homology_file, monomer_id, class_counter)
+ monomer_id = (sequence_name, b[0].content[0].alignment.body[sa][pa]+1)
+ MonomerHomology.write_monomer(homology_file, monomer_id, class_counter, pa+1)
class_counter+=1


diff -r e460ca5a071f -r 20d687480d83 sbbs_2009/modules/block.py
--- a/sbbs_2009/modules/block.py Mon Jul 11 22:15:50 2011 +0400
+++ b/sbbs_2009/modules/block.py Fri Jul 29 19:08:21 2011 +0400
@@ -376,7 +376,7 @@
elif mode == "semiexternal":
mat = self.create_distance_matrix()
#if mat.max() == 0: return False
- f=open(os.path.dirname(__file__)+"/../jobs/temptree.dist","w")
+ f=open(""+os.path.dirname(__file__)+"/../jobs/temptree.dist","w")
f.write(str(mat))
f.close()
os.system("fneighbor "+os.path.dirname(__file__)+"/../jobs/temptree.dist -outfile "+os.path.dirname(__file__)+"/../jobs/temptree.nj -outtreefile "+os.path.dirname(__file__)+"/../jobs/temptree.tre -treetype u 2>>"+os.path.dirname(__file__)+"/../jobs/temptree.log >>"+os.path.dirname(__file__)+"/../jobs/temptree.log")
diff -r e460ca5a071f -r 20d687480d83 sequence_based_blocks_search/blocks_finder.py
--- a/sequence_based_blocks_search/blocks_finder.py Mon Jul 11 22:15:50 2011 +0400
+++ b/sequence_based_blocks_search/blocks_finder.py Fri Jul 29 19:08:21 2011 +0400
@@ -105,12 +105,12 @@
candidate_preblocks+=addition_to_candidate_preblocks
#remove from candidates those preblocks that share the same set of sequences with others, but are shorter and have lower scores
#print index_of_column, len(candidate_preblocks),
- print index_of_column, len(candidate_preblocks)
- if len(candidate_preblocks)>1000:
- import cProfile
- cProfile.runctx('remove_contained_preblocks(candidate_preblocks)',globals(),locals())
- else:
- remove_contained_preblocks(candidate_preblocks)
+ #print index_of_column, len(candidate_preblocks)
+# if len(candidate_preblocks)>1000:
+# import cProfile
+# cProfile.runctx('remove_contained_preblocks(candidate_preblocks)',globals(),locals())
+# else:
+ remove_contained_preblocks(candidate_preblocks)
#print len(candidate_preblocks)
#remove_bad_candidates(candidate_preblocks, index_of_column, 0.5, 10)
#for those preblocks ending with a conserved position and having the score above threshold, add new links
@@ -377,7 +377,7 @@
created by create_links function"""
try:
markup_file = open(markup_file_name,'w')
- except E:
+ except Exception as E:
print E
sys.exit()
#creating markups
diff -r e460ca5a071f -r 20d687480d83 sequence_based_blocks_search/test_homology.py
--- a/sequence_based_blocks_search/test_homology.py Mon Jul 11 22:15:50 2011 +0400
+++ b/sequence_based_blocks_search/test_homology.py Fri Jul 29 19:08:21 2011 +0400
@@ -17,5 +17,13 @@
find_links(groups_content, alignment)
create_file_with_monomer_homology(alignment, output_file_name)

+def timeout(signum, frame):
+ print sys.argv[1]+" time-out!!!"
+ sys.exit(1)
+
if __name__ == "__main__":
+ import signal
+ signal.signal(signal.SIGALRM, timeout)
+ signal.alarm(90)
+ print sys.argv[1]
alignment_file2homology_file(sys.argv[1], sys.argv[2])