Rosetta 3.4
Namespaces | Classes | Typedefs | Functions
core::optimization Namespace Reference

Namespaces

namespace  symmetry

Classes

class  AtomNode
class  AtomTreeMinimizer
 High-level atom tree minimizer class. More...
class  AtomTreeMultifunc
 Atom tree multifunction class. More...
class  CartesianMinimizer
 High-level atom tree minimizer class. More...
class  CartesianMinimizerMap
class  CartesianMultifunc
 Atom tree multifunction class. More...
class  DOF_Node
class  EItem
 Inner class for Genetic Algorithm, hold one population with some additional info. More...
class  GA_Minimizer
class  func_1d
class  LineMinimizationAlgorithm
class  BrentLineMinimization
class  ArmijoLineMinimization
class  StrongWolfeLineMinimization
class  ConvergenceTest
class  DFPMinConvergedFractional
class  DFPMinConvergedAbsolute
class  DescentDirectionAlgorithm
class  JJH_Minimizer
class  lbfgs_iteration_data
class  Minimizer
 Simple low-level minimizer class. More...
class  MinimizerMap
class  MinimizerOptions
class  Multifunc
 Multifunction interface class. More...
class  DerivCheckDataPoint
class  SimpleDerivCheckResult
class  DOF_DataPoint
class  NumDerivCheckData
class  NumericalDerivCheckResult
class  Particle
 Simple data container for PSO algorithm. More...
class  ParticleSwarmMinimizer
 Particle Swarm Optimization engine. More...
class  SingleResidueMultifunc
 A streamlined AtomTreeMultifunc designed specifically for RTMIN. More...

Typedefs

typedef
utility::pointer::owning_ptr
< AtomTreeMinimizer
AtomTreeMinimizerOP
typedef
utility::pointer::owning_ptr
< AtomTreeMinimizer const > 
AtomTreeMinimizerCOP
typedef
utility::pointer::owning_ptr
< CartesianMinimizer
CartesianMinimizerOP
typedef
utility::pointer::owning_ptr
< CartesianMinimizer const > 
CartesianMinimizerCOP
typedef
utility::pointer::owning_ptr
< CartesianMinimizerMap
CartesianMinimizerMapOP
typedef
utility::pointer::owning_ptr
< CartesianMinimizerMap const > 
CartesianMinimizerMapCOP
typedef
utility::pointer::owning_ptr
< DOF_Node
DOF_NodeOP
typedef
utility::pointer::owning_ptr
< DOF_Node const > 
DOF_NodeCOP
typedef
utility::pointer::owning_ptr
< LineMinimizationAlgorithm
LineMinimizationAlgorithmOP
typedef
utility::pointer::owning_ptr
< LineMinimizationAlgorithm
const > 
LineMinimizationAlgorithmCOP
typedef
utility::pointer::owning_ptr
< MinimizerMap
MinimizerMapOP
typedef
utility::pointer::owning_ptr
< MinimizerMap const > 
MinimizerMapCOP
typedef
utility::pointer::owning_ptr
< MinimizerOptions
MinimizerOptionsOP
typedef
utility::pointer::owning_ptr
< MinimizerOptions const > 
MinimizerOptionsCOP
typedef
utility::pointer::owning_ptr
< Multifunc
MultifuncOP
typedef
utility::pointer::owning_ptr
< Multifunc const > 
MultifuncCOP
typedef
utility::pointer::owning_ptr
< SimpleDerivCheckResult
SimpleDerivCheckResultOP
typedef
utility::pointer::owning_ptr
< SimpleDerivCheckResult const > 
SimpleDerivCheckResultCOP
typedef
utility::pointer::owning_ptr
< NumDerivCheckData
NumDerivCheckDataOP
typedef
utility::pointer::owning_ptr
< NumDerivCheckData const > 
NumDerivCheckDataCOP
typedef
utility::pointer::owning_ptr
< NumericalDerivCheckResult
NumericalDerivCheckResultOP
typedef
utility::pointer::owning_ptr
< NumericalDerivCheckResult
const > 
NumericalDerivCheckResultCOP
typedef
utility::pointer::owning_ptr
< Particle
ParticleOP
typedef
utility::pointer::owning_ptr
< Particle const > 
ParticleCOP
typedef utility::vector1
< ParticleOP
ParticleOPs
typedef
utility::pointer::owning_ptr
< ParticleSwarmMinimizer
ParticleSwarmMinimizerOP
typedef
utility::pointer::owning_ptr
< ParticleSwarmMinimizer const > 
ParticleSwarmMinimizerCOP
typedef utility::vector1< RealMultivec

Functions

static basic::Tracer TR ("core.optimization")
void atom_tree_dfunc (pose::Pose &pose, MinimizerMap &min_map, scoring::ScoreFunction const &scorefxn, Multivec const &vars, Multivec &dE_dvars)
Real torsional_derivative_from_cartesian_derivatives (kinematics::tree::Atom const &atom, optimization::DOF_Node const &dof_node, Real dof_deriv, Real torsion_scale_factor)
void atom_tree_get_atompairE_deriv (pose::Pose &pose, MinimizerMap &min_map, scoring::ScoreFunction const &scorefxn)
SimpleDerivCheckResult simple_numeric_deriv_check (Multifunc const &func, Multivec const &start_vars, Multivec const &dE_dvars, bool send_to_stdout, bool verbose, Size nsteps=5)
 Numeric deriv check for Multifuncs other than the AtomTreeMultifunc.
void 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)
void cartesian_dfunc (pose::Pose &pose, CartesianMinimizerMap &min_map, scoring::ScoreFunction const &scorefxn, Multivec const &vars, Multivec &dE_dvars)
void cartesian_collect_atompairE_deriv (pose::Pose &pose, CartesianMinimizerMap &min_map, scoring::ScoreFunction const &scorefxn, Multivec &dE_dvars, core::Real scale)
void cartesian_collect_torsional_deriv (pose::Pose &pose, CartesianMinimizerMap &min_map, core::scoring::ScoreFunction const &scorefxn, Multivec &dE_dvars, core::Real scale)
void 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)
static basic::Tracer TR ("core.optimization.GA_Minimizer")
static
numeric::random::RandomGenerator 
RG (740)
static bool yes_no_random (Real probability)
 Return true with given probability.
static basic::Tracer TR ("core.optimization.LineMinimizer")
bool DOF_Node_sorter (DOF_NodeCOP a, DOF_NodeCOP b)
std::ostream & operator<< (std::ostream &os, Particle const &p)
 stream output operator for Particle types
bool cmp_particles (ParticleOP a, ParticleOP b)

Typedef Documentation


Function Documentation

void core::optimization::atom_tree_dfunc ( pose::Pose pose,
MinimizerMap &  min_map,
scoring::ScoreFunction const &  scorefxn,
Multivec const &  vars,
Multivec &  dE_dvars 
)
Detailed:
car note that this calculates the deriv for all torsion angles even car those that are fixed. Because of the way that the derivative is car calculated, I don't believe this is a significant slow down (ie car have to run over all the atom pairs twice, regardless of the number car of torsion angles)

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 
)
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 
)
void core::optimization::cartesian_collect_atompairE_deriv ( pose::Pose pose,
CartesianMinimizerMap min_map,
scoring::ScoreFunction const &  scorefxn,
Multivec dE_dvars,
core::Real  scale 
)
void core::optimization::cartesian_collect_torsional_deriv ( pose::Pose pose,
CartesianMinimizerMap min_map,
core::scoring::ScoreFunction const &  scorefxn,
Multivec dE_dvars,
core::Real  scale 
)
void core::optimization::cartesian_dfunc ( pose::Pose pose,
CartesianMinimizerMap min_map,
scoring::ScoreFunction const &  scorefxn,
Multivec const &  vars,
Multivec dE_dvars 
)
bool core::optimization::cmp_particles ( ParticleOP  a,
ParticleOP  b 
)
bool core::optimization::DOF_Node_sorter ( DOF_NodeCOP  a,
DOF_NodeCOP  b 
)
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 
)
std::ostream & core::optimization::operator<< ( std::ostream &  os,
Particle const &  p 
)
static numeric::random::RandomGenerator core::optimization::RG ( 740  ) [static]

Referenced by yes_no_random().

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 
)
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 
)
static basic::Tracer core::optimization::TR ( "core.optimization"  ) [static]
static basic::Tracer core::optimization::TR ( "core.optimization.GA_Minimizer"  ) [static]
static basic::Tracer core::optimization::TR ( "core.optimization.LineMinimizer"  ) [static]
static bool core::optimization::yes_no_random ( Real  probability) [static]

Return true with given probability.

References RG().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines