Package schrodinger :: Package application :: Package prime :: Module primefix :: Class FixForPrime
[hide private]
[frames] | no frames]

Class FixForPrime

Wrapper class to house the combination of methods for fixing a structure for Prime.

Raises RuntimeError if it can't determine a chain name, or general Exception if can't name a hydrogen because of PDB atom name field size restrictions.

Call instance.fixAll() after creating the instance to drive all fixing methods.

Instance Methods [hide private]
 
__init__(self, st)
 
fixMetals(self, fix_pdbnames=False)
Sets bond order between all metals and other atoms to 0 and gives the metal a new residue number and name.
 
fixSpecialResidues(self)
Assigns PDB atom names, and charges for residue names:
 
fixDNACaps(self)
Prime atom parameters need to be different for terminal DNA bases than the atom parameters for the DNA bases that are in the center of the string.
 
reassignHets(self, het_atom_groups)
Assign chain, pdbres, and resnum to het groups.
 
reassignResNums(self)
Assigns new residue numbers as needed, making sure a residue number only appears in a chain once.
 
renumberByMolecule(self)
Break up the structure into multiple structures - one molecule each Recombined the structures into one, adding a molecule at a time.
 
fixPdbresAndPdbnames(self)
Justifies PDB residue name.
 
fixHets(self)
Calls reassignHets on identified het atoms.
 
fixAll(self)
Driver method that makes all the fixes.
Method Details [hide private]

fixMetals(self, fix_pdbnames=False)

 

Sets bond order between all metals and other atoms to 0 and gives the metal a new residue number and name. Also sets the charges of metals to appropriate values. For Iron-sulfur clusters, sets the charge of iron to +3 and the charge of sulfurs to -1. Optionally corrects the metal pdbnames.

Also every -SH that is within 3A of a metal is marked with a negative charge and gets its hydrogen removed.

fixSpecialResidues(self)

 

Assigns PDB atom names, and charges for residue names:

HOH, DOD, TIP, SPS ASP, GLU NMA, NME ACE HEM, HEC

Changes residue name from DOD, TIP, or SPC to HOH

fixDNACaps(self)

 

Prime atom parameters need to be different for terminal DNA bases than the atom parameters for the DNA bases that are in the center of the string. This is accomplished by giving terminal bases a new residue name. Ev:60484

XHL is the 5' cap (-OH bound to the phosphate of the base) POT is the 3' cap (a phosphate cap)

Protocol: Find all XHL&POT caps and rename the cap and the residue bound to it

reassignHets(self, het_atom_groups)

 

Assign chain, pdbres, and resnum to het groups. Raises RuntimeError if it can't determine a chain name, or general Exception if can't name a hydrogen because of PDB atom name field size restrictions.

reassignResNums(self)

 

Assigns new residue numbers as needed, making sure a residue number only appears in a chain once. self.reassign_resnum currently contains only a list of metals to which bonds were broken.

renumberByMolecule(self)

 

Break up the structure into multiple structures - one molecule each Recombined the structures into one, adding a molecule at a time. The purpose of this is so that all atoms from each molecule appear together in the connection table.

fixPdbresAndPdbnames(self)

 

Justifies PDB residue name. Changes all PDB atom names to upper case.