Source code for pyrosetta_help.common_ops.ss_changes

"""
There is likely a mover that does this already and better...
"""


[docs]def make_ss(pose, begin: int = 1, end: int = -1, phi: float = 180, psi: float = 180): """ Given a pose, likely one made via ``pyrosetta.pose_from_sequence``, make the fortran-indexed range [begin, end] (inclusive) into that SS. """ if end == -1: end = pose.total_residue() for r in range(begin, end + 1): pose.set_phi(r, phi) pose.set_psi(r, psi)
[docs]def make_alpha_helical(pose, begin: int = 1, end: int = -1): make_ss(pose, begin, end, phi=-57.8, psi=-47.0)
[docs]def make_310_helical(pose, begin: int = 1, end: int = -1): make_ss(pose, begin, end, phi=-74.0, psi=-4.0)
[docs]def make_pi_helical(pose, begin: int = 1, end: int = -1): make_ss(pose, begin, end, phi=-57.1, psi=-69.7)
[docs]def make_sheet(pose, begin: int = 1, end: int = -1): make_ss(pose, begin, end, phi=-139, psi=+135)
# PyCharm is licking a mandrake again. Ignore the warning of bytes + str make_alpha_helical.__doc__ = make_ss.__doc__ + '\nIn this case alpha-helix with phi=-57.8, psi=-47.0' make_310_helical.__doc__ = make_ss.__doc__ + '\nIn this case 3.10-helix with phi=-74.0, psi=-4.0' make_pi_helical.__doc__ = make_ss.__doc__ + '\nIn this case pi-helix with phi=-57.1, psi=-69.7' make_sheet.__doc__ = make_ss.__doc__ + '\nIn this case sheet with phi=-139, psi=+135'