Antiprism 0.23

- Main Page
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Member Functions

# t_set Class Reference

A set of transformations. More...

`#include <symmetry.h>`

Inheritance diagram for t_set:
[legend]

List of all members.

## Public Types
typedef set< mat3d > ::const_iterator | const_iterator
| A constant iterator over the set.
## Public Member Functions
t_set & | add (const mat3d &tr)
| Add a transformation.
t_set & | clear ()
| Clear all transformations.
t_set & | product (const t_set &s1, const t_set &s2)
| Set to direct product of two sets of transformations.
t_set & | product_with (const t_set &s)
| Set to direct product of current transformations with another set of transformations.
t_set & | conjugate (const mat3d &m)
| Set transformations to their conjugates by a given transformation.
t_set & | intersection (const t_set &s1, const t_set &s2)
| Intersection of two sets of transformations.
t_set & | subtract (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_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.
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:

  tr | transformation 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:

  m | the 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:

  s1 | one of the sets.
  s2 | the 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:

  m | the 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_whole | the target group of transformations.
  tr_part | the group of transformations that will be used to generate the target group.
  pos | A 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:

  s1 | one of the sets.
  s2 | the 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:

  s | the 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:

  s | the second set.

Returns:
  A reference to this object with the common transformations removed.

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

- base/symmetry.h
- base/symmetry.cc