find_pi_cation_interactions#
- biotite.structure.find_pi_cation_interactions(atoms, distance_cutoff=5.0, angle_tol=np.float64(0.5235987755982988))[source]#
Find pi-cation interactions between aromatic rings and cations.
- Parameters:
- atomsAtomArray
The atoms to be searched for pi-cation interactions. Requires an associated
BondListandchargeannotation.- distance_cutofffloat, optional
The cutoff distance between ring centroid and cation.
- angle_tolfloat, optional
The tolerance for the angle between the ring plane normal and the centroid-cation vector. Perfect pi-cation interaction has 0° angle (perpendicular to ring plane). Given in radians.
- Returns:
- interactionslist of tuple(ndarray, int)
The pi-cation interactions between aromatic rings and cations. Each element in the list represents one pi-cation interaction. The first element of each tuple represents atom indices of the aromatic ring, the second element is the atom index of the cation.
See also
find_aromatic_ringsUsed for finding the aromatic rings in this function.
find_stacking_interactionsFind pi-stacking interactions between rings.
Notes
- The conditions for pi-cation interactions are:
Examples
>>> from os.path import join >>> structure = load_structure(join(path_to_structures, "3wip.cif"), include_bonds=True, extra_fields=["charge"]) >>> interactions = find_pi_cation_interactions(structure) >>> for ring_indices, cation_index in interactions: ... print( ... structure.res_name[ring_indices[0]], ... structure.res_name[cation_index] ... ) TYR ACH TRP ACH