Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
core::kinematics::tree::Atom Class Referenceabstract

Kinematics Atom interface class. More...

#include <Atom.hh>

Inheritance diagram for core::kinematics::tree::Atom:
Inheritance graph
[legend]

Public Types

typedef PointPosition Position
 
typedef utility::vector0< AtomOPAtoms
 
typedef Atoms::ConstIterator Atoms_ConstIterator
 
typedef Atoms::Iterator Atoms_Iterator
 
typedef numeric::xyzMatrix< RealMatrix
 
typedef id::DOF_Type DOF_Type
 
typedef id::DOF_ID DOF_ID
 
typedef id::AtomID AtomID
 
typedef id::AtomID_Mask AtomID_Mask
 
typedef id::DOF_ID_Mask DOF_ID_Mask
 
typedef void iterator_category
 
typedef void difference_type
 

Public Member Functions

AtomCOP get_self_ptr () const
 
AtomOP get_self_ptr ()
 
AtomCAP get_self_weak_ptr () const
 
AtomAP get_self_weak_ptr ()
 
virtual void dfs (AtomDOFChangeSet &changeset, ResidueCoordinateChangeList &res_change_list, Size const start_atom_index) const =0
 Perform a depth-first traversal of the tree that would be effected by a DOF change from this atom. Stop at atoms that have already been traversed. More...
 
virtual void update_xyz_coords ()=0
 The atom must retrieve an appropriate stub from its parent; it is the root of the subtree being refolded. More...
 
virtual void update_xyz_coords (Stub &stub)=0
 update xyz coords from stub and internal coords and More...
 
virtual void update_internal_coords (std::deque< std::pair< Atom *, core::kinematics::Stub * > > *childlist, std::deque< core::kinematics::Stub > *stublist, Stub &stub)=0
 update internal coords from stub and xyz coords. More...
 
virtual void update_internal_coords (Stub &stub, bool const recursive=true)=0
 Update internal coordinates for this atom and possibly all children. More...
 
virtual void update_internal_coords (bool const recursive)=0
 calculate my input_stub from the current xyz's and use that input_stub to update my torsions More...
 
virtual void update_stub (Stub &stub) const =0
 update the stub without actually updating coordinates More...
 
virtual void copy_coords (Atom const &src)=0
 copy DOFs and xyz coords from src Atom More...
 
virtual Real dof (DOF_Type const type) const =0
 get dof More...
 
virtual void set_dof (DOF_Type const type, Real const value)=0
 set dof, use "set_" syntax since we have multiple dof's More...
 
virtual void set_dof (DOF_Type const type, Real const value, AtomDOFChangeSet &set)=0
 set dof, use "set_" syntax since we have multiple dof's – for use in output-sensitive refold routine More...
 
virtual Jump const & jump () const =0
 get Jump More...
 
virtual void jump (Jump const &jump_in)=0
 set Jump More...
 
virtual void jump (Jump const &jump_in, AtomDOFChangeSet &set)=0
 set Jump – for use in output-sensitive refolding More...
 
virtual AtomOP clone (AtomAP parent_in, AtomPointer2D &atom_pointer) const =0
 copy atom with new memory allocation More...
 
virtual void setup_min_map (DOF_ID &last_torsion, DOF_ID_Mask const &move_map, MinimizerMapBase &min_map) const =0
 
virtual void get_dof_axis_and_end_pos (Vector &axis, Position &end_pos, DOF_Type const type) const =0
 
virtual bool is_jump () const =0
 atom is a jump atom? More...
 
virtual bool keep_1st_child_pos () const =0
 when other atoms are inserted insert after 1st child if available. –> this enables us to keep a stub of Downstream Jump atoms inside a single residue More...
 
virtual bool keep_dof_fixed (DOF_Type const ) const
 DoF should be fixed for this atom? More...
 
virtual void show () const =0
 dump out AtomID for this atom, its parent and all its offspring More...
 
virtual void show (int const &) const =0
 dump out AtomID for this atom, its parent and all its offspring up to n_level More...
 
virtual Real dihedral_between_bonded_children (Atom const &child1, Atom const &child2) const =0
 dihedral angle between two bonded children to this atom More...
 
virtual void update_domain_map (int &current_color, int &biggest_color, DomainMap &domain_map, AtomID_Mask const &dof_moved, AtomID_Mask const &atom_moved) const =0
 
virtual Atoms_ConstIterator atoms_begin () const =0
 
virtual Atoms_ConstIterator atoms_end () const =0
 
virtual Atoms_Iterator atoms_begin ()=0
 
virtual Atoms_Iterator atoms_end ()=0
 
virtual Size n_atom () const =0
 
virtual void append_atom (AtomOP)=0
 
virtual void delete_atom (AtomOP)=0
 
virtual void insert_atom (AtomOP)=0
 
virtual void insert_atom (AtomOP, int const )=0
 
virtual void replace_atom (AtomOP const old_atom, AtomOP const new_atom)=0
 
virtual AtomCOP get_nonjump_atom (Size const i) const =0
 
virtual Size n_children () const =0
 
virtual Size n_nonjump_children () const =0
 
virtual AtomCOP child (Size const k) const =0
 
virtual AtomOP child (Size const k)=0
 
virtual Size child_index (AtomCOP child) const =0
 the atom-index of this child More...
 
virtual Size raw_child_index (Atom const *child) const =0
 the atom-index of this child More...
 
virtual bool downstream (AtomCOP atom1) const =0
 
virtual void steal_inversion (AtomOP)=0
 
virtual AtomID const & id () const =0
 Atom identifier. More...
 
virtual void id (AtomID const &id_in)=0
 AtomID assignment. More...
 
virtual AtomID const & atom_id () const =0
 Atom identifier. More...
 
virtual Position const & position () const =0
 Position. More...
 
virtual void position (Position const &position_a)=0
 Position assignment. More...
 
virtual Position const & xyz () const =0
 Position. More...
 
virtual void xyz (Position const &position_a)=0
 Position assignment. More...
 
virtual Length const & x () const =0
 x coordinate More...
 
virtual Length const & y () const =0
 y coordinate More...
 
virtual Length const & z () const =0
 z coordinate More...
 
virtual Length distance (Atom const &atom) const =0
 Distance to an Atom. More...
 
virtual Length distance_squared (Atom const &atom) const =0
 Distance squared to an Atom. More...
 
virtual void transform_Ax_plus_b_recursive (Matrix const &A, Vector const &b, ResidueCoordinateChangeList &res_change_list)=0
 Transform atom and children by linear transformation. More...
 
virtual AtomCOP parent () const =0
 Parent atom pointer, NULL for root atom. More...
 
virtual void get_path_from_root (utility::vector1< AtomCAP > &path) const =0
 
virtual bool atom_is_on_path_from_root (AtomCOP atm) const =0
 
virtual void parent (AtomAP parent_in)=0
 parent assignment More...
 
virtual AtomOP parent ()=0
 Parent atom pointer, NULL for root atom. More...
 
virtual Stub get_stub () const =0
 Get stub information. More...
 
virtual Stub get_input_stub () const =0
 
virtual AtomCOP stub_atom1 () const =0
 
virtual AtomCOP stub_atom2 () const =0
 
virtual AtomCOP stub_atom3 () const =0
 
virtual AtomID const & stub_atom1_id () const =0
 
virtual AtomID const & stub_atom2_id () const =0
 
virtual AtomID const & stub_atom3_id () const =0
 
virtual AtomCOP input_stub_atom0 () const =0
 
virtual AtomCOP input_stub_atom1 () const =0
 
virtual AtomCOP input_stub_atom2 () const =0
 
virtual AtomCOP input_stub_atom3 () const =0
 
virtual AtomID const & input_stub_atom0_id () const =0
 
virtual AtomID const & input_stub_atom1_id () const =0
 
virtual AtomID const & input_stub_atom2_id () const =0
 
virtual AtomID const & input_stub_atom3_id () const =0
 
virtual AtomCOP previous_sibling () const =0
 
virtual AtomCOP previous_child (AtomCOP child) const =0
 
virtual AtomOP next_child (AtomCOP child)=0
 
virtual Atom const * raw_parent () const =0
 Rapid (increment-of-reference-count-avoiding) access to the parent atom pointer. More...
 
virtual Atom const * raw_previous_sibling () const =0
 Rapid (increment-of-reference-count-avoiding) access to the previous sibling pointer, i.e. the first child in the parent's children list to precede this atom. More...
 
virtual Atom const * raw_previous_child (Atom const *child) const =0
 Rapid (increment-of-reference-count-avoiding) access to the previous child pointer;. More...
 
virtual Atom const * raw_stub_atom1 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the fist stub atom. More...
 
virtual Atom const * raw_stub_atom2 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the second stub atom. More...
 
virtual Atom const * raw_stub_atom3 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the third stub atom. More...
 
virtual Atom const * raw_input_stub_atom0 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the 0th input stub atom;. More...
 
virtual Atom const * raw_input_stub_atom1 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the 1st input stub atom;. More...
 
virtual Atom const * raw_input_stub_atom2 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the 2nd input stub atom;. More...
 
virtual Atom const * raw_input_stub_atom3 () const =0
 Rapid (increment-of-reference-count-avoiding) access to the 3rd input stub atom;. More...
 
virtual Atom const * raw_get_nonjump_atom (Size const i) const =0
 Rapid (increment-of-reference-count-avoiding) access to the ith non-jump atom in this atom's list of children. More...
 
virtual bool stub_defined () const =0
 

Protected Member Functions

 Atom ()=default
 Default constructor. More...
 
Atomoperator= (Atom const &)=default
 Copy assignment. More...
 
virtual void update_child_torsions (AtomOP const child)=0
 
virtual Atoms_ConstIterator nonjump_atoms_begin () const =0
 
virtual Atoms_Iterator nonjump_atoms_begin ()=0
 

Friends

Length distance (Atom const &atom1, Atom const &atom2)
 Distance between two Atoms. More...
 
Length distance_squared (Atom const &atom1, Atom const &atom2)
 Distance squared between two Atoms. More...
 

Detailed Description

Kinematics Atom interface class.

Member Typedef Documentation

typedef utility::vector0< AtomOP > core::kinematics::tree::Atom::Atoms
typedef numeric::xyzMatrix< Real > core::kinematics::tree::Atom::Matrix

Constructor & Destructor Documentation

core::kinematics::tree::Atom::Atom ( )
inlineprotecteddefault

Default constructor.

Member Function Documentation

virtual void core::kinematics::tree::Atom::append_atom ( AtomOP  )
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::atom_id ( ) const
pure virtual
virtual bool core::kinematics::tree::Atom::atom_is_on_path_from_root ( AtomCOP  atm) const
pure virtual
virtual Atoms_ConstIterator core::kinematics::tree::Atom::atoms_begin ( ) const
pure virtual
virtual Atoms_Iterator core::kinematics::tree::Atom::atoms_begin ( )
pure virtual
virtual Atoms_ConstIterator core::kinematics::tree::Atom::atoms_end ( ) const
pure virtual
virtual Atoms_Iterator core::kinematics::tree::Atom::atoms_end ( )
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::child ( Size const  k) const
pure virtual
virtual AtomOP core::kinematics::tree::Atom::child ( Size const  k)
pure virtual
virtual Size core::kinematics::tree::Atom::child_index ( AtomCOP  child) const
pure virtual

the atom-index of this child

Implemented in core::kinematics::tree::Atom_.

virtual AtomOP core::kinematics::tree::Atom::clone ( AtomAP  parent_in,
AtomPointer2D atom_pointer 
) const
pure virtual

copy atom with new memory allocation

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual void core::kinematics::tree::Atom::copy_coords ( Atom const &  src)
pure virtual

copy DOFs and xyz coords from src Atom

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual void core::kinematics::tree::Atom::delete_atom ( AtomOP  )
pure virtual
virtual void core::kinematics::tree::Atom::dfs ( AtomDOFChangeSet changeset,
ResidueCoordinateChangeList res_change_list,
Size const  start_atom_index 
) const
pure virtual

Perform a depth-first traversal of the tree that would be effected by a DOF change from this atom. Stop at atoms that have already been traversed.

Implemented in core::kinematics::tree::Atom_, core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual Real core::kinematics::tree::Atom::dihedral_between_bonded_children ( Atom const &  child1,
Atom const &  child2 
) const
pure virtual

dihedral angle between two bonded children to this atom

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Length core::kinematics::tree::Atom::distance ( Atom const &  atom) const
pure virtual
virtual Length core::kinematics::tree::Atom::distance_squared ( Atom const &  atom) const
pure virtual

Distance squared to an Atom.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::tree::distance_squared().

virtual Real core::kinematics::tree::Atom::dof ( DOF_Type const  type) const
pure virtual
virtual bool core::kinematics::tree::Atom::downstream ( AtomCOP  atom1) const
pure virtual
virtual void core::kinematics::tree::Atom::get_dof_axis_and_end_pos ( Vector axis,
Position end_pos,
DOF_Type const  type 
) const
pure virtual
virtual Stub core::kinematics::tree::Atom::get_input_stub ( ) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::get_nonjump_atom ( Size const  i) const
pure virtual
virtual void core::kinematics::tree::Atom::get_path_from_root ( utility::vector1< AtomCAP > &  path) const
pure virtual
AtomCOP core::kinematics::tree::Atom::get_self_ptr ( ) const
inline
AtomOP core::kinematics::tree::Atom::get_self_ptr ( )
inline
AtomCAP core::kinematics::tree::Atom::get_self_weak_ptr ( ) const
inline
AtomAP core::kinematics::tree::Atom::get_self_weak_ptr ( )
inline
virtual Stub core::kinematics::tree::Atom::get_stub ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::id ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::id ( AtomID const &  id_in)
pure virtual

AtomID assignment.

Implemented in core::kinematics::tree::Atom_.

virtual AtomCOP core::kinematics::tree::Atom::input_stub_atom0 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::input_stub_atom0_id ( ) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::input_stub_atom1 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::input_stub_atom1_id ( ) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::input_stub_atom2 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::input_stub_atom2_id ( ) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::input_stub_atom3 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::input_stub_atom3_id ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::insert_atom ( AtomOP  )
pure virtual
virtual void core::kinematics::tree::Atom::insert_atom ( AtomOP  ,
int  const 
)
pure virtual
virtual bool core::kinematics::tree::Atom::is_jump ( ) const
pure virtual
virtual Jump const& core::kinematics::tree::Atom::jump ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::jump ( Jump const &  jump_in)
pure virtual
virtual void core::kinematics::tree::Atom::jump ( Jump const &  jump_in,
AtomDOFChangeSet set 
)
pure virtual

set Jump – for use in output-sensitive refolding

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual bool core::kinematics::tree::Atom::keep_1st_child_pos ( ) const
pure virtual

when other atoms are inserted insert after 1st child if available. –> this enables us to keep a stub of Downstream Jump atoms inside a single residue

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual bool core::kinematics::tree::Atom::keep_dof_fixed ( DOF_Type  const) const
inlinevirtual

DoF should be fixed for this atom?

for DoFs that must be kept fixed due to topology of tree e.g., phi of stub_atoms for jump_atoms

Reimplemented in core::kinematics::tree::BondedAtom, core::kinematics::tree::JumpAtom, and core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Size core::kinematics::tree::Atom::n_atom ( ) const
pure virtual
virtual Size core::kinematics::tree::Atom::n_children ( ) const
pure virtual
virtual Size core::kinematics::tree::Atom::n_nonjump_children ( ) const
pure virtual
virtual AtomOP core::kinematics::tree::Atom::next_child ( AtomCOP  child)
pure virtual
virtual Atoms_ConstIterator core::kinematics::tree::Atom::nonjump_atoms_begin ( ) const
protectedpure virtual
virtual Atoms_Iterator core::kinematics::tree::Atom::nonjump_atoms_begin ( )
protectedpure virtual
Atom& core::kinematics::tree::Atom::operator= ( Atom const &  )
inlineprotecteddefault

Copy assignment.

virtual AtomCOP core::kinematics::tree::Atom::parent ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::parent ( AtomAP  parent_in)
pure virtual

parent assignment

Implemented in core::kinematics::tree::Atom_.

virtual AtomOP core::kinematics::tree::Atom::parent ( )
pure virtual

Parent atom pointer, NULL for root atom.

Implemented in core::kinematics::tree::Atom_.

virtual Position const& core::kinematics::tree::Atom::position ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::position ( Position const &  position_a)
pure virtual

Position assignment.

Implemented in core::kinematics::tree::Atom_.

virtual AtomCOP core::kinematics::tree::Atom::previous_child ( AtomCOP  child) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::previous_sibling ( ) const
pure virtual
virtual Size core::kinematics::tree::Atom::raw_child_index ( Atom const *  child) const
pure virtual

the atom-index of this child

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Atom const* core::kinematics::tree::Atom::raw_get_nonjump_atom ( Size const  i) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the ith non-jump atom in this atom's list of children.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::tree::JumpAtom::raw_stub_atom3(), and core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Atom const* core::kinematics::tree::Atom::raw_input_stub_atom0 ( ) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the 0th input stub atom;.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Atom const* core::kinematics::tree::Atom::raw_input_stub_atom1 ( ) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the 1st input stub atom;.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Atom const* core::kinematics::tree::Atom::raw_input_stub_atom2 ( ) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the 2nd input stub atom;.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Atom const* core::kinematics::tree::Atom::raw_input_stub_atom3 ( ) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the 3rd input stub atom;.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::AtomTree::torsion_angle_dof_id().

virtual Atom const* core::kinematics::tree::Atom::raw_parent ( ) const
pure virtual
virtual Atom const* core::kinematics::tree::Atom::raw_previous_child ( Atom const *  child) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the previous child pointer;.

Implemented in core::kinematics::tree::Atom_.

Referenced by core::kinematics::tree::Atom_::raw_previous_sibling().

virtual Atom const* core::kinematics::tree::Atom::raw_previous_sibling ( ) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the previous sibling pointer, i.e. the first child in the parent's children list to precede this atom.

Implemented in core::kinematics::tree::Atom_.

virtual Atom const* core::kinematics::tree::Atom::raw_stub_atom1 ( ) const
pure virtual

Rapid (increment-of-reference-count-avoiding) access to the fist stub atom.

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

Referenced by core::kinematics::tree::Atom_::raw_input_stub_atom1(), and core::kinematics::tree::Atom_::raw_input_stub_atom3().

virtual Atom const* core::kinematics::tree::Atom::raw_stub_atom2 ( ) const
pure virtual
virtual Atom const* core::kinematics::tree::Atom::raw_stub_atom3 ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::replace_atom ( AtomOP const  old_atom,
AtomOP const  new_atom 
)
pure virtual
virtual void core::kinematics::tree::Atom::set_dof ( DOF_Type const  type,
Real const  value 
)
pure virtual

set dof, use "set_" syntax since we have multiple dof's

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual void core::kinematics::tree::Atom::set_dof ( DOF_Type const  type,
Real const  value,
AtomDOFChangeSet set 
)
pure virtual

set dof, use "set_" syntax since we have multiple dof's – for use in output-sensitive refold routine

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual void core::kinematics::tree::Atom::setup_min_map ( DOF_ID last_torsion,
DOF_ID_Mask const &  move_map,
MinimizerMapBase min_map 
) const
pure virtual
virtual void core::kinematics::tree::Atom::show ( ) const
pure virtual

dump out AtomID for this atom, its parent and all its offspring

Implemented in core::kinematics::tree::Atom_.

virtual void core::kinematics::tree::Atom::show ( int const &  ) const
pure virtual

dump out AtomID for this atom, its parent and all its offspring up to n_level

Implemented in core::kinematics::tree::Atom_.

virtual void core::kinematics::tree::Atom::steal_inversion ( AtomOP  )
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::stub_atom1 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::stub_atom1_id ( ) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::stub_atom2 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::stub_atom2_id ( ) const
pure virtual
virtual AtomCOP core::kinematics::tree::Atom::stub_atom3 ( ) const
pure virtual
virtual AtomID const& core::kinematics::tree::Atom::stub_atom3_id ( ) const
pure virtual
virtual bool core::kinematics::tree::Atom::stub_defined ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::transform_Ax_plus_b_recursive ( Matrix const &  A,
Vector const &  b,
ResidueCoordinateChangeList res_change_list 
)
pure virtual

Transform atom and children by linear transformation.

Implemented in core::kinematics::tree::Atom_.

virtual void core::kinematics::tree::Atom::update_child_torsions ( AtomOP const  child)
protectedpure virtual
virtual void core::kinematics::tree::Atom::update_domain_map ( int &  current_color,
int &  biggest_color,
DomainMap domain_map,
AtomID_Mask const &  dof_moved,
AtomID_Mask const &  atom_moved 
) const
pure virtual
virtual void core::kinematics::tree::Atom::update_internal_coords ( std::deque< std::pair< Atom *, core::kinematics::Stub * > > *  childlist,
std::deque< core::kinematics::Stub > *  stublist,
Stub stub 
)
pure virtual

update internal coords from stub and xyz coords.

If childlist and stublist are not nullptr, childlist has pairs of (child atom, this stub), and stublist stores unique stubs. (Multiple pointers in childlist can point to the same stub, since that stub ultimately gets updated during the update of the coordinate.) appended so that children may subsequently be updated.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual void core::kinematics::tree::Atom::update_internal_coords ( Stub stub,
bool const  recursive = true 
)
pure virtual

Update internal coordinates for this atom and possibly all children.

If recursive is true, we update children, grandchildren, great-grandchildren, etc., but we don't use a recursive algorithm.

Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org).

Implemented in core::kinematics::tree::Atom_.

virtual void core::kinematics::tree::Atom::update_internal_coords ( bool const  recursive)
pure virtual

calculate my input_stub from the current xyz's and use that input_stub to update my torsions

Implemented in core::kinematics::tree::Atom_.

virtual void core::kinematics::tree::Atom::update_stub ( Stub stub) const
pure virtual

update the stub without actually updating coordinates

Implemented in core::kinematics::tree::JumpAtom, and core::kinematics::tree::BondedAtom.

virtual void core::kinematics::tree::Atom::update_xyz_coords ( )
pure virtual

The atom must retrieve an appropriate stub from its parent; it is the root of the subtree being refolded.

Implemented in core::kinematics::tree::Atom_, core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual void core::kinematics::tree::Atom::update_xyz_coords ( Stub stub)
pure virtual

update xyz coords from stub and internal coords and

Implemented in core::kinematics::tree::BondedAtom, and core::kinematics::tree::JumpAtom.

virtual Length const& core::kinematics::tree::Atom::x ( ) const
pure virtual

x coordinate

Implemented in core::kinematics::tree::Atom_.

virtual Position const& core::kinematics::tree::Atom::xyz ( ) const
pure virtual
virtual void core::kinematics::tree::Atom::xyz ( Position const &  position_a)
pure virtual

Position assignment.

Implemented in core::kinematics::tree::Atom_.

virtual Length const& core::kinematics::tree::Atom::y ( ) const
pure virtual

y coordinate

Implemented in core::kinematics::tree::Atom_.

virtual Length const& core::kinematics::tree::Atom::z ( ) const
pure virtual

z coordinate

Implemented in core::kinematics::tree::Atom_.

Friends And Related Function Documentation

Length distance ( Atom const &  atom1,
Atom const &  atom2 
)
friend

Distance between two Atoms.

Length distance_squared ( Atom const &  atom1,
Atom const &  atom2 
)
friend

Distance squared between two Atoms.


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