home
about
news
download
doc
source
systems
tests
bugs
contact
IMP Reference Guide
2.6.1
The Integrative Modeling Platform
IMP Manual
Reference Guide
Modules
Classes
Examples
include
IMP
kinematics
CCDLoopClosure.h
Go to the documentation of this file.
1
/**
2
* \file IMP/kinematics/CCDLoopClosure.h
3
* \brief
4
*
5
* \authors Dina Schneidman, Yannick Spill
6
* Copyright 2007-2016 IMP Inventors. All rights reserved.
7
*
8
*/
9
10
#ifndef IMPKINEMATICS_CCD_LOOP_CLOSURE_H
11
#define IMPKINEMATICS_CCD_LOOP_CLOSURE_H
12
13
#include "kinematics_config.h"
14
#include <
IMP/kinematics/revolute_joints.h
>
15
#include <
IMP/algebra/Vector3D.h
>
16
17
IMPKINEMATICS_BEGIN_NAMESPACE
18
19
/**
20
CCD loop closure
21
see Canutescu and Dunbrack, Protein Science
22
*/
23
class
IMPKINEMATICSEXPORT
CCDLoopClosure
{
24
public
:
25
// F1-3 are the target points for closed loop
26
// M1-3 are the points in the model
27
CCDLoopClosure
(
DihedralAngleRevoluteJoints
joints,
28
const
algebra::Vector3D
& F1,
29
const
algebra::Vector3D
& F2,
30
const
algebra::Vector3D
& F3,
31
core::XYZ
M1,
core::XYZ
M2,
core::XYZ
M3);
32
33
bool
close_loop();
34
35
private
:
36
// computes the distance between target and mobile loop anchors
37
double
distance_function_S()
const
;
38
39
void
optimize_joint(
unsigned
int
joint_id);
40
41
private
:
42
DihedralAngleRevoluteJoints
joints_;
43
algebra::Vector3D
F1_, F2_, F3_;
// target loop anchors
44
core::XYZ
M1_, M2_, M3_;
// mobile version of loop anchors
45
46
};
47
48
IMPKINEMATICS_END_NAMESPACE
49
50
#endif
/* IMPKINEMATICS_CCD_LOOP_CLOSURE_H */
IMP::kinematics::CCDLoopClosure
Definition:
CCDLoopClosure.h:23
IMP::Vector< IMP::Pointer< DihedralAngleRevoluteJoint > >
IMP::core::XYZ
A decorator for a particle with x,y,z coordinates.
Definition:
XYZ.h:30
IMP::algebra::Vector3D
VectorD< 3 > Vector3D
Definition:
VectorD.h:395
Vector3D.h
Simple 3D vector class.
revolute_joints.h
functionality for defining various revolute kinematic joints between rigid bodies as part of a kinema...