示例#1
0
import POVME.packages.binana.peel as peel
import POVME.packages.pymolecule.pymolecule as pymolecule
import numpy
features = ['aromatic','hbondDonor','hbondAcceptor','hydrophobic','hydrophilic','hydrophobicity','occupancy']

mostly_empty = pymolecule.Molecule()
mostly_empty.fileio.load_pdb_into('mostly_empty.pdb')

my_peel = peel.peel(mostly_empty, peel.defaultParams)

one_point_fmaps_1 = my_peel.create_feature_maps([0,0,0,0,0,0], 1, features)
one_point_fmaps_2 = my_peel.create_feature_maps([0,0,0,0,0,0], 1, features)

print()
print('======Beginning scoring ======')
for i in range(len(features)):
    #So the point of featuremap_1 for aromatic will be set to 0, hBondDonor 2, etc...
    one_point_fmaps_1[features[i]].setData(numpy.array([[[2*i]]]))
    #So the point of featuremap_2 for aromatic will be set to 1, hBondDonor 3, etc...
    one_point_fmaps_2[features[i]].setData(numpy.array([[[(2*i)+1]]]))
    print('Setting %s to be %i for featuremap_A and %i for featuremap_B' %(features[i], i*2, (i*2)+1))


my_algebra = peel.algebra()
my_score_funcs = ['hbondAcceptor_A * hbondDonor_B', 'hbondAcceptor_B * hbondDonor_A']
my_algebra.setScoreFuncs(my_score_funcs)
my_score_maps, my_scores = my_algebra.scoreAll(one_point_fmaps_1, one_point_fmaps_2)
print('\n'.join(['%.5e\t%s'%(score, func) for func, score in zip(my_score_funcs, my_scores)]))


示例#2
0
import POVME.packages.binana.peel as peel
import POVME.packages.pymolecule.pymolecule as pymolecule
my_params = peel.defaultParams
trp = pymolecule.Molecule()
trp.fileio.load_pdb_into('trp.pdb',
                         bonds_by_distance=True,
                         serial_reindex=True,
                         resseq_reindex=False)
my_peel = peel.peel(trp, my_params)
my_peel.write_vmd_script('visualize_trp.vmd', peel.defaultParams)

my_feature_maps = my_peel.create_feature_maps([-20, 20, -20, 20, -20, 20], 0.5)
my_feature_maps['hbondAcceptor'].write_pdb('HBA.pdb')
my_feature_maps['hbondDonor'].write_pdb('HBD.pdb')
my_feature_maps['aromatic'].write_pdb('ARO.pdb')

print "Done!"
示例#3
0
#import numpy
import POVME.packages.pymolecule.pymolecule as pymolecule
import POVME.packages.binana.peel as peel
import sys
#print sys.modules

my_params = peel.defaultParams

#DEFAULT
#arg = pymolecule.FileIO.load_pdb_into( 'arg.pdb', bonds_by_distance=True, serial_reindex = True, resseq_reindex=False)
arg = pymolecule.Molecule()
arg.fileio.load_pdb_into('arg.pdb',
                         bonds_by_distance=True,
                         serial_reindex=True,
                         resseq_reindex=False)

my_peel = peel.peel(arg, my_params)
my_peel.write_vmd_script('visualize_arg.vmd', peel.defaultParams)

my_feature_maps = my_peel.create_feature_maps([-10, 15, -5, 15, -10, 15], 1)
my_feature_maps['hbondAcceptor'].write_pdb('HBA.pdb')
my_feature_maps['hbondAcceptor'].write_dx_file('HBA.dx')
my_feature_maps['hbondDonor'].write_pdb('HBD.pdb')
my_feature_maps['hbondDonor'].write_dx_file('HBD.dx')
my_feature_maps['occupancy'].write_dx_file('OCC.dx')
#my_feature_maps['aromatic'].write_pdb('ARO.pdb') #don't bother with this
my_feature_maps['hydrophobic'].write_pdb('HBC.pdb')
my_feature_maps['hydrophilic'].write_pdb('HPL.pdb')
#my_feature_maps['hydrophobicity'].write_pdb('HPBTY.pdb')
#my_feature_maps['hydrophobicity'].write_dx_file('HPBTY.dx')
#HBAMap = my_feature_maps[0].data
示例#4
0
import POVME.packages.binana.peel as peel
import POVME.packages.pymolecule.pymolecule as pymolecule
#import numpy
my_params = peel.defaultParams
my_protein = pymolecule.Molecule()
my_protein.fileio.load_pdb_into('2gfc_reduced.pdb',
                                serial_reindex=True,
                                resseq_reindex=False)

my_peel = peel.peel(my_protein, my_params)
my_peel.write_vmd_script('visualize_2gfc.vmd', peel.defaultParams)

#povmeMap = numpy.ones((13,13,13))

#my_peel.color_povme_map(povmeMap, [0,13,0,13,0,13], 1)
# If given no "features" argument, create_feature_maps will create maps of all features
my_feature_maps = my_peel.create_feature_maps([10, 80, -30, 45, -30, 30], 1)

my_feature_maps['hbondAcceptor'].write_pdb('HBA.pdb')
my_feature_maps['hbondAcceptor'].write_dx_file('HBA.dx')
my_feature_maps['hbondDonor'].write_pdb('HBD.pdb')
my_feature_maps['hbondDonor'].write_dx_file('HBD.dx')
my_feature_maps['aromatic'].write_pdb('ARO.pdb')
my_feature_maps['aromatic'].write_dx_file('ARO.dx')
my_feature_maps['hydrophobic'].write_pdb('HPB.pdb')
my_feature_maps['hydrophobic'].write_dx_file('HPB.dx')
my_feature_maps['hydrophilic'].write_pdb('HPL.pdb')
my_feature_maps['hydrophilic'].write_dx_file('HPL.dx')
#my_feature_maps['hydrophobicity'].write_pdb('HPBTY.pdb')
#my_feature_maps['hydrophobicity'].write_dx_file('HPBTY.dx')
示例#5
0
import POVME.packages.binana.peel as peel
import POVME.packages.pymolecule.pymolecule as pymolecule


# The purpose of this test case is to show the versatility of the string-input scoring functions.
# Users can use functions from the numpy package to construct score components.
# Please note that these functions are meant to show the versatility of the software
# and do not have any actual meaning.

part_1 = pymolecule.Molecule()
part_1.fileio.load_pdb_into('helixPt1.pdb')

part_2 = pymolecule.Molecule()
part_2.fileio.load_pdb_into('helixPt2.pdb')

#peel_1.write_vmd_script_file('peel1.vmd'')

peel_1 = peel.peel(part_1, peel.defaultParams)
fmaps_1 = peel_1.create_feature_maps([25,55,-25,5,-15,15], 1, ['occupancy','hbondDonor','hbondAcceptor','aromatic','hydrophobic','hydrophilic','hydrophobicity'])
peel_2 = peel.peel(part_2, peel.defaultParams)
fmaps_2 = peel_2.create_feature_maps([25,55,-25,5,-15,15], 1, ['occupancy','hbondDonor','hbondAcceptor','aromatic','hydrophobic','hydrophilic','hydrophobicity'])





my_algebra = peel.algebra()
print()
print()
print('The scoring function components are originally:')
print('\n'.join(my_algebra.getScoreFuncs()))
示例#6
0
文件: test.py 项目: Seanny123/POVME
import numpy
import random
import os
import shutil

# This program demonstrates all the features of pymolecule 2.0, a python framework
# for loading, saving, and manipulating 3D molecular data.

########## First, set up the example directory ##########
if os.path.exists('./example_output'): shutil.rmtree('./example_output')
os.mkdir('./example_output')

########## Saving and Loading Molecular Data ##########

# First, create a molecule object.
molecule = pymolecule.Molecule()
#molecule.fileio.load_pym_into('./example_output/pym_example.pym') # remove this later

# Now, load a PDB file into that object. Calculate the bonds by distance, and
# reindex the serial and resseq fields. Definitions used::
#   pymolecule.Molecule.fileio.load_pdb_into
#   pymolecule.Molecule.fileio.load_pdb_into_using_file_object
#   pymolecule.Molecule.fileio.serial_reindex
#   pymolecule.Molecule.fileio.resseq_reindex
#   pymolecule.Molecule.atoms_and_bonds.create_bonds_by_distance
#   pymolecule.Molecule.selections.select_all_atoms_bound_to_selection
molecule.fileio.load_pdb_into('./example.pdb', True, True, True)

# Save the molecule object as a PDB file. The serial and resseq fields have
# already been reindexed, so we'll skip that. Definitions used:
#   pymolecule.Molecule.fileio.save_pdb
示例#7
0
     centerCoords[proteinPdbPrefix] = [
         numpy.mean(allCoords[proteinPdbPrefix][:, 0]),
         numpy.mean(allCoords[proteinPdbPrefix][:, 1]),
         numpy.mean(allCoords[proteinPdbPrefix][:, 2])
     ]
     # Generate the PDB map
     sideLength = 30
     protein_boundaries = [
         centerCoords[proteinPdbPrefix][0] - sideLength,
         centerCoords[proteinPdbPrefix][0] + sideLength,
         centerCoords[proteinPdbPrefix][1] - sideLength,
         centerCoords[proteinPdbPrefix][1] + sideLength,
         centerCoords[proteinPdbPrefix][2] - sideLength,
         centerCoords[proteinPdbPrefix][2] + sideLength
     ]
     protein_molecule = pymolecule.Molecule()
     protein_molecule.fileio.load_pdb_into(pdbFileName,
                                           serial_reindex=True,
                                           resseq_reindex=False)
     protein_peel = peel.peel(protein_molecule, my_params)
     protein_feature_maps = protein_peel.create_feature_maps(
         protein_boundaries, gridResolution, features=features)
     # Now save the featureMaps for this protein
     #with gzip.open('%s/%s_featureMaps.cPickle.gz' %(proteinFmOutputDir, proteinPdbPrefix),'wb') as my_file:
     my_file = gzip.open(
         '%s/%s_featureMaps.cPickle.gz' %
         (proteinFmOutputDir, proteinPdbPrefix), 'wb')
     pickle.dump(protein_feature_maps, my_file, protocol=2)
     my_file.close()
 else:
     #If the job is marked as started, let's see if it's finished. If so, load that receptor map