IMP
2.2.0
The Integrative Modeling Platform
IMP Mainpage
All IMP Modules
Related Pages
Modules
Namespaces
Classes
Files
Examples
Indexes
File List
File Members
DihedralRestraint.h
Go to the documentation of this file.
1
/**
2
* \file IMP/core/DihedralRestraint.h
3
* \brief Dihedral restraint between four particles.
4
*
5
* Copyright 2007-2014 IMP Inventors. All rights reserved.
6
*
7
*/
8
9
#ifndef IMPCORE_DIHEDRAL_RESTRAINT_H
10
#define IMPCORE_DIHEDRAL_RESTRAINT_H
11
12
#include <IMP/core/core_config.h>
13
14
#include <
IMP/UnaryFunction.h
>
15
#include <
IMP/kernel/Restraint.h
>
16
#include <
IMP/kernel/Particle.h
>
17
#include <
IMP/generic.h
>
18
19
IMPCORE_BEGIN_NAMESPACE
20
21
//! Dihedral restraint between four particles
22
class
IMPCOREEXPORT
DihedralRestraint
:
public
kernel::Restraint
{
23
public
:
24
//! Create the dihedral restraint.
25
/** \param[in] score_func Scoring function for the restraint.
26
\param[in] p1 Pointer to first particle in dihedral restraint.
27
\param[in] p2 Pointer to second particle in dihedral restraint.
28
\param[in] p3 Pointer to third particle in dihedral restraint.
29
\param[in] p4 Pointer to fourth particle in dihedral restraint.
30
*/
31
DihedralRestraint
(
UnaryFunction
* score_func,
kernel::Particle
* p1,
32
kernel::Particle
* p2,
kernel::Particle
* p3,
33
kernel::Particle
* p4);
34
35
virtual
double
unprotected_evaluate(
IMP::kernel::DerivativeAccumulator
* accum)
36
const
IMP_OVERRIDE;
37
virtual
IMP::kernel::ModelObjectsTemp
do_get_inputs
()
const
IMP_OVERRIDE;
38
IMP_OBJECT_METHODS
(
DihedralRestraint
);
39
40
private
:
41
IMP::base::PointerMember<UnaryFunction>
score_func_;
42
IMP::base::PointerMember<kernel::Particle>
p_[4];
43
};
44
45
IMPCORE_END_NAMESPACE
46
47
#endif
/* IMPCORE_DIHEDRAL_RESTRAINT_H */
IMP::kernel::DerivativeAccumulator
Class for adding derivatives from restraints to the model.
Definition:
kernel/DerivativeAccumulator.h:25
IMP::base::PointerMember
A smart pointer to a ref-counted Object that is a class memeber.
Definition:
base/Pointer.h:147
UnaryFunction.h
Import IMP/kernel/UnaryFunction.h in the namespace.
IMP::core::DihedralRestraint
Dihedral restraint between four particles.
Definition:
DihedralRestraint.h:22
IMP::kernel::UnaryFunction
Abstract single variable functor class for score functions.
Definition:
kernel/UnaryFunction.h:25
IMP::base::Vector
Definition:
base/Vector.h:37
Restraint.h
Abstract base class for all restraints.
IMP::kernel::Restraint
A restraint is a term in an IMP ScoringFunction.
Definition:
kernel/Restraint.h:52
IMP_OBJECT_METHODS
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition:
base/object_macros.h:25
IMP::kernel::Particle
Class to handle individual model particles.
Definition:
kernel/Particle.h:34
Particle.h
Classes to handle individual model particles.
IMP::kernel::ModelObject::do_get_inputs
virtual ModelObjectsTemp do_get_inputs() const =0
generic.h
Import IMP/kernel/generic.h in the namespace.