IMP logo
IMP Reference Guide  develop.cb6747d2d1,2024/03/28
The Integrative Modeling Platform
IMP::core::Gaussian Class Reference

#include <IMP/core/Gaussian.h>

+ Inheritance diagram for IMP::core::Gaussian:

Detailed Description

A decorator for a particle storing a Gaussian.

Definition at line 57 of file core/Gaussian.h.

Public Member Functions

 Gaussian (::IMP::Model *m,::IMP::ParticleIndex id)
 
 Gaussian (const IMP::ParticleAdaptor &d)
 
algebra::Gaussian3D get_gaussian () const
 create Gaussian3D from these attributes More...
 
Eigen::Matrix3d get_global_covariance ()
 retrieve global covariance More...
 
Eigen::Matrix3d get_local_covariance () const
 retrieve local covariance (as diagonal matrix) More...
 
algebra::Vector3D get_variances () const
 retrieve local variances as Vector3D More...
 
void set_gaussian (const algebra::Gaussian3D &g)
 Get the covariance attributes from a Gaussian3D object. More...
 
void set_global_covariance (Eigen::Matrix3d covar)
 set the global-frame covariance. does NOT update local frame! More...
 
void set_local_covariance (const Eigen::Vector3d covar)
 set the local-frame covariance. More...
 
void set_variances (const algebra::Vector3D v)
 equivalent to set_local_covariance, used for backwards compatibility More...
 
void show (std::ostream &out=std::cout) const
 
void update_global_covariance ()
 update the global covariance More...
 
- Public Member Functions inherited from IMP::core::RigidBody
 RigidBody (::IMP::Model *m,::IMP::ParticleIndex id)
 
 RigidBody (const IMP::ParticleAdaptor &d)
 
 RigidBody (const RigidBody &)=default
 
void add_member (ParticleIndexAdaptor p)
 
void add_non_rigid_member (ParticleIndexAdaptor p)
 
void add_to_derivatives (const algebra::Vector3D &local_derivative, const algebra::Vector3D &local_location, DerivativeAccumulator &da)
 
void add_to_derivatives (const algebra::Vector3D &local_derivative, const algebra::Vector3D &global_derivative, const algebra::Vector3D &local_location, const algebra::Rotation3D &rot_local_to_global, DerivativeAccumulator &da)
 
void add_to_rotational_derivatives (const algebra::Vector4D &other_qderiv, const algebra::Rotation3D &rot_other_to_local, const algebra::Rotation3D &rot_local_to_global, DerivativeAccumulator &da)
 
void add_to_rotational_derivatives (const algebra::Vector4D &qderiv, DerivativeAccumulator &da)
 
void add_to_torque (const algebra::Vector3D &torque_local, DerivativeAccumulator &da)
 
const ParticleIndexesget_body_member_particle_indexes () const
 
algebra::Vector3D get_coordinates () const
 
bool get_coordinates_are_optimized () const
 
ParticleIndexes get_member_indexes () const
 
const ParticleIndexesget_member_particle_indexes () const
 
IMP::algebra::ReferenceFrame3D get_reference_frame () const
 
RigidMembers get_rigid_members () const
 
IMP::algebra::Rotation3D get_rotation () const
 
algebra::VectorD< 4 > get_rotational_derivatives () const
 Get the derivatives of the quaternion. More...
 
algebra::Vector3D get_torque () const
 
void normalize_rotation ()
 Normalize the quaternion. More...
 
RigidBodyoperator= (const RigidBody &)=default
 
void pull_back_body_member_adjoints (ParticleIndex pi, DerivativeAccumulator &da)
 Pull back global adjoints from member that is also a rigid body. More...
 
void pull_back_body_member_adjoints (ParticleIndex pi, const algebra::Transformation3D &TA, algebra::Transformation3D &TB, algebra::Transformation3DAdjoint &DTC, algebra::Transformation3DAdjoint &DTA, algebra::Transformation3DAdjoint &DTB, algebra::Vector3D &betatorque, DerivativeAccumulator &da)
 
void pull_back_member_adjoints (ParticleIndex pi, DerivativeAccumulator &da)
 Pull back global adjoints from member that is a point. More...
 
void pull_back_member_adjoints (ParticleIndex pi, const algebra::Transformation3D &T, algebra::Vector3D &x, algebra::Vector3D &Dy, algebra::Vector3D &Dx, algebra::Transformation3DAdjoint &DT, algebra::Vector3D &xtorque, DerivativeAccumulator &da)
 
void pull_back_members_adjoints (DerivativeAccumulator &da)
 Pull back global adjoints from members. More...
 
void remove_member (ParticleIndexAdaptor p)
 Remove the member from this rigid body. More...
 
void set_coordinates_are_optimized (bool tf)
 
void set_is_rigid_member (ParticleIndex pi, bool tf)
 
void set_reference_frame (const IMP::algebra::ReferenceFrame3D &tr)
 Set the current reference frame. More...
 
void set_reference_frame_from_members (const ParticleIndexes &members)
 
void set_reference_frame_lazy (const IMP::algebra::ReferenceFrame3D &tr)
 Change the reference, delay updating the members until evaluate. More...
 
void show (std::ostream &out=std::cout) const
 
void update_members ()
 
- 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::Vector3Dget_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...
 
Modelget_model () const
 Returns the Model containing the particle. More...
 
Particleget_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
 
Particleoperator-> () const
 

Static Public Member Functions

static ObjectKey get_global_covariance_key ()
 
static bool get_is_setup (const IMP::ParticleAdaptor &p)
 
static bool get_is_setup (Model *m, ParticleIndex pi)
 
static ObjectKey get_local_covariance_key ()
 
static Gaussian setup_particle (Model *m, ParticleIndex pi)
 
static Gaussian setup_particle (IMP::ParticleAdaptor pa)
 
static Gaussian setup_particle (Model *m, ParticleIndex pi, algebra::Gaussian3D g)
 
static Gaussian setup_particle (IMP::ParticleAdaptor pa, algebra::Gaussian3D g)
 
- Static Public Member Functions inherited from IMP::core::RigidBody
static bool get_is_setup (const IMP::ParticleAdaptor &p)
 
static bool get_is_setup (Model *m, ParticleIndex pi)
 Return true if the particle is a rigid body. More...
 
static FloatKeys get_rotation_keys ()
 Get keys for rotation quaternion. More...
 
static RigidBody setup_particle (IMP::ParticleAdaptor pa, ParticleIndexesAdaptor ps)
 
static RigidBody setup_particle (Model *m, ParticleIndex pi, ParticleIndexesAdaptor ps)
 
static RigidBody setup_particle (IMP::ParticleAdaptor pa, algebra::ReferenceFrame3D rf)
 
static RigidBody setup_particle (Model *m, ParticleIndex pi, algebra::ReferenceFrame3D rf)
 
static void teardown_particle (RigidBody rb)
 Make the rigid body no longer rigid. More...
 
- 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 FloatKeysget_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)
 

Member Function Documentation

algebra::Gaussian3D IMP::core::Gaussian::get_gaussian ( ) const

create Gaussian3D from these attributes

Definition at line 104 of file core/Gaussian.h.

+ Here is the call graph for this function:

Eigen::Matrix3d IMP::core::Gaussian::get_global_covariance ( )

retrieve global covariance

Definition at line 93 of file core/Gaussian.h.

+ Here is the call graph for this function:

Eigen::Matrix3d IMP::core::Gaussian::get_local_covariance ( ) const

retrieve local covariance (as diagonal matrix)

Definition at line 76 of file core/Gaussian.h.

+ Here is the call graph for this function:

algebra::Vector3D IMP::core::Gaussian::get_variances ( ) const

retrieve local variances as Vector3D

Definition at line 86 of file core/Gaussian.h.

void IMP::core::Gaussian::set_gaussian ( const algebra::Gaussian3D g)

Get the covariance attributes from a Gaussian3D object.

void IMP::core::Gaussian::set_global_covariance ( Eigen::Matrix3d  covar)

set the global-frame covariance. does NOT update local frame!

Definition at line 128 of file core/Gaussian.h.

+ Here is the call graph for this function:

void IMP::core::Gaussian::set_local_covariance ( const Eigen::Vector3d  covar)

set the local-frame covariance.

Definition at line 112 of file core/Gaussian.h.

+ Here is the call graph for this function:

void IMP::core::Gaussian::set_variances ( const algebra::Vector3D  v)

equivalent to set_local_covariance, used for backwards compatibility

Definition at line 123 of file core/Gaussian.h.

static Gaussian IMP::core::Gaussian::setup_particle ( IMP::ParticleAdaptor  pa)
static
Returns
a Gaussian object that decorates the particle specified by pa
See Also
setup_particle(m, p)

Definition at line 65 of file core/Gaussian.h.

static Gaussian IMP::core::Gaussian::setup_particle ( Model m,
ParticleIndex  pi 
)
static
Returns
a Gaussian object that decorates particle pi

Definition at line 65 of file core/Gaussian.h.

static Gaussian IMP::core::Gaussian::setup_particle ( Model m,
ParticleIndex  pi,
algebra::Gaussian3D  g 
)
static
Returns
a Gaussian object that decorates particle pi

Definition at line 66 of file core/Gaussian.h.

static Gaussian IMP::core::Gaussian::setup_particle ( IMP::ParticleAdaptor  pa,
algebra::Gaussian3D  g 
)
static
Returns
a Gaussian object that decorates the particle specified by pa
See Also
setup_particle(m, pi, g )

Definition at line 66 of file core/Gaussian.h.

void IMP::core::Gaussian::update_global_covariance ( )

update the global covariance


The documentation for this class was generated from the following file: