Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/allpy/rev/2125782780c6
Дата изменения: Unknown
Дата индексирования: Tue Oct 2 01:04:07 2012
Кодировка:
allpy: 2125782780c6

allpy

changeset 653:2125782780c6

50% speed up for blocks_finder due to local application of remove_contained_preblocks. For every preblock that is going to be extended by all the groups, I first check that the resulting preblocks don't overlap. Due to this local check we get slight advantage in speed.
author Boris Burkov <BurkovBA@gmail.com>
date Sun, 12 Jun 2011 15:36:07 +0400
parents 7c27a4174954
children c32e728b98d7
files sequence_based_blocks_search/blocks_finder.py
diffstat 1 files changed, 6 insertions(+), 3 deletions(-) [+]
line diff
     1.1 --- a/sequence_based_blocks_search/blocks_finder.py	Fri Jun 10 16:15:35 2011 +0400
     1.2 +++ b/sequence_based_blocks_search/blocks_finder.py	Sun Jun 12 15:36:07 2011 +0400
     1.3 @@ -88,10 +88,13 @@
     1.4              print "Found non-canonical aminoacid: %s"%(ke)
     1.5          #create new preblocks as combinations of the old ones 
     1.6          try:
     1.7 -            for group_name in functional_groups:
     1.8 -                for preblock in candidate_preblocks:
     1.9 +            for preblock in candidate_preblocks:
    1.10 +                preblock_extensions = []
    1.11 +                for group_name in functional_groups:
    1.12                      if len([sequence_in_block for sequence_in_block in groups_content[column][group_name] if sequence_in_block in preblock.sequences]) > 1:
    1.13 -                        addition_to_candidate_preblocks.append(Preblock(preblock.first_column_index, index_of_column, [sequence_in_block for sequence_in_block in groups_content[column][group_name] if sequence_in_block in preblock.sequences], preblock.term1+functional_groups[group_name]["70%"], preblock.term2+functional_groups[group_name]["100%"], preblock.term3, alignment))
    1.14 +                        preblock_extensions.append(Preblock(preblock.first_column_index, index_of_column, [sequence_in_block for sequence_in_block in groups_content[column][group_name] if sequence_in_block in preblock.sequences], preblock.term1+functional_groups[group_name]["70%"], preblock.term2+functional_groups[group_name]["100%"], preblock.term3, alignment))
    1.15 +                remove_contained_preblocks(preblock_extensions)
    1.16 +                addition_to_candidate_preblocks+=preblock_extensions
    1.17          except KeyError as ke:
    1.18              print "Found non-canonical aminoacid: %s"%(ke)
    1.19          #add one inconserved column to the old ones, merge all together