Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
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....

References protocols::match::upstream::b, core::pack::dunbrack::c, core::conformation::Residue::carbohydrate_info(), core::pose::Pose::residue(), and core::pose::TR().

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.

References core::id::BB, calculate_carbohydrate_phi(), core::chemical::ResidueType::carbohydrate_info(), core::pose::Pose::residue_type(), and core::pose::Pose::torsion().

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