Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ResidualDipolarCouplingEnergyRigidSegments.hh
Go to the documentation of this file.
1 // -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2 // vi: set ts=2 noet:
3 //
4 // (c) Copyright Rosetta Commons Member Institutions.
5 // (c) This file is part of the Rosetta software suite and is made available under license.
6 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9 
10 /// @file core/scoring/methods/ResidualDipolarCouplingEnergyRigidSegments.hh
11 /// @brief RDC energy - comparing experimental RDC values to calculated values
12 /// @author Srivatsan Raman
13 
14 
15 #ifndef INCLUDED_core_scoring_methods_ResidualDipolarCouplingEnergyRigidSegments_hh
16 #define INCLUDED_core_scoring_methods_ResidualDipolarCouplingEnergyRigidSegments_hh
17 
18 // Package headers
20 #include <core/scoring/ResidualDipolarCouplingRigidSegments.fwd.hh>
22 
23 // Project headers
24 #include <core/pose/Pose.fwd.hh>
26 
28 #include <core/id/AtomID_Map.hh>
29 
30 // AUTO-REMOVED #include <utility/vector1.hh>
31 
32 //Objexx headers
33 // AUTO-REMOVED #include <ObjexxFCL/format.hh>
34 // AUTO-REMOVED #include <ObjexxFCL/char.functions.hh>
35 // AUTO-REMOVED #include <ObjexxFCL/string.functions.hh>
36 // AUTO-REMOVED #include <ObjexxFCL/Fmath.hh>
37 
38 
39 // Utility headers
40 
41 
42 namespace core {
43 namespace scoring {
44 namespace methods {
45 
46 ///
48 public:
50 
51 public:
52 
54 
55  //clone
56  virtual
58  clone() const;
59 
60  /////////////////////////////////////////////////////////////////////////////
61  // scoring
62  /////////////////////////////////////////////////////////////////////////////
63  virtual
64  void
65  setup_for_scoring( pose::Pose &, ScoreFunction const & ) const;
66 
67  /// @brief Called at the beginning of atom tree minimization, this method
68  /// allows the derived class the opportunity to initialize pertinent data
69  /// that will be used during minimization. During minimzation, the chemical
70  /// structure of the pose is constant, so assumptions on the number of atoms
71  /// per residue and their identities are safe so long as the pose's Energies
72  /// object's "use_nblist()" method returns true.
73  virtual
74  void
76  pose::Pose & ,
77  ScoreFunction const & ,
79  ) const;
80 
81  void
83  pose::Pose & pose,
84  ScoreFunction const &,
85  EnergyMap & totals
86  ) const;
87 
88  void
90  utility::vector1< bool > & /*context_graphs_required*/
91  ) const {}
92 
93  private:
94 
95  ResidualDipolarCouplingRigidSegments& rdc_from_pose(
96  pose::Pose & pose
97  ) const;
98 
100  pose::Pose & pose
101  ) const;
102 
103  virtual void eval_atom_derivative(
104  id::AtomID const & id,
105  pose::Pose const & pose,
106  kinematics::DomainMap const & domain_map,
107  ScoreFunction const & sfxn,
108  EnergyMap const & weights,
109  Vector & F1,
110  Vector & F2
111  ) const;
112 
113 private:
114 
115 //used by Energy Method during scoring... should this become part of ResidualDipolarCoupling and thus cached in the pose
116  mutable core::Real dip_score_; //computed in setup_for_scoring.. delivered in finalize
118 };
119 
120 } //methods
121 } //scoring
122 } //core
123 
124 #endif // INCLUDED_core_scoring_ScoreFunction_HH