A rigid body that is connected by a joint to other rigid bodies.
Definition at line 26 of file KinematicNode.h.
|
|
| KinematicNode (::IMP::Model *m,::IMP::ParticleIndex id) |
| |
|
| KinematicNode (const IMP::ParticleAdaptor &d) |
| |
|
void | show (std::ostream &out=std::cout) const |
| |
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 ParticleIndexes & | get_body_member_particle_indexes () const |
| |
| algebra::Vector3D | get_coordinates () const |
| |
| bool | get_coordinates_are_optimized () const |
| |
| ParticleIndexes | get_member_indexes () const |
| |
| const ParticleIndexes & | get_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...
|
| |
|
RigidBody & | operator= (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 () |
| |
|
| 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 |
| |
| 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 bool | get_is_setup (const IMP::ParticleAdaptor &p) |
| |
| static bool | get_is_setup (Model *m, ParticleIndex pi) |
| | Return true if the particle is a kinematic node. More...
|
| |
| static KinematicNode | setup_particle (Model *m, ParticleIndex pi, KinematicForest *owner) |
| |
| static KinematicNode | setup_particle (IMP::ParticleAdaptor pa, KinematicForest *owner) |
| |
| static KinematicNode | setup_particle (IMP::ParticleAdaptor pa, KinematicForest *owner, Joint *in_joint) |
| |
| static KinematicNode | setup_particle (Model *m, ParticleIndex pi, KinematicForest *owner, Joint *in_joint) |
| |
| static KinematicNode | setup_particle (Model *m, ParticleIndex pi, KinematicForest *owner, Joint *in_joint, Joints out_joints) |
| |
| static KinematicNode | setup_particle (IMP::ParticleAdaptor pa, KinematicForest *owner, Joint *in_joint, Joints out_joints) |
| |
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 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) |
| |