asu Class Reference

Access to general contiguous reciprocal space asymmetric units. More...

#include <reciprocal_space_asu.h>

List of all members.

Public Member Functions

 asu ()
 Default constructor.
 asu (sgtbx::space_group_type const &space_group_type)
 Initialization.
const reference_asureference () const
 Access to the selected tabulated reference_asu.
const char * reference_as_string () const
 Access to the string representation of the selected tabulated reference_asu.
change_of_basis_op const & cb_op () const
 Access to the change-of-basis operator.
bool is_reference () const
 Tests if the given asymmetric unit is one of the tabulated units.
bool is_inside (miller::index<> const &miller_index) const
 Tests if the given Miller index is in the asymmetric unit.
int which (miller::index<> const &miller_index, miller::index<> const &minus_miller_index) const
 Tests Friedel pair.
int which (miller::index<> const &miller_index) const
 Tests Friedel pair.


Detailed Description

Access to general contiguous reciprocal space asymmetric units.

class reference_reciprocal_space_asu implements 12 contiguous reciprocal space asymmetric units that cover the 230 reference settings. The algorithm for the determination of the space group type (class space_group_type) is used to derive a change-of-basis matrix for the transformation of the tabulated asymmetric units. In this way a contiguous asymmetric unit is available for any arbitrary setting.

Python binding: reciprocal_space_asu


Constructor & Destructor Documentation

asu (  )  [inline]

Default constructor.

Default-constructed instances will throw exceptions if some of the member functions are used.

asu ( sgtbx::space_group_type const &  space_group_type  ) 

Initialization.

Based on the space group number (space_group_type::number()), the Laue group class is derived which is in turn used to select the corresponding tabulated reference_asu.


Member Function Documentation

const reference_asu* reference (  )  const [inline]

Access to the selected tabulated reference_asu.

Not available in Python.

const char* reference_as_string (  )  const [inline]

Access to the string representation of the selected tabulated reference_asu.

Equivalent to: reference().as_string()

References reference_asu::as_string().

change_of_basis_op const& cb_op (  )  const [inline]

Access to the change-of-basis operator.

This operator is a copy of space_group_type.cb_op() as passed to the constructor.

bool is_reference (  )  const [inline]

Tests if the given asymmetric unit is one of the tabulated units.

This test is equivalent to the test cb_op().is_identity_op(). If this is the case, some optimizations are used.

bool is_inside ( miller::index<> const &  miller_index  )  const [inline]

Tests if the given Miller index is in the asymmetric unit.

The change-of-basis matrix is used to transform the Miller index (miller_index * cb_op().c_inv()). It is then tested if the result is in the tabulated reference asymmetric unit.

References change_of_basis_op::c_inv(), reference_asu::is_inside(), and rt_mx::r().

int which ( miller::index<> const &  miller_index,
miller::index<> const &  minus_miller_index 
) const [inline]

Tests Friedel pair.

Returns 1 if is_inside(miller_index), -1 if is_inside(minus_miller_index), 0 otherwise.

Not available in Python.

References change_of_basis_op::c_inv(), rt_mx::r(), and reference_asu::which().

Referenced by from_map::from_map().

int which ( miller::index<> const &  miller_index  )  const [inline]

Tests Friedel pair.

Returns 1 if is_inside(miller_index), -1 if is_inside(-miller_index), 0 otherwise.

References change_of_basis_op::c_inv(), rt_mx::r(), and reference_asu::which().


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

Generated on Tue Sep 1 17:12:35 2009 for cctbx by  doxygen 1.5.6