IMP Reference Guide
develop.d97d4ead1f,2024/11/21
The Integrative Modeling Platform
|
#include <IMP/atom/Diffusion.h>
A rigid body that is diffusing, so it also has coordinates and a rotational diffusion coefficient. The units on the rotational coefficient are \(radians^2/fs\).
The translational and rotational diffusion coefficients are computed automatically using IMP::atom::get_einstein_diffusion_coefficient(radius) and IMP::atom::get_einstein_rotational_diffusion_coefficient(radius) for radius IMP::core::XYZR(m, pi).get_radius() and default IMP temperature of 297.15, but they can be overridden explicitly.
Note that different translational and rotational coefficients should probably be set manually if the temperature is not the default IMP temperature.
Definition at line 136 of file Diffusion.h.
Public Member Functions | |
RigidBodyDiffusion (::IMP::Model *m,::IMP::ParticleIndex id) | |
RigidBodyDiffusion (const IMP::ParticleAdaptor &d) | |
double | get_rotational_diffusion_coefficient () const |
returns the rotational diffusion coefficient in \(radians^2/fs\) More... | |
void | set_rotational_diffusion_coefficient (double d) const |
sets the rotational diffusion coefficient in \(radians^2/fs\) More... | |
void | show (std::ostream &out=std::cout) const |
Public Member Functions inherited from IMP::atom::Diffusion | |
Diffusion (::IMP::Model *m,::IMP::ParticleIndex id) | |
Diffusion (const IMP::ParticleAdaptor &d) | |
double | get_diffusion_coefficient () const |
get diffusion coefficient in \(A^2/fs\) More... | |
void | set_diffusion_coefficient (double d) |
set diffusion coefficient in \(A^2/fs\) More... | |
void | show (std::ostream &out=std::cout) const |
Public Member Functions inherited from IMP::core::XYZ | |
XYZ (::IMP::Model *m,::IMP::ParticleIndex id) | |
XYZ (const IMP::ParticleAdaptor &d) | |
void | add_to_derivative (int i, Float v, DerivativeAccumulator &d) |
void | add_to_derivatives (const algebra::Vector3D &v, DerivativeAccumulator &d) |
Add the vector v to the derivative vector of the x,y,z coordinates. More... | |
Float | get_coordinate (int i) const |
Get the ith coordinate. More... | |
const algebra::Vector3D & | get_coordinates () const |
Convert it to a vector. More... | |
bool | get_coordinates_are_optimized () const |
Get whether the coordinates are optimized. More... | |
Float | get_derivative (int i) const |
algebra::Vector3D | get_derivatives () const |
Get the vector of derivatives accumulated by add_to_derivatives(). More... | |
algebra::Vector3D | get_vector_to (const XYZ &b) const |
Get the vector from this particle to another. More... | |
Float | get_x () const |
Float | get_y () const |
Float | get_z () const |
void | set_coordinate (unsigned int i, Float v) |
set the ith coordinate More... | |
void | set_coordinates (const algebra::Vector3D &v) |
set all coordinates from a vector More... | |
void | set_coordinates_are_optimized (bool tf) const |
Set whether the coordinates are optimized. More... | |
void | set_x (Float t) |
void | set_y (Float t) |
void | set_z (Float t) |
void | show (std::ostream &out=std::cout) const |
Public Member Functions inherited from IMP::Decorator | |
bool | get_is_valid () const |
Returns true if constructed with a non-default constructor. More... | |
Model * | get_model () const |
Returns the Model containing the particle. More... | |
Particle * | get_particle () const |
Returns the particle decorated by this decorator. More... | |
ParticleIndex | get_particle_index () const |
Returns the particle index decorated by this decorator. More... | |
operator Particle * () const | |
operator ParticleIndex () const | |
Particle * | operator-> () const |
Static Public Member Functions | |
static bool | get_is_setup (const IMP::ParticleAdaptor &p) |
static bool | get_is_setup (Model *m, ParticleIndex p) |
Return true if the particle is an instance of an RigidBodyDiffusion. More... | |
static FloatKey | get_rotational_diffusion_coefficient_key () |
Get the D key. More... | |
static RigidBodyDiffusion | setup_particle (IMP::ParticleAdaptor pa) |
static RigidBodyDiffusion | setup_particle (Model *m, ParticleIndex pi) |
Static Public Member Functions inherited from IMP::atom::Diffusion | |
static FloatKey | get_diffusion_coefficient_key () |
Get the D key. More... | |
static bool | get_is_setup (const IMP::ParticleAdaptor &p) |
static bool | get_is_setup (Model *m, ParticleIndex p) |
Return true if the particle is an instance of Diffusion. More... | |
static Diffusion | setup_particle (Model *m, ParticleIndex pi, Float D) |
Setup the particle with the specified diffusion coefficient. More... | |
static Diffusion | setup_particle (IMP::ParticleAdaptor pa, Float D) |
static Diffusion | setup_particle (IMP::ParticleAdaptor pa, algebra::Vector3D v, Float D) |
static Diffusion | setup_particle (Model *m, ParticleIndex pi, algebra::Vector3D v, Float D) |
Setup the particle with the specified coordinates and diffusion coefficient. More... | |
static Diffusion | setup_particle (Model *m, ParticleIndex pi) |
static Diffusion | setup_particle (IMP::ParticleAdaptor pa) |
Static Public Member Functions inherited from IMP::core::XYZ | |
static FloatKey | get_coordinate_key (unsigned int i) |
static bool | get_is_setup (const IMP::ParticleAdaptor &p) |
static bool | get_is_setup (Model *m, ParticleIndex pi) |
static const FloatKeys & | get_xyz_keys () |
Get a vector containing the keys for x,y,z. More... | |
static XYZ | setup_particle (IMP::ParticleAdaptor pa) |
static XYZ | setup_particle (Model *m, ParticleIndex pi) |
static XYZ | setup_particle (IMP::ParticleAdaptor pa, algebra::Vector3D v) |
static XYZ | setup_particle (Model *m, ParticleIndex pi, algebra::Vector3D v) |
Additional Inherited Members | |
Protected Member Functions inherited from IMP::Decorator | |
Decorator (Model *m, ParticleIndex pi) | |
Decorator (ParticleAdaptor p) | |
|
static |
Return true if the particle is an instance of an RigidBodyDiffusion.
Definition at line 174 of file Diffusion.h.
double IMP::atom::RigidBodyDiffusion::get_rotational_diffusion_coefficient | ( | ) | const |
returns the rotational diffusion coefficient in \(radians^2/fs\)
Definition at line 160 of file Diffusion.h.
|
static |
Get the D key.
void IMP::atom::RigidBodyDiffusion::set_rotational_diffusion_coefficient | ( | double | d | ) | const |
sets the rotational diffusion coefficient in \(radians^2/fs\)
Definition at line 168 of file Diffusion.h.
|
static |
Setup this particle with automatically inferred translation and rotational diffusion coefficients The diffusion coefficients are computed using core::XYZR::get_radius() for the Stokes radius and the default IMP temperature of 297.15K.
Definition at line 157 of file Diffusion.h.
|
static |
Definition at line 157 of file Diffusion.h.