Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Fa_MbenvEnergy.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 // This file is part of the Rosetta software suite and is made available under license.
5 // The Rosetta software is developed by the contributing members of the Rosetta Commons consortium.
6 // (C) 199x-2009 Rosetta Commons participating institutions and developers.
7 // For more information, see http://www.rosettacommons.org/.
8 
9 /// @file core/scoring/methods/Fa_MbenvEnergy.hh
10 /// @author Patrick Barth
11 
12 
13 #ifndef INCLUDED_core_scoring_methods_Fa_MbenvEnergy_hh
14 #define INCLUDED_core_scoring_methods_Fa_MbenvEnergy_hh
15 
16 // Unit headers
19 
20 // Package headers
24 //#include <core/scoring/MembranePotential.fwd.hh>
28 
29 // Project headers
30 #include <core/pose/Pose.fwd.hh>
31 
32 #include <ObjexxFCL/FArray1.fwd.hh>
33 
34 #include <utility/vector1.hh>
35 
36 
37 namespace core {
38 namespace scoring {
39 namespace methods {
40 
41 
43 public:
45 public:
46 
47  Fa_MbenvEnergy( etable::MembEtable const & memb_etable_in );
48 
49  virtual
50  EnergyMethodOP clone() const;
51 
52  virtual
53  void residue_energy( conformation::Residue const & rsd, pose::Pose const & pose, EnergyMap & emap ) const;
54 
55  virtual
56  void
58  pose::Pose & pose,
59  ScoreFunction const &,
60  EnergyMap & emap
61  ) const;
62 
63  virtual
64  void
66  pose::Pose & pose,
67  ScoreFunction const & scfxn
68  ) const;
69 
70  virtual
71  void
73  id::AtomID const & id,
74  pose::Pose const & pose,
75  kinematics::DomainMap const & domain_map,
76  ScoreFunction const & sfxn,
77  EnergyMap const & emap,
78  Vector & F1,
79  Vector & F2
80  ) const;
81 
82  ///@brief Fa_MbenvEnergy is context independent; indicates that no context graphs are required
83  virtual
85 
86 
89  MembraneEmbed const & MembraneEmbed_from_pose( pose::Pose const & ) const;
90 
91 
92  void
94  pose::Pose & pose,
95  ScoreFunction const &
96  ) const;
97 
98 private:
99 
100 
101  Real
103  conformation::Atom const & atom1,
104  Real const & f1
105  ) const;
106 
107 private:
108 
110 
111  //taken from the MembEtable
112  ObjexxFCL::FArray1< Real > const & lk_dgrefce_;
113  ObjexxFCL::FArray1< Real > const & memb_lk_dgrefce_;
114 
116  mutable Real fa_mbenv_weight_; // hold this while calculating derivatives.
117 virtual
118 core::Size version() const;
119 
120 };
121 
122 } // methods
123 } // scoring
124 } // core
125 
126 
127 #endif // INCLUDED_core_scoring_methods_Fa_MbenvEnergy_HH