pele
Python energy landscape explorer
 All Classes Namespaces Functions Variables Typedefs
Public Member Functions
pele::RBTopology Class Reference

#include <aatopology.h>

List of all members.

Public Member Functions

 RBTopology ()
void add_site (RigidFragment const &site)
std::vector< RigidFragment >
const & 
get_sites () const
size_t nrigid () const
size_t natoms_total () const
size_t number_of_non_rigid_atoms () const
CoordsAdaptor get_coords_adaptor (pele::Array< double > x) const
Array< double > to_atomistic (Array< double > rbcoords)
void transform_gradient (pele::Array< double > rbcoords, pele::Array< double > grad, pele::Array< double > rbgrad)
pele::VecN< 3 > align_angle_axis_vectors (pele::VecN< 3 > const &p1, pele::VecN< 3 > const &p2in)
void align_all_angle_axis_vectors (pele::Array< double > x1, pele::Array< double > x2)
void align_path (std::list< pele::Array< double > > path)
void get_zero_modes (pele::Array< double > const x, std::vector< pele::Array< double > > &zev)
double distance_squared (pele::Array< double > const x1, pele::Array< double > const x2) const
void distance_squared_grad (pele::Array< double > const x1, pele::Array< double > const x2, pele::Array< double > grad) const

Detailed Description

Angle axis topology

An angle axis topology stores all topology information for an angle axis system. The AATopology is composed of several angle axis sites, which describe the shape of the angle axis site and each site carries a position and orientation. Therefore, the length of the coordinate array must be 6*number_of_sites. represent a collection of rigid bodies

Definition at line 351 of file aatopology.h.


Constructor & Destructor Documentation

Definition at line 356 of file aatopology.h.


Member Function Documentation

void pele::RBTopology::add_site ( RigidFragment const &  site) [inline]

Definition at line 360 of file aatopology.h.

void pele::RBTopology::align_all_angle_axis_vectors ( pele::Array< double >  x1,
pele::Array< double >  x2 
)

Ensure the angle axis rotations of two structures are aligned with each other.

x1 will remain unchanged, only modify x2

Definition at line 259 of file aatopology.cpp.

pele::VecN< 3 > pele::RBTopology::align_angle_axis_vectors ( pele::VecN< 3 > const &  p1,
pele::VecN< 3 > const &  p2in 
)

align two angle axis vectors

perform symmetry operations on p2 to minimize the distance with p1

Definition at line 222 of file aatopology.cpp.

void pele::RBTopology::align_path ( std::list< pele::Array< double > >  path)

ensure a series of images are aligned with each other

this simply aligns the angle axis vectors

Definition at line 273 of file aatopology.cpp.

double pele::RBTopology::distance_squared ( pele::Array< double > const  x1,
pele::Array< double > const  x2 
) const [inline]

return the squared distance between two configurations

Definition at line 469 of file aatopology.h.

void pele::RBTopology::distance_squared_grad ( pele::Array< double > const  x1,
pele::Array< double > const  x2,
pele::Array< double >  grad 
) const [inline]

Calculate gradient with respect to x1 for the squared distance

used to compute the spring force on x1 to x2

Definition at line 490 of file aatopology.h.

return an already constructed CoordsAdaptor object

Definition at line 386 of file aatopology.h.

std::vector<RigidFragment> const& pele::RBTopology::get_sites ( ) const [inline]

provide access to the vector of rigid fragments

Definition at line 369 of file aatopology.h.

void pele::RBTopology::get_zero_modes ( pele::Array< double > const  x,
std::vector< pele::Array< double > > &  zev 
) [inline]

return a list of zero modes

i.e. vectors corresponding to directions with zero curvature. (these are not necessarily orthogonal)

Definition at line 431 of file aatopology.h.

size_t pele::RBTopology::natoms_total ( ) const [inline]

return the total number of atoms in the atomistic representation

Definition at line 379 of file aatopology.h.

size_t pele::RBTopology::nrigid ( ) const [inline]

return the number of rigid bodies

Definition at line 374 of file aatopology.h.

Definition at line 381 of file aatopology.h.

Array< double > pele::RBTopology::to_atomistic ( Array< double >  rbcoords)

convert rigid body coordinates to atomistic coordinates

Definition at line 159 of file aatopology.cpp.

void pele::RBTopology::transform_gradient ( pele::Array< double >  rbcoords,
pele::Array< double >  grad,
pele::Array< double >  rbgrad 
)

convert atomistic gradient into gradient in rigid body coordinates

Definition at line 185 of file aatopology.cpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs