Antiprism 0.23
Public Types | Public Member Functions

t_set Class Reference

A set of transformations. More...

#include <symmetry.h>

Inheritance diagram for t_set:
Inheritance graph
[legend]

List of all members.

Public Types

typedef set< mat3d >
::const_iterator 
const_iterator
 A constant iterator over the set.

Public Member Functions

t_setadd (const mat3d &tr)
 Add a transformation.
t_setclear ()
 Clear all transformations.
t_setproduct (const t_set &s1, const t_set &s2)
 Set to direct product of two sets of transformations.
t_setproduct_with (const t_set &s)
 Set to direct product of current transformations with another set of transformations.
t_setconjugate (const mat3d &m)
 Set transformations to their conjugates by a given transformation.
t_setintersection (const t_set &s1, const t_set &s2)
 Intersection of two sets of transformations.
t_setsubtract (const t_set &s)
 Subtract from current transformations any common to a second set of transformations.
t_set lcoset (const mat3d &m) const
 Form the left coset with a given transformation.
t_setmin_set (const t_set &tr_whole, const t_set &tr_part, const mat3d &pos=mat3d())
 The minimum set of transformations that will generate one group of transformations from another.
const_iterator begin () const
 Begin, for iterating through the set.
const_iterator end () const
 End, for iterating through the set.
size_t size () const
 Size, the number of transformations.
const set< mat3d > & get_trans () const
 Get the underlying transformation set.
set< mat3d > & get_trans ()
 Get the underlying transformation set.
bool is_set () const
 Check if there are transformations in the set.

Detailed Description

A set of transformations.


Member Function Documentation

t_set& t_set::add ( const mat3d tr) [inline]

Add a transformation.

Parameters:
trtransformation to add
const_iterator t_set::begin ( ) const [inline]

Begin, for iterating through the set.

Returns:
A constant iterator pointing to the first transformation.
t_set& t_set::clear ( ) [inline]

Clear all transformations.

Remove all the transformations

t_set & t_set::conjugate ( const mat3d m)

Set transformations to their conjugates by a given transformation.

If the given transformation is M then each transformation T is set to MTM^-1.

Parameters:
mthe transformation to form the conjugates with.
Returns:
A reference to this object with the conjugates set.
const_iterator t_set::end ( ) const [inline]

End, for iterating through the set.

Returns:
A constant iterator pointing to one past the last transformation.
const set<mat3d>& t_set::get_trans ( ) const [inline]

Get the underlying transformation set.

return The underlying transformation set

set<mat3d>& t_set::get_trans ( ) [inline]

Get the underlying transformation set.

return The underlying transformation set

t_set & t_set::intersection ( const t_set s1,
const t_set s2 
)

Intersection of two sets of transformations.

Find the transformations that are common to both sets of transformations.

Parameters:
s1one of the sets.
s2the other set.
Returns:
A reference to this object with common transformations set.
bool t_set::is_set ( ) const [inline]

Check if there are transformations in the set.

Returns:
true if set, otherwise false
t_set t_set::lcoset ( const mat3d m) const

Form the left coset with a given transformation.

If the given transformation is M then each transformation T is set to MT in the coset.

Parameters:
mthe transformation to form the left coset with.
Returns:
The coset with
  • m.
t_set & t_set::min_set ( const t_set tr_whole,
const t_set tr_part,
const mat3d pos = mat3d() 
)

The minimum set of transformations that will generate one group of transformations from another.

Parameters:
tr_wholethe target group of transformations.
tr_partthe group of transformations that will be used to generate the target group.
posA transformation that will align

  • tr_part with
  • tr_whole.
Returns:
A reference to this object containing a minimum set of transformations that when applied to a geometry with symmetry
  • tr_part will create a compound with symmetry
  • tr_whole.
t_set & t_set::product ( const t_set s1,
const t_set s2 
)

Set to direct product of two sets of transformations.

Each transformation of one set is combined with every transformation from the other set.

Parameters:
s1one of the sets.
s2the other set.
Returns:
A reference to this object with the direct product of transformations set.
t_set & t_set::product_with ( const t_set s)

Set to direct product of current transformations with another set of transformations.

Each transformation of current set is combined with every transformation from the other set.

Parameters:
sthe other set.
Returns:
A reference to this object with the direct product of transformations set.
size_t t_set::size ( ) const [inline]

Size, the number of transformations.

Returns:
The number of transformations.
t_set & t_set::subtract ( const t_set s)

Subtract from current transformations any common to a second set of transformations.

After this operation the two sets will have no transformations in common.

Parameters:
sthe second set.
Returns:
A reference to this object with the common transformations removed.

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