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
RemoveRigidMotionOptimizerState.h
Go to the documentation of this file.
1
/**
2
* \file IMP/atom/RemoveRigidMotionOptimizerState.h
3
* \brief Remove rigid rotation and translation during molecular dynamics.
4
*
5
* Copyright 2007-2014 IMP Inventors. All rights reserved.
6
*
7
*/
8
9
#ifndef IMPATOM_REMOVE_RIGID_MOTION_OPTIMIZER_STATE_H
10
#define IMPATOM_REMOVE_RIGID_MOTION_OPTIMIZER_STATE_H
11
12
#include <IMP/atom/atom_config.h>
13
#include <
IMP/kernel/Particle.h
>
14
#include <
IMP/base_types.h
>
15
#include <
IMP/OptimizerState.h
>
16
17
IMPATOM_BEGIN_NAMESPACE
18
19
//! Removes rigid translation and rotation from the particles.
20
class
IMPATOMEXPORT
RemoveRigidMotionOptimizerState
:
public
OptimizerState
{
21
public
:
22
RemoveRigidMotionOptimizerState
(
kernel::Model
*m,
23
kernel::ParticleIndexesAdaptor
pis);
24
25
//! Set the particles to use.
26
void
set_particles
(
const
kernel::Particles
&pis) { pis_ = pis; }
27
28
//! Remove rigid motion now
29
void
remove_rigid_motion()
const
;
30
31
IMP_OBJECT_METHODS
(
RemoveRigidMotionOptimizerState
);
32
33
protected
:
34
virtual
void
do_update
(
unsigned
int
call) IMP_OVERRIDE;
35
36
private
:
37
void
remove_linear()
const
;
38
void
remove_angular()
const
;
39
kernel::Particles
pis_;
40
41
//! Keys of the xyz velocities
42
FloatKey
vs_[3];
43
};
44
45
IMP_OBJECTS
(
RemoveRigidMotionOptimizerState
,
RemoveRigidMotionOptimizerStates
);
46
47
IMPATOM_END_NAMESPACE
48
49
#endif
/* IMPATOM_REMOVE_RIGID_MOTION_OPTIMIZER_STATE_H */
IMP::kernel::Key< 0, true >
base_types.h
Import IMP/kernel/base_types.h in the namespace.
IMP::kernel::OptimizerState::do_update
virtual void do_update(unsigned int)
Definition:
kernel/OptimizerState.h:119
IMP::atom::RemoveRigidMotionOptimizerState::set_particles
void set_particles(const kernel::Particles &pis)
Set the particles to use.
Definition:
RemoveRigidMotionOptimizerState.h:26
IMP::kernel::OptimizerState
Shared optimizer state that is invoked upon commitment of new coordinates.
Definition:
kernel/OptimizerState.h:43
IMP::base::Vector< base::Pointer< Particle > >
IMP::kernel::ParticleIndexesAdaptor
Definition:
kernel/particle_index.h:50
IMP::atom::RemoveRigidMotionOptimizerState
Removes rigid translation and rotation from the particles.
Definition:
RemoveRigidMotionOptimizerState.h:20
IMP_OBJECT_METHODS
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition:
base/object_macros.h:25
Particle.h
Classes to handle individual model particles.
IMP_OBJECTS
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing sets of objects.
Definition:
base/object_macros.h:52
OptimizerState.h
Import IMP/kernel/OptimizerState.h in the namespace.
IMP::kernel::Model
Class for storing model, its restraints, constraints, and particles.
Definition:
kernel/Model.h:72