示例#1
0
statistics_collector_from_pdb = ResTypesStatisticsCollector()
statistics_collector_from_archive = ResTypesStatisticsCollector()


#initialize PoseEnergies for each file in list
if FileList:
    for filename in FileList:
        pe_instance = PoseEnergies()
        try:
            pe_instance.loadFile(filename)
        except:
            print "Caught exception when trying to read %s" % filename
            continue

        try:
            statistics_collector_from_pdb.add_pose_energies(pe_instance)
        except:
            print "Caught exception when trying to add values from  %s to statistics collector" % filename
            continue


#Serialization
if pickle_location != '':
    for aminoacid in aminoacids:
        statistics_collector_from_pdb.restype_av_scores[aminoacid].pickle_res_type_average_scores(pickle_location+aminoacid+'.txt')


#deserialize archived files
if archive_listfile != '' and pdb_listfile == '':
    if add_arch == True:
        for archive in archive_list:

FileList = ['12as_nohet_1_relax.pdb',  '12e8_nohet_1_relax.pdb', '12ca_nohet_1_relax.pdb',  '12gs_nohet_1_relax.pdb']
FileList_modified = ['12as_nohet_1_relax.pdb',  '12e8_nohet_1_relax.pdb', 'test_modified_12ca_nohet_1_relax.pdb',  '12gs_nohet_1_relax.pdb']



statistics_collector = ResTypesStatisticsCollector()
statistics_collector_mod = ResTypesStatisticsCollector()


for name in FileList:
	filename = name
	pe_instance = PoseEnergies()
	pe_instance.loadFile(filename)
	statistics_collector.add_pose_energies(pe_instance)

for name in FileList_modified:
	filename = name
	pe_instance = PoseEnergies()
	pe_instance.loadFile(filename)
	statistics_collector_mod.add_pose_energies(pe_instance)

#best score terms
#print statistics_collector.restype_av_scores['GLY'].get_best_score('fa_rep')
#print statistics_collector_mod.restype_av_scores['GLY'].get_best_score('fa_rep')

if float(statistics_collector_mod.restype_av_scores['GLY'].get_best_score('fa_rep')[0]) == -3.333333333:
	print 'No error seen, when trying to find the best score!'
else:
	print 'ERROR when trying to find the best score for a specific amino acid and score term!'
###########################################################################
#extracting subgroup depending on number of neighbors



filename1 = '10gs_nohet_1_relax.pdb'
filename2 = 'serin-only-test-pdb.txt'

statistics_collector_from_pdb1 = ResTypesStatisticsCollector()
statistics_collector_from_pdb2 = ResTypesStatisticsCollector()


pe_instance1 = PoseEnergies()
pe_instance1.loadFile(filename1)
statistics_collector_from_pdb1.add_pose_energies(pe_instance1)

pe_instance2 = PoseEnergies()
pe_instance2.loadFile(filename2)
statistics_collector_from_pdb2.add_pose_energies(pe_instance2)

mean1 = statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10,21))[0]
stddev1 = statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10,21))[1]
mean2 = statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')[0]
stddev2 = statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')[1]



#print statistics_collector_from_pdb1.calculate_averages_and_stddevs_from_subset('SER', 'rama', range(10, 21))
#print statistics_collector_from_pdb2.calculate_averages_and_stddevs('SER', 'rama')