![]() |
Rosetta
2021.16
|
#include <CHIEnergyFunction.hh>

Public Member Functions | |
| CHIEnergyFunction () | |
| Default constructor. More... | |
| ~CHIEnergyFunction () override | |
| Energy | operator() (CHIEnergyFunctionLinkageType type, Angle x) const |
| Real | evaluate_derivative (CHIEnergyFunctionLinkageType type, Angle x) const |
| CHIDihedralSamplingData const & | get_sampling_data (CHIEnergyFunctionLinkageType type) const |
| bool | sampling_data_setup () const |
| bool | sampling_data_setup (CHIEnergyFunctionLinkageType linkage_type) const |
Private Member Functions | |
| Energy | evaluate_term (CHIEnergyFunctionLinkageType type, uint i, Angle x) const |
| Energy | evaluate_function (CHIEnergyFunctionLinkageType type, Angle x) const |
| void | setup_for_sampling () |
| Set up CHI sampling data if not already setup. More... | |
| void | init () |
Private Attributes | |
| utility::vector1 < utility::vector1< Real > > | a_ |
| utility::vector1 < utility::vector1< Real > > | b_ |
| utility::vector1 < utility::vector1< Real > > | c_ |
| utility::vector1< Real > | d_ |
| std::map < CHIEnergyFunctionLinkageType, CHIDihedralSamplingData > | dihedral_sampling_data_ |
This is an implementation of the "CarboHydrate Intrinsic" (CHI) energy function developed by Woods Lab.
The Gaussian parameters for the function depend on whether the glycosidic bond in question is a phi or psi angle.
The parameters further depend on if the phi angles are at alpha or beta linkages and on if the psi angles are at ->2-axial, ->3-equatorial, or ->4-axial OR ->2-equatorial, ->3-axial, or ->4-equatorial linkages. If at exocyclic linkages, psi instead depends on whether the linkage is alpha or beta.
Functions for omega angles and (2->3) and (2->6) linkages (found in ketoses) could not be developed with QM, so knowledge-based functions were created instead. A.K. Nivedha et al. J. Comput. Chem. 2014, 35, 526-39 A.K. Nivedha et al. JCTC 2016, 12, 892-901
| core::scoring::carbohydrates::CHIEnergyFunction::CHIEnergyFunction | ( | ) |
Default constructor.
This class is only intended to be instantiated by the ScoringManager.
References init().
|
overridedefault |
| Real core::scoring::carbohydrates::CHIEnergyFunction::evaluate_derivative | ( | CHIEnergyFunctionLinkageType | type, |
| core::Angle | x | ||
| ) | const |
E'(x) = Sum of -2((x-b)/c)[ae^-((x-b)^2/c)], where the parameters for a, b, and c depend on the linkage type.
| <x> | an angle, in degrees: phi (between -180 and 180), if type is ALPHA_LINKS or BETA_LINKS; psi (between 0 and 360), if type is _2AX_3EQ_4AX_LINKS, _2EQ_3AX_4EQ_LINKS, ALPHA_1_6_LINKS, or BETA_1_6_LINKS A.K. Nivedha et al. J. Comput. Chem. 2014, 35, 526-39 A.K. Nivedha et al. JCTC 2016, 12, 892-901 |
References a_, b_, c_, evaluate_term(), core::scoring::carbohydrates::LINKAGE_NA, and core::chemical::element::N.
Referenced by core::energy_methods::SugarBackboneEnergy::eval_residue_dof_derivative().
|
private |
References a_, d_, protocols::comparative_modeling::features::E, evaluate_term(), core::scoring::carbohydrates::LINKAGE_NA, and core::chemical::element::N.
Referenced by operator()(), and setup_for_sampling().
|
private |
References a_, b_, c_, and core::scoring::carbohydrates::LINKAGE_NA.
Referenced by evaluate_derivative(), and evaluate_function().
| CHIDihedralSamplingData const & core::scoring::carbohydrates::CHIEnergyFunction::get_sampling_data | ( | CHIEnergyFunctionLinkageType | linkage_type | ) | const |
References dihedral_sampling_data_, and core::id::to_string().
Referenced by protocols::simple_moves::bb_sampler::SugarBBSampler::get_torsion().
|
private |
References core::scoring::carbohydrates::_2AX_3EQ_4AX_LINKS, core::scoring::carbohydrates::_2EQ_3AX_4EQ_LINKS, a_, core::scoring::carbohydrates::ALPHA6_LINKS, core::scoring::carbohydrates::ALPHA_LINKS, b_, core::scoring::carbohydrates::BETA6_LINKS, core::scoring::carbohydrates::BETA_LINKS, c_, d_, core::scoring::carbohydrates::FIRST_LINK_TYPE, core::scoring::carbohydrates::N_LINK_TYPES, core::scoring::carbohydrates::read_Gaussian_parameters_from_database_file(), and setup_for_sampling().
Referenced by CHIEnergyFunction().
| Energy core::scoring::carbohydrates::CHIEnergyFunction::operator() | ( | CHIEnergyFunctionLinkageType | type, |
| core::Angle | x | ||
| ) | const |
E(x) = d + Sum of ae^-((x-b)^2/c), where the parameters for a, b, c, and d depend on the linkage type.
| <x> | an angle, in degrees: phi (between -180 and 180), if type is ALPHA_LINKS or BETA_LINKS; psi (between 0 and 360), if type is _2AX_3EQ_4AX_LINKS, _2EQ_3AX_4EQ_LINKS, ALPHA_1_6_LINKS, or BETA_1_6_LINKS A.K. Nivedha et al. J. Comput. Chem. 2014, 35, 526-39 A.K. Nivedha et al. JCTC 2016, 12, 892-901 |
References evaluate_function().
| bool core::scoring::carbohydrates::CHIEnergyFunction::sampling_data_setup | ( | ) | const |
References dihedral_sampling_data_.
Referenced by setup_for_sampling().
| bool core::scoring::carbohydrates::CHIEnergyFunction::sampling_data_setup | ( | CHIEnergyFunctionLinkageType | linkage_type | ) | const |
References dihedral_sampling_data_.
|
private |
Set up CHI sampling data if not already setup.
References core::scoring::carbohydrates::_2AX_3EQ_4AX_LINKS, core::scoring::carbohydrates::_2EQ_3AX_4EQ_LINKS, core::scoring::carbohydrates::ALPHA_LINKS, core::scoring::carbohydrates::CHIDihedralSamplingData::angles, core::scoring::carbohydrates::BETA_LINKS, dihedral_sampling_data_, evaluate_function(), core::scoring::carbohydrates::CHIDihedralSamplingData::linkage_type, core::scoring::carbohydrates::N_LINK_TYPES, core::scoring::carbohydrates::CHIDihedralSamplingData::probabilities, sampling_data_setup(), core::scoring::carbohydrates::CHIDihedralSamplingData::step_size, core::id::to_string(), and core::scoring::TR().
Referenced by init().
|
private |
Referenced by evaluate_derivative(), evaluate_function(), evaluate_term(), and init().
|
private |
Referenced by evaluate_derivative(), evaluate_term(), and init().
|
private |
Referenced by evaluate_derivative(), evaluate_term(), and init().
|
private |
Referenced by evaluate_function(), and init().
|
private |
Referenced by get_sampling_data(), sampling_data_setup(), and setup_for_sampling().
1.8.7