Clipper
Public Member Functions | Static Public Member Functions
clipper::RTop_orth Class Reference

Orthogonal operator class. More...

#include <coords.h>

Inheritance diagram for clipper::RTop_orth:
clipper::RTop<>

List of all members.

Public Member Functions

 RTop_orth ()
 null constructor
 RTop_orth (const RTop<> &o)
 constructor: copy/convert
 RTop_orth (const Mat33<> &r)
 constructor: from rotation
 RTop_orth (const Mat33<> &r, const Vec3<> &t)
 constructor: from rotation and translation
 RTop_orth (const std::vector< Coord_orth > &src, const std::vector< Coord_orth > &tgt)
 constructor: from two vectors of Coord_orth
 RTop_orth (const std::vector< Coord_orth > &src, const std::vector< Coord_orth > &tgt, const std::vector< ftype > &wgt)
 constructor: from two vectors of Coord_orth
template<class T >
 RTop_orth (const T &src, const T &tgt)
 constructor: from two atom-list type objects
RTop_frac rtop_frac (const Cell &cell) const
 orthogonal-fractional conversion
RTop_orth inverse () const
 inverse operator
Coord_orth axis_coordinate_near (const Coord_orth &centre) const
 return point on axis near the specified coordinate
Coord_orth screw_translation () const
 return screw translation

Static Public Member Functions

static RTop_orth identity ()
 return identity operator
static RTop_orth null ()
 return null (uninitialised) operator

Detailed Description

Orthogonal operator class.

This class is used for any RT-operator which operates on orthogonal coordinates. For a full list of methods, see clipper::RTop


Constructor & Destructor Documentation

clipper::RTop_orth::RTop_orth ( const std::vector< Coord_orth > &  src,
const std::vector< Coord_orth > &  tgt 
)

constructor: from two vectors of Coord_orth

Construct the operator which give the least-squares fit of one set of coordinates onto another. The coodinates are stored as STL vectors of Coord_orth. The lists must be the same size, and each atom in the source list must correspond to the same atom in the target list. The algorithm employed is that of Kearsley, S.K. (1989) 'On the orthogonal transformation used for structural comparisons'. Acta Cryst. A45, 208-210.

Parameters:
srcThe source list (i.e. the atoms to be transformed).
tgtThe target list (i.e. the fixed atoms).

References clipper::Matrix< T >::eigen(), clipper::Rotation::matrix(), clipper::Message::message(), clipper::Rotation::norm(), clipper::RTop<>::rot(), and RTop_orth().

clipper::RTop_orth::RTop_orth ( const std::vector< Coord_orth > &  src,
const std::vector< Coord_orth > &  tgt,
const std::vector< ftype > &  wgt 
)

constructor: from two vectors of Coord_orth

Construct the operator which give the least-squares fit of one set of coordinates onto another. The coodinates are stored as STL vectors of Coord_orth. The lists must be the same size, and each atom in the source list must correspond to the same atom in the target list. The algorithm employed is that of Kearsley, S.K. (1989) 'On the orthogonal transformation used for structural comparisons'. Acta Cryst. A45, 208-210.

Parameters:
srcThe source list (i.e. the atoms to be transformed).
tgtThe target list (i.e. the fixed atoms).
wgtThe weight to apply to each atom.

References clipper::Matrix< T >::eigen(), clipper::Rotation::matrix(), clipper::Message::message(), clipper::Rotation::norm(), clipper::RTop<>::rot(), and RTop_orth().

template<class T >
clipper::RTop_orth::RTop_orth ( const T &  src,
const T &  tgt 
)

constructor: from two atom-list type objects

Construct the operator which relates one atom-list like object onto another. The lists must be the same size, and have the following properties:

  • a size() method.
  • a [int] operator, with int ranging from 0 to size()-1.
  • the object returned by the [] operator must have a coord_orth() method. Suitable objects include a vector of Atom, or an Atom_list.

References RTop_orth().


Member Function Documentation

RTop_frac clipper::RTop_orth::rtop_frac ( const Cell cell) const

orthogonal-fractional conversion

Parameters:
cellThe cell concerned
Returns:
The transformed coordinate.

References clipper::Cell::matrix_frac(), and clipper::Cell::matrix_orth().

RTop_orth clipper::RTop_orth::inverse ( ) const

inverse operator

Returns:
The inverse of the operator.

Reimplemented from clipper::RTop<>.

References RTop_orth().

Coord_orth clipper::RTop_orth::axis_coordinate_near ( const Coord_orth centre) const

return point on axis near the specified coordinate

Parameters:
centreAn arbitrary point.
Returns:
point on axis near the specified coordinate, 000 if rotation is zero

References clipper::Rotation::abs_angle(), clipper::Polar_ccp4::kappa(), clipper::Rotation::norm(), clipper::Rotation::polar_ccp4(), clipper::RTop<>::rot(), clipper::RTop<>::trn(), clipper::Rotation::x(), clipper::Rotation::y(), and clipper::Rotation::z().

Coord_orth clipper::RTop_orth::screw_translation ( ) const

return screw translation

Returns:
screw translation, 000 if rotation is zero

References clipper::Rotation::abs_angle(), clipper::RTop<>::rot(), clipper::RTop<>::trn(), clipper::Rotation::x(), clipper::Rotation::y(), and clipper::Rotation::z().

RTop_orth clipper::RTop_orth::identity ( ) [static]

return identity operator

Returns:
The identity operator.

Reimplemented from clipper::RTop<>.

References RTop_orth().

RTop_orth clipper::RTop_orth::null ( ) [static]

return null (uninitialised) operator

Returns:
The null (uninitialised) operator.

Reimplemented from clipper::RTop<>.

References RTop_orth().

Referenced by clipper::CNXmap_operator< T >::CNXmap_operator(), and clipper::CNXmap_operator< T >::update().


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