Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PcsEnergy.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  //////////////////////////////////////////////
11  /// @begin
12  ///
13  /// @file protocols/scoring/methods/pcs2/PcsEnergy.hh
14  ///
15  /// @brief
16  ///
17  /// @detailed
18  ///
19  /// @param
20  ///
21  /// @return
22  ///
23  /// @remarks
24  ///
25  /// @references
26  ///
27  /// @authorsv Christophe Schmitz
28  ///
29  /// @last_modified February 2010
30  ////////////////////////////////////////////////
31 
32 
33 #ifndef INCLUDED_protocols_scoring_methods_pcs2_PcsEnergy_hh
34 #define INCLUDED_protocols_scoring_methods_pcs2_PcsEnergy_hh
35 
36 // Package headers
37 //#include <protocols/scoring/methods/pcs2/PcsEnergy.fwd.hh>
38 
43 // AUTO-REMOVED #include <protocols/scoring/methods/pcs2/PcsDataLanthanide.fwd.hh>
45 
46 // Project headers
49 
50 // Utility headers
51 
52 // Numeric headers
53 #include <numeric/xyzVector.fwd.hh>
54 
55 #include <utility/vector1.hh>
56 
57 
58 // Objexx headers
59 
60 // C++ headers
61 
62 
63 namespace protocols {
64 namespace scoring {
65 namespace methods {
66 namespace pcs2 {
67 
69 public:
71 
72 public:
73 
74  PcsEnergy(); //Construct
75 
76  ~PcsEnergy(); //Destruct
77 
78  PcsEnergy & // =
79  operator=(PcsEnergy const & other);
80 
81  PcsEnergy(PcsEnergy const & other); //copy
82 
84  clone() const; // Clone
85 
86  void
88 
89  /// @brief This is called to start the PCS machinerie and get the score (set in totals)
90  void
92  core::pose::Pose & pose,
95  ) const;
96 
97  /// @brief Return the PCS score given the pose, the given PcsDataCenter, and the lanthanide number
100  bool print_to_tracer,
101  PcsDataCenter & pcs_d,
102  core::Size i_multi_data,
103  GridSearchIteratorCA & grid_it ) const;
104 
105 
106  /// @brief Return the PCS score given the pose, the given PcsDataCenter, and the lanthanide number,
107  /// return the vec of best score, vec of best tensor, and the vec of best x-y-z coordinate
108  core::Real
110  utility::vector1<core::Real> & vec_best_score,
111  utility::vector1<PcsTensor> & vec_best_tensor,
113  core::pose::Pose const & pdb,
114  PcsDataCenter & pcs_d,
115  core::Size i_multi_data,
116  GridSearchIteratorCA & grid_it
117  ) const;
118 
119  core::Real
121  utility::vector1<PcsTensor> & vec_best_tensor,
123  core::pose::Pose const & /* pdb*/,
124  PcsDataCenter & pcs_d_c,
125  core::Size,
126  GridSearchIteratorCA & grid_it) const;
127 
128 
129  core::Real
131  utility::vector1<PcsTensor> & vec_best_tensor,
133  PcsDataCenter const & pcs_d,
134  core::optimization::Minimizer & minimizer,
135  utility::vector1<core::Real> & vect_to_opti
136  ) const;
137 
138  core::Real
141  PcsDataCenter const & /*pcs_d_c*/,
142  core::optimization::Minimizer & minimizer,
143  utility::vector1<core::Real> & vect_to_opti
144  ) const;
145 
146  core::Real
148  utility::vector1<PcsTensor> & vec_best_tensor,
149  PcsDataCenter const & pcs_d/*,
150  core::Real xM,
151  core::Real yM,
152  core::Real zM*/
153  ) const;
154 
155 
156  /* core::Real
157  calculate_single_score_and_tensor_from_PCS_data_per_lanthanides(
158  PcsTensor & PCS_t,
159  PcsDataLanthanide & pcs_d_p_l
160  ) const; */
161 
162 
165 
168 
169  void
171  utility::vector1<PcsTensor> const & vec_tensor,
172  numeric::xyzVector< core::Real > const & best_coo,
173  PcsDataCenter const &pcs_d
174  ) const;
175 virtual
176 core::Size version() const;
177 };
178 
179 } //PCS
180 } //methods
181 } //scoring
182 } //core
183 
184 #endif