Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CenHBEnergy.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/CenHBEnergy.hh
11 /// @brief Smooth, differentiable version of centroid hbond term
12 /// @author Frank DiMaio
13 
14 
15 #ifndef INCLUDED_core_scoring_methods_CenHBEnergy_hh
16 #define INCLUDED_core_scoring_methods_CenHBEnergy_hh
17 
18 // Unit Headers
21 
22 // Package headers
24 // AUTO-REMOVED #include <core/scoring/methods/EnergyMethodOptions.fwd.hh>
25 // AUTO-REMOVED #include <core/scoring/AtomVDW.fwd.hh>
27 
28 
29 // Project headers
30 #include <core/pose/Pose.fwd.hh>
31 
32 #include <utility/vector1.hh>
33 
34 
35 // Utility headers
36 
37 
38 namespace core {
39 namespace scoring {
40 namespace methods {
41 
42 ///
44 public:
46 public:
47 
48  /// @brief C-tor, requires options to tell us the atom_type_set_name for the AtomVDW data
49  CenHBEnergy( );
50 
51 
52  /// clone
53  virtual
55  clone() const;
56 
57  /// @brief COPY C-TOR
58  CenHBEnergy( CenHBEnergy const & src );
59 
60 
61  /////////////////////////////////////////////////////////////////////////////
62  // scoring
63  /////////////////////////////////////////////////////////////////////////////
64 
65  virtual
66  void
67  setup_for_scoring( pose::Pose & pose, ScoreFunction const & ) const;
68 
69  virtual
70  void
71  setup_for_derivatives( pose::Pose & pose, ScoreFunction const & ) const;
72 
73  virtual
74  void
76  conformation::Residue const & rsd1,
77  conformation::Residue const & rsd2,
78  pose::Pose const & pose,
79  ScoreFunction const &,
80  EnergyMap & emap
81  ) const;
82 
83 
84  virtual
85  void
87  conformation::Residue const & rsd1,
88  conformation::Residue const & rsd2,
91  ResPairMinimizationData const & min_data,
92  pose::Pose const & pose, // provides context
93  EnergyMap const & weights,
94  utility::vector1< DerivVectorPair > & r1_atom_derivs,
96  ) const;
97 
98 
99  virtual
100  bool
101  defines_intrares_energy( EnergyMap const & /*weights*/ ) const { return false; }
102 
103  void
105  conformation::Residue const &,
106  pose::Pose const &,
107  ScoreFunction const &,
108  EnergyMap &
109  ) const {}
110 
111  virtual
112  Distance
114 
115  virtual
116  void indicate_required_context_graphs( utility::vector1< bool > & context_graphs_required ) const;
117 
118  /////////////////////////////////////////////////////////////////////////////
119  // data
120  /////////////////////////////////////////////////////////////////////////////
121 
122 private:
124 
125  virtual core::Size version() const;
126 };
127 
128 
129 }
130 }
131 }
132 
133 #endif // INCLUDED_core_scoring_ScoreFunction_HH