Rosetta 3.5
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
core
pack
scmin
CartSCMinMultifunc.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/pack/scmin/CartSCMinMultifunc.hh
11
/// @brief Class for interfacing with the minimizer during sidechain minimization.
12
/// @author Andrew Leaver-Fay (aleaverfay@gmail.com)
13
14
#ifndef INCLUDED_core_pack_scmin_CartSCMinMultifunc_hh
15
#define INCLUDED_core_pack_scmin_CartSCMinMultifunc_hh
16
17
// Unit headers
18
#include <
core/pack/scmin/CartSCMinMultifunc.fwd.hh
>
19
20
// Package Headers
21
#include <
core/pack/scmin/SCMinMinimizerMap.fwd.hh
>
22
#include <
core/pack/scmin/CartSCMinMinimizerMap.fwd.hh
>
23
24
// Project Headers
25
#include <
core/types.hh
>
26
#include <
core/conformation/Residue.fwd.hh
>
27
#include <
core/optimization/Multifunc.hh
>
28
#include <
core/pose/Pose.fwd.hh
>
29
#include <
core/scoring/MinimizationGraph.fwd.hh
>
30
#include <
core/scoring/ScoreFunction.fwd.hh
>
31
32
// Utility headers
33
#include <utility/vector1.hh>
34
#include <utility/pointer/ReferenceCount.hh>
35
36
#include <
core/scoring/ScoreType.hh
>
37
38
39
namespace
core {
40
namespace
pack {
41
namespace
scmin {
42
43
/// @brief
44
class
CartSCMinMultifunc
:
public
optimization::Multifunc
45
{
46
public
:
47
typedef
optimization::Multivec
Multivec
;
48
public
:
49
/// @brief Constructor. The pose is only modified during setup-for-scoring calls. Its
50
/// residue objects are untouched (though they are accessed). The CartSCMinMultifunc modifies
51
/// the residues that are contained in the SCMinMinimizerMap's AtomTreeCollection. The
52
/// minmap also describes which degrees of freedom are free.
53
/// The minimization graph should have already been setup so that its edges connect all
54
/// neighboring residues which will be involved in the minimization:
55
/// any residue that's being minimized must have all of its neighbors represented by
56
/// edges in the graph. Active edges and nodes must already have had
57
/// "setup_for_minimizing_for_{residue/residue_pair}" invoked: basically,
58
/// the CartSCMinMultifunc is absolved of all responsibility for setting up.
59
CartSCMinMultifunc
(
60
pose::Pose
& p,
61
utility::vector1< conformation::ResidueCOP >
const
& bg_residues,
62
scoring::ScoreFunction
const
& sfxn,
63
scoring::MinimizationGraph
& mingraph,
64
SCMinMinimizerMap
& scminmap
65
);
66
67
virtual
~CartSCMinMultifunc
();
68
69
virtual
70
Real
71
operator ()
(
Multivec
const
& chi )
const
;
72
73
74
virtual
75
void
76
dfunc
(
Multivec
const
& chi,
Multivec
& dE_dchi )
const
;
77
78
virtual
79
bool
80
abort_min
(
Multivec
const
& )
const
;
81
82
using
optimization::Multifunc::dump
;
83
84
/// @brief Error state reached; dump out something corresponding to the
85
/// var assignment. Default base class implementation: no_op();
86
virtual
87
void
88
dump
(
Multivec
const
&
/*vars*/
,
Multivec
const
&
/*vars2*/
)
const
;
89
90
private
:
91
pose::Pose
&
pose_
;
92
utility::vector1< conformation::ResidueCOP >
const
&
bg_residues_
;
93
scoring::ScoreFunction
const
&
sfxn_
;
94
scoring::MinimizationGraph
&
g_
;
95
CartSCMinMinimizerMap
&
scminmap_
;
96
97
//mutable scoring::EnergyMap emap_;
98
scoring::ScoreTypes
scoretypes_
;
99
};
100
101
102
103
}
// namespace scmin
104
}
// namespace pack
105
}
// namespace core
106
107
#endif
Generated on Sat Jun 1 2013 11:33:49 for Rosetta 3.5 by
1.8.4