![]() |
Rosetta Core
2014.35
|
Namespaces | |
symmetry | |
Variables | |
static basic::Tracer | TR ("core.optimization") |
static basic::Tracer | TR ("core.optimization.AtomTreeMinimizer") |
static basic::Tracer | TR ("core.optimization") |
static basic::Tracer | TR ("core.optimization.CartesianMinimizer") |
static basic::Tracer | TR ("core.optimization.GA_Minimizer") |
static numeric::random::RandomGenerator | RG (740) |
static basic::Tracer | TR ("core.optimization.LineMinimizer") |
static basic::Tracer | TR ("core.optimization.Minimizer") |
static basic::Tracer | TR ("core.optimization.NelderMeadSimplex") |
typedef utility::pointer::owning_ptr< AtomTreeMinimizer const > core::optimization::AtomTreeMinimizerCOP |
typedef utility::pointer::owning_ptr< CartesianMinimizer const > core::optimization::CartesianMinimizerCOP |
typedef utility::pointer::owning_ptr< CartesianMinimizerMap const > core::optimization::CartesianMinimizerMapCOP |
typedef utility::pointer::owning_ptr< CartesianMinimizerMap > core::optimization::CartesianMinimizerMapOP |
typedef utility::pointer::owning_ptr< LineMinimizationAlgorithm const > core::optimization::LineMinimizationAlgorithmCOP |
typedef utility::pointer::owning_ptr< LineMinimizationAlgorithm > core::optimization::LineMinimizationAlgorithmOP |
typedef utility::pointer::owning_ptr< MinimizerOptions const > core::optimization::MinimizerOptionsCOP |
typedef utility::pointer::owning_ptr< NumDerivCheckData const > core::optimization::NumDerivCheckDataCOP |
typedef utility::pointer::owning_ptr< NumericalDerivCheckResult const > core::optimization::NumericalDerivCheckResultCOP |
typedef utility::pointer::owning_ptr< NumericalDerivCheckResult > core::optimization::NumericalDerivCheckResultOP |
typedef utility::pointer::owning_ptr< ParticleSwarmMinimizer const > core::optimization::ParticleSwarmMinimizerCOP |
typedef utility::pointer::owning_ptr< ParticleSwarmMinimizer > core::optimization::ParticleSwarmMinimizerOP |
typedef utility::pointer::owning_ptr< SimpleDerivCheckResult const > core::optimization::SimpleDerivCheckResultCOP |
typedef utility::pointer::owning_ptr< SimpleDerivCheckResult > core::optimization::SimpleDerivCheckResultOP |
void core::optimization::atom_tree_dfunc | ( | pose::Pose & | pose, |
MinimizerMap & | min_map, | ||
scoring::ScoreFunction const & | scorefxn, | ||
Multivec const & | vars, | ||
Multivec & | dE_dvars | ||
) |
car multiple neighborlists: car cendist centroid distances in current structure, cutoff for vdw car dis2_tether centroid distances in tether structure, cutoff for tether
db computes the derivative of E with respect to each db of the torsion angles. Using the chain rule, we have db db dE/d phi = dE/dr * dr/dphi db db dr/dphi = Eab x (V-Vb) . (V' - V)/|V-V'| db db (the first cross product is the displacement of V upon a rotation dphi db around the unit vector Eab, Vb is the coordinates of the second atom in db the bond) db car dE/dR = 2r (for vdw at least) db since | V-V'| = r, db db dE/ dphi = 2 Eab x (V-Vb) . (V' - V) db db note that Eab and Vb are different for each torsion angle, but V' db and V are the same. rearranging: db db = - 2 Eab X Vb . (V' - V) - 2 Eab . (V' x V). db db now we need the averages over all Vi of the difference and the db crossproduct of V and V'.
car below, Eab x Vb is 'vec' car Eab is 'unit' car (V'-V) is 'f2' car 'F2tot' = f2*dE_dR (cumulative) car (V' X V) is 'f1' ('F1_xxxE' is cumulative for potential xxx) car eval_dE_dR actually returns dE_dR/r
car if two atoms are fixed relatively in cartesian space, then dr/dphi = 0 car and there is no contribution to the derivative
References core::kinematics::AtomTree::atom(), core::optimization::DOF_Node::atom_id(), core::pose::Pose::atom_tree(), atom_tree_get_atompairE_deriv(), core::optimization::MinimizerMap::begin(), core::optimization::MinimizerMap::copy_dofs_to_pose(), core::optimization::DOF_Node::dof_id(), core::optimization::MinimizerMap::end(), core::scoring::ScoreFunction::eval_dof_derivative(), core::scoring::ScoreFunction::finalize_after_derivatives(), core::optimization::MinimizerMap::link_torsion_vectors(), core::optimization::MinimizerMap::nangles(), core::scoring::ScoreFunction::setup_for_derivatives(), core::optimization::DOF_Node::torsion_id(), core::optimization::MinimizerMap::torsion_scale_factor(), torsional_derivative_from_cartesian_derivatives(), and core::optimization::MinimizerMap::zero_torsion_vectors().
Referenced by core::optimization::AtomTreeMultifunc::dfunc().
void core::optimization::atom_tree_get_atompairE_deriv | ( | pose::Pose & | pose, |
MinimizerMap & | min_map, | ||
scoring::ScoreFunction const & | scorefxn | ||
) |
First evaluate all derivatives for the residue- and residue-pair decomposable terms, using the minimization graph as a guide. Then, evaluate any further derivatives for those terms that are not residue- or residue-pair decomposable
References core::optimization::MinimizerMap::atom_derivatives(), core::id::AtomID::atomno(), core::optimization::DOF_Node::atoms(), core::optimization::MinimizerMap::begin(), core::optimization::MinimizerMap::domain_map(), core::optimization::MinimizerMap::end(), core::pose::Pose::energies(), core::scoring::eval_atom_derivatives_for_minedge(), core::scoring::eval_atom_derivatives_for_minnode(), core::scoring::ScoreFunction::eval_npd_atom_derivative(), core::optimization::DOF_Node::F1(), core::optimization::DOF_Node::F2(), core::scoring::Energies::minimization_graph(), core::pose::Pose::residue(), core::id::AtomID::rsd(), scoring, core::pose::Pose::total_residue(), and core::scoring::ScoreFunction::weights().
Referenced by atom_tree_dfunc().
void core::optimization::cart_numerical_derivative_check | ( | CartesianMinimizerMap const & | min_map, |
CartesianMultifunc const & | func, | ||
Multivec const & | start_vars, | ||
Multivec const & | dE_dvars, | ||
NumericalDerivCheckResultOP | deriv_check_result, | ||
bool const | verbose | ||
) |
References dot(), core::chemical::element::F, core::optimization::CartesianMinimizerMap::get_atom(), core::chemical::element::I, core::optimization::CartesianMinimizerMap::natoms(), core::optimization::CartesianMinimizerMap::ndofs(), norm(), TR, and vars.
Referenced by core::optimization::CartesianMultifunc::dfunc().
void core::optimization::cartesian_collect_atompairE_deriv | ( | pose::Pose & | pose, |
CartesianMinimizerMap & | min_map, | ||
scoring::ScoreFunction const & | scorefxn, | ||
Multivec & | dE_dvars, | ||
core::Real | scale | ||
) |
References core::optimization::CartesianMinimizerMap::atom_derivatives(), core::optimization::CartesianMinimizerMap::domain_map(), core::pose::Pose::energies(), core::scoring::eval_atom_derivatives_for_minnode(), core::scoring::ScoreFunction::eval_npd_atom_derivative(), core::scoring::eval_weighted_atom_derivatives_for_minedge(), core::optimization::CartesianMinimizerMap::get_atom(), core::conformation::symmetry::is_symmetric(), core::scoring::Energies::minimization_graph(), core::optimization::CartesianMinimizerMap::natoms(), core::pose::Pose::residue(), scoring, core::pose::Pose::total_residue(), and core::scoring::ScoreFunction::weights().
Referenced by cartesian_dfunc().
void core::optimization::cartesian_collect_torsional_deriv | ( | pose::Pose & | pose, |
CartesianMinimizerMap & | min_map, | ||
core::scoring::ScoreFunction const & | scorefxn, | ||
Multivec & | dE_dvars, | ||
core::Real | scale | ||
) |
References core::pose::Pose::conformation(), core::scoring::ScoreFunction::eval_dof_derivative(), core::optimization::CartesianMinimizerMap::get_atom_index(), core::optimization::CartesianMinimizerMap::get_dof_id(), core::conformation::Conformation::get_torsion_angle_atom_ids(), core::optimization::CartesianMinimizerMap::get_TorsionID(), core::optimization::CartesianMinimizerMap::ntorsions(), tors_deriv_to_cartesian(), and core::pose::Pose::xyz().
Referenced by cartesian_dfunc().
void core::optimization::cartesian_dfunc | ( | pose::Pose & | pose, |
CartesianMinimizerMap & | min_map, | ||
scoring::ScoreFunction const & | scorefxn, | ||
Multivec const & | vars, | ||
Multivec & | dE_dvars | ||
) |
References cartesian_collect_atompairE_deriv(), cartesian_collect_torsional_deriv(), core::pose::Pose::conformation(), core::optimization::CartesianMinimizerMap::copy_dofs_to_pose(), core::scoring::ScoreFunction::finalize_after_derivatives(), core::conformation::symmetry::is_symmetric(), core::optimization::CartesianMinimizerMap::ndofs(), core::scoring::ScoreFunction::setup_for_derivatives(), and core::optimization::CartesianMinimizerMap::zero_stored_derivs().
Referenced by core::optimization::CartesianMultifunc::dfunc().
bool core::optimization::cmp_particles | ( | ParticleOP | a, |
ParticleOP | b | ||
) |
Referenced by core::optimization::ParticleSwarmMinimizer::run().
bool core::optimization::DOF_Node_sorter | ( | DOF_NodeCOP | a, |
DOF_NodeCOP | b | ||
) |
Referenced by core::optimization::MinimizerMap::setup().
void core::optimization::numerical_derivative_check | ( | MinimizerMap const & | min_map, |
Multifunc const & | func, | ||
Multivec const & | start_vars, | ||
Multivec const & | dE_dvars, | ||
NumericalDerivCheckResultOP | deriv_check_result, | ||
bool const | verbose | ||
) |
References core::id::DOF_ID::atomno(), core::optimization::DOF_Node::atomno(), core::optimization::DOF_Node::atoms(), core::optimization::MinimizerMap::begin(), core::id::BOGUS_DOF_ID, core::optimization::DOF_Node::dof_id(), dot(), core::optimization::MinimizerMap::end(), core::chemical::element::F, core::chemical::element::I, core::optimization::MinimizerMap::nangles(), norm(), core::optimization::DOF_Node::parent(), core::id::DOF_ID::rsd(), core::optimization::DOF_Node::rsd(), core::id::DOF_ID::type(), core::optimization::DOF_Node::type(), and vars.
Referenced by core::optimization::AtomTreeMultifunc::dfunc().
std::ostream & core::optimization::operator<< | ( | std::ostream & | os, |
Particle const & | p | ||
) |
stream output operator for Particle types
References core::chemical::element::F, core::optimization::Particle::fitness_, core::optimization::Particle::fitness_pbest(), and core::optimization::Particle::p_.
SimpleDerivCheckResult core::optimization::simple_numeric_deriv_check | ( | Multifunc const & | func, |
Multivec const & | start_vars, | ||
Multivec const & | dE_dvars, | ||
bool | send_to_stdout, | ||
bool | verbose, | ||
Size | nsteps | ||
) |
Numeric deriv check for Multifuncs other than the AtomTreeMultifunc.
References core::optimization::SimpleDerivCheckResult::abs_deriv_dev(), core::optimization::SimpleDerivCheckResult::best_abs_log_norm_ratio(), core::optimization::SimpleDerivCheckResult::best_cos_theta(), core::optimization::SimpleDerivCheckResult::best_norm_analytic(), core::optimization::SimpleDerivCheckResult::best_norm_numeric(), dot(), core::chemical::element::F, core::chemical::element::I, norm(), core::optimization::SimpleDerivCheckResult::rel_deriv_dev(), core::optimization::SimpleDerivCheckResult::step_data(), and vars.
void core::optimization::tors_deriv_to_cartesian | ( | Real | dE_dtor, |
VectorQuad const & | coords, | ||
VectorQuad & | dE_dxs | ||
) |
Real core::optimization::torsional_derivative_from_cartesian_derivatives | ( | kinematics::tree::Atom const & | atom, |
optimization::DOF_Node const & | dof_node, | ||
Real | dof_deriv, | ||
Real | torsion_scale_factor | ||
) |
Refactored from atom_tree_dfunc above for use in alternate minimization contexts
References cross(), numeric::constants::d::deg2rad, core::kinematics::tree::Atom::dof(), dot(), core::optimization::DOF_Node::F1(), core::optimization::DOF_Node::F2(), core::kinematics::tree::Atom::get_dof_axis_and_end_pos(), core::chemical::PHI, numeric::constants::f::pi, pi, core::id::RB4, core::id::RB5, core::id::RB6, core::chemical::THETA, type, and core::optimization::DOF_Node::type().
Referenced by atom_tree_dfunc(), core::optimization::symmetry::atom_tree_dfunc(), and core::pack::scmin::SCMinMultifunc::dfunc().
Return true with given probability.
References RG, and numeric::random::RandomGenerator::uniform().
Referenced by core::optimization::GA_Minimizer::cross_over(), core::optimization::GA_Minimizer::mutate(), and core::optimization::GA_Minimizer::step().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
Referenced by core::optimization::Minimizer::dfpmin(), core::optimization::Minimizer::dfpmin_armijo(), core::optimization::Minimizer::lbfgs(), core::optimization::GA_Minimizer::loop(), core::optimization::GA_Minimizer::run(), core::optimization::JJH_Minimizer::run(), and core::optimization::GA_Minimizer::step().