hmm.pssm.ModelBuilder(order).dump_background_mosaic_model(hmm.as_state_model(model), self.path_for(index)) _global_cache = None def global_background_model_cache(): global _global_cache if None == _global_cache: _global_cache = BackgroundModelCache() return _global_cache def background_model(order, N): return hmm.as_state_model(global_background_model_cache().load((order, N, 'T00594'))) if '__main__' == __name__: try: import cookbook cookbook.make_current_process_nice() except: print 'Could not set process priority' def bw_callback(LL): pass; #print 'LL: %.3f' % LL order = 0 num_mosaics = 1 cache = BackgroundModelCache() print ' fragment order # mosaics LL/base' for fragment in all_fragments: seqs = seqs_for_fragment(fragment) model_builder = hmm.pssm.ModelBuilder(order) training_sequences = [ model_builder.converter.to_order_n(s) for s in seqs ] known_bases = sum(model_builder.converter.num_known_bases_order_n(s) for s in training_sequences)