IMP
2.3.1
The Integrative Modeling Platform
IMP Mainpage
Modules
Applications
Related Pages
Groups
Classes
Files
Examples
Indexes
File List
File Members
IMP
Modules
Applications
All IMP Applications
Argument Index
Class Examples
Factory Index
Function Examples
Design example
Developer Guide
Installation
Introduction
Publications
ChangeLog
Tools
Dependencies
PMI changelog
Deprecated List
Groups
Classes
Files
File List
File Members
Examples
Indexes
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 member.
Definition:
Pointer.h:147
IMP_OBJECT_METHODS
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition:
object_macros.h:25
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:
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::kernel::Particle
Class to handle individual model particles.
Definition:
kernel/Particle.h:37
Particle.h
Classes to handle individual model particles. (Note that implementation of inline functions in in int...
IMP::kernel::ModelObject::do_get_inputs
virtual ModelObjectsTemp do_get_inputs() const =0
IMP_OVERRIDE
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
Definition:
compiler_macros.h:75
generic.h
Import IMP/kernel/generic.h in the namespace.