Ejemplo n.º 1
0
 def get_proximal_atoms(self, center_atom, neighbour_atom_type,
                        max_neighbour_distance):
     """
     Get atoms inside a particular radii's sphere
     (exception) Atoms belonging to water residues are excluded
     """
     results = []
     for line in self.lines:
         if line[12:16].strip(
         )[0] == neighbour_atom_type and line[17:20].strip() != "HOH":
             atom = Protein.parse_line_atom_details(line)
             if Atom.distance(center_atom, atom) <= max_neighbour_distance:
                 results.append(atom)
     return results
Ejemplo n.º 2
0
                continue

            connected_hydrogen = []
            connected_hydrogen.extend(protein.get_connected_hydrogens(oxygen))
            for hydrogen in connected_hydrogen:
                try:
                    for anti_antecedent in connected_atoms:
                        bond_angle = Atom.get_bond_angles(
                            se, hydrogen, anti_antecedent)
                        if bond_angle < numpy.pi / 2:
                            raise ContinueLabelled

                except ContinueLabelled:
                    continue

                if Atom.distance(hydrogen, oxygen) <= 1.1 and Atom.distance(
                        se, oxygen) >= 1.0:
                    bond_angle = Atom.get_bond_angles(hydrogen, se, oxygen)
                    if bond_angle >= numpy.pi / 19:
                        distances1.append(Atom.distance(se, oxygen))
                        angles1.append(degrees(bond_angle))

                if (Atom.distance(hydrogen, oxygen) <= 1.1
                        and Atom.distance(se, oxygen) <= 4.0
                        and (90 <= degrees(
                            Atom.get_bond_angles(hydrogen, se, oxygen)) <= 130)
                        and Atom.distance(se, oxygen) >= 1.0):
                    distances3.append(Atom.distance(se, oxygen))
                    angles3.append(
                        degrees(Atom.get_bond_angles(hydrogen, se, oxygen)))
                    excluded_h_bond.append(