Rosetta 3.5
core::pose::carbohydrates Namespace Reference

Functions

core::Angle calculate_carbohydrate_phi (Pose const &pose, uint const sequence_position)
Calculate and return the phi angle between a saccharide residue of the given pose and the previous residue. More...

core::Angle carbohydrate_phi_offset_from_BB (Pose const &pose, uint const sequence_position)
Return the number of degrees by which the phi angle between a saccharide residue of the given pose and the previous residue differs from the BB torsion used by Rosetta. More...

Function Documentation

 core::Angle core::pose::carbohydrates::calculate_carbohydrate_phi ( Pose const & pose, uint const sequence_position )

Calculate and return the phi angle between a saccharide residue of the given pose and the previous residue.

This special-case function for carbohydrate phis is necessary, because of the following:
For aldopyranoses, phi is defined as O5(n)-C1(n)-OX(n-1)-CX(n-1), where X is the position of the glycosidic linkage.
For aldofuranoses, phi is defined as O4(n)-C1(n)-OX(n-1)-CX(n-1).
For 2-ketopyranoses, phi is defined as O6(n)-C2(n)-OX(n-1)-CX(n-1).
For 2-ketofuranoses, phi is defined as O5(n)-C2(n)-OX(n-1)-CX(n-1).
Et cetera...
However, for aldopyranoses, BB X+1 is defined as: CX-OX-UPPER1-UPPER2.
CHI 1 is O5-C1-O1-HO1, which for an internal residue with virtual atoms for O1 and HO1, is the same as phi(n), provided the virtual atoms are made to move with any rotation of BB X+1. The same concept holds for aldo- furanoses; however, ketoses are more complicated. The cyclic oxygen must be the reference for phi, yet CHI 2 at the anomeric position is defined with C1 as the reference atom, not the cyclic oxygen (O5 for furanoses, O6 for pyranoses). To complicate matters further, two virtual atoms in a row in a CHI gives NAN, so CHI angles cannot be used after all. Thus, we have to use vector calculus to calculate phi....

Referenced by carbohydrate_phi_offset_from_BB(), and core::pose::Pose::phi().

 core::Angle core::pose::carbohydrates::carbohydrate_phi_offset_from_BB ( Pose const & pose, uint const sequence_position )

Return the number of degrees by which the phi angle between a saccharide residue of the given pose and the previous residue differs from the BB torsion used by Rosetta.

Remarks
See the details for calculate_carbohydrate_phi() for an explanation on why this method is necessary.

Referenced by core::pose::Pose::set_phi().