cctbx::sgtbx Namespace Reference

Space Group Toolbox namespace. More...


class  error_rational_vector
 Special class for rational vector exceptions. More...
class  brick_point
 A "point" of a brick. More...
class  brick
 Parallelepiped that contains an asymmetric unit. More...
class  change_of_basis_op
 Change-of-basis (transformation) operator. More...
class  find_affine
 Find affine normalizers of triclinic and monoclinic space groups. More...
class  parse_string
 Class for communicating string parsing errors. More...
class  phase_info
 Handling of phase restrictions and optional evaluation of conditions for systematically absent reflections. More...
class  rot_mx
 3x3 rotation matrix. More...
class  rot_mx_info
 Class for grouping information about rotation matrices. More...
class  rt_mx
 Rotation-Translation matrix. More...
struct  rt_mx_from_string
 Parser for xyz expressions. More...
class  translation_part_info
 Analysis of the translation part of a rotation-translation matrix. More...
class  search_symmetry_flags
 Grouping of flags determining the symmetry of search spaces. More...
class  search_symmetry
 Parameterization of search symmetries. More...
struct  ss_vec_mod
 Entry in list of structure seminvariant vectors and moduli. More...
class  structure_seminvariants
 Structure-seminvariant vector and moduli. More...
class  site_constraints
 Handling of site symmetry coordinate constraints. More...
class  rt_point_group
class  site_symmetry_ops
 Base class for site_symmetry, holding the essential results. More...
class  site_symmetry
 Numerically robust algorithm for the determination of site-symmetries. More...
class  site_symmetry_table
class  error_non_crystallographic_rotation_matrix_encountered
 Specific exception to indicate failure of group multiplication. More...
class  space_group
 Space group operations. More...
class  space_group_type
 Computation and use of change-of-basis matrix to reference setting. More...
class  sym_equiv_sites
 Container for symmetrically equivalent coordinates. More...
class  min_sym_equiv_distance_info
 Algorithm for finding the shortest distance between two sites under application of space group symmetry. More...
class  space_group_symbols
 class for the handling of space group symbols of various types. More...
class  space_group_symbol_iterator
 Iterator for the 530 tabulated space group representations. More...
class  tr_group
class  tr_vec
 Translation vector. More...
struct  tr_vec_12
 Constructor for initialization of constants. More...
class  grid_symop
 Symmetry operator optimized for grid. More...


namespace  asu
 Direct space asymmetric unit classes.
namespace  lattice_symmetry
 Determination of lattice symmetry (Bravais type).
namespace  reference_settings
 Tables for the "reference settings" of the 230 crystallographic space groups.
namespace  tensor_rank_2
 Symmetry constraints for tensors of rank 2.
namespace  wyckoff
 Wyckoff tables.


typedef boost::rational< int > rat
typedef scitbx::vec3< rat > vec3_rat


void sanity_check ()
 Checks default rotation and translation denominators for consistency.
template<typename NumType>
miller::index< NumType > operator* (miller::index< NumType > const &h, rot_mx const &r)
template<typename NumType>
NumType operator* (miller::index< NumType > const &h, tr_vec const &t)
int ht_mod_1 (miller::index<> const &h, tr_vec const &t)
uc_mat3 two_fold_operator_from_axis_direction (uc_vec3 const &ev_cart)
uc_mat3 n_fold_operator_from_axis_direction (uc_vec3 const &ev_cart, int n, int sense=1)
void throw_unsuitable_rot_mx (const char *file, long line)
template<typename RatFltType>
scitbx::vec3< RatFltType > operator* (rot_mx const &lhs, scitbx::vec3< RatFltType > const &rhs)
 Multiplication of rot_mx with a vector of rational or floating-point values.
template<typename FloatType>
scitbx::vec3< FloatType > operator* (scitbx::vec3< FloatType > const &lhs, rot_mx const &rhs)
 Multiplication of rot_mx with a vector of floating-point values.
std::size_t hash_value (rot_mx const &r)
template<typename IntType>
IntType norm_denominator (IntType numerator, IntType denominator)
template<class FloatType>
scitbx::sym_mat3< FloatType > average_tensor (af::const_ref< rt_mx > const &matrices, scitbx::sym_mat3< FloatType > const &tensor, bool reciprocal_space)
 Symmetry-averaged tensor.
std::size_t hash_value (rt_mx const &rt)
template<typename IntType>
void smith_normal_form (af::ref< IntType, af::mat_grid > &m, af::ref< IntType, af::mat_grid > const &p, af::ref< IntType, af::mat_grid > const &q)
std::size_t hash_value (space_group const &sg)
std::size_t hash_value (tr_group const &trg)
void throw_unsuitable_tr_vec (const char *file, long line)
std::size_t hash_value (tr_vec const &v)


const int sg_t_den = 12
 Default space_group translation vector denominator.
const int cb_r_den = 12
 Default change_of_basis rotation matrix denominator.
const int cb_t_den = 144
 Default change_of_basis translation vector denominator.

Detailed Description

Space Group Toolbox namespace.

Function Documentation

scitbx::sym_mat3<FloatType> cctbx::sgtbx::average_tensor ( af::const_ref< rt_mx > const &  matrices,
scitbx::sym_mat3< FloatType > const &  tensor,
bool  reciprocal_space 
) [inline]

Symmetry-averaged tensor.

reciprocal_space = false: sum[tensor.tensor_transpose_transform(r)] / matrices.size()

reciprocal_space = true: sum[tensor.tensor_transform(r)] / matrices.size()

over all rotation parts r of matrices.

See also: Giacovazzo, Fundamentals of Crystallography 1992, p. 189.

Not available in Python.

References rot_mx::as_floating_point(), rt_mx::r(), sym_mat3::tensor_transform(), and sym_mat3::tensor_transpose_transform().

Referenced by space_group::average_metrical_matrix(), space_group::average_u_star(), and site_symmetry_ops::average_u_star().

scitbx::vec3<FloatType> cctbx::sgtbx::operator* ( scitbx::vec3< FloatType > const &  lhs,
rot_mx const &  rhs 
) [inline]

Multiplication of rot_mx with a vector of floating-point values.

Python: __rmul__

References rot_mx::den(), and rot_mx::num().

scitbx::vec3<RatFltType> cctbx::sgtbx::operator* ( rot_mx const &  lhs,
scitbx::vec3< RatFltType > const &  rhs 
) [inline]

Multiplication of rot_mx with a vector of rational or floating-point values.

Python: __mul__

References rot_mx::den(), and rot_mx::num().

Generated on Thu Jun 19 15:35:07 2014 for cctbx by  doxygen 1.5.6