|
GiNaC 1.8.9
|
The class multi_iterator_permutation defines a multi_iterator 
#include <utils_multi_iterator.h>
Public Member Functions | |
| multi_iterator_permutation (void) | |
| Default constructor. | |
| multi_iterator_permutation (T B, T N, size_t k) | |
| Construct a multi_iterator with upper limit N and size k . | |
| multi_iterator_permutation (T B, T N, const std::vector< T > &vv) | |
| Construct from a vector. | |
| basic_multi_iterator< T > & | init (void) |
| Initialize the multi-index to. | |
| basic_multi_iterator< T > & | operator++ (int) |
| The postfix increment operator allows to write for a multi-index n++, which will update n to the next configuration. | |
| int | get_sign (void) const |
| Returns the sign of the permutation, defined by. | |
Public Member Functions inherited from GiNaC::basic_multi_iterator< T > | |
| basic_multi_iterator (void) | |
| Default constructor. | |
| basic_multi_iterator (T B, T N, size_t k) | |
| Construct a multi_iterator with upper limit N, lower limit B and size k . | |
| basic_multi_iterator (T B, T N, const std::vector< T > &vv) | |
| Construct from a vector. | |
| virtual | ~basic_multi_iterator () |
| Destructor. | |
| size_t | size (void) const |
| Returns the size of a multi_iterator. | |
| bool | overflow (void) const |
| Return the overflow flag. | |
| const std::vector< T > & | get_vector (void) const |
| Returns a reference to the vector v. | |
| T | operator[] (size_t i) const |
| Subscription via []. | |
| T & | operator[] (size_t i) |
| Subscription via []. | |
| T | operator() (size_t i) const |
| Subscription via () | |
| T & | operator() (size_t i) |
| Subscription via () | |
Friends | |
| template<class TT > | |
| std::ostream & | operator<< (std::ostream &os, const multi_iterator_permutation< TT > &v) |
Additional Inherited Members | |
Protected Attributes inherited from GiNaC::basic_multi_iterator< T > | |
| T | N |
| T | B |
| std::vector< T > | v |
| bool | flag_overflow |
The class multi_iterator_permutation defines a multi_iterator 
![\[
B \le i_j < N
\]](form_55.png)
and
![\[
i_i \neq i_j
\]](form_56.png)
In particular, if 

Definition at line 321 of file utils_multi_iterator.h.
|
inline |
Default constructor.
Definition at line 1119 of file utils_multi_iterator.h.
|
inlineexplicit |
Construct a multi_iterator with upper limit N and size k .
Definition at line 1127 of file utils_multi_iterator.h.
|
inlineexplicit |
Construct from a vector.
Definition at line 1135 of file utils_multi_iterator.h.
|
inlinevirtual |
Initialize the multi-index to.
![\[
(n_1,n_2,n_3,...,n_k) = (B+0,B+1,B+2,...,B+k-1)
\]](form_61.png)
Reimplemented from GiNaC::basic_multi_iterator< T >.
Definition at line 1148 of file utils_multi_iterator.h.
|
inlinevirtual |
The postfix increment operator allows to write for a multi-index n++, which will update n to the next configuration.
If n is in the last configuration and the increment operator ++ is applied to n, the overflow flag will be raised.
Reimplemented from GiNaC::basic_multi_iterator< T >.
Definition at line 1171 of file utils_multi_iterator.h.
References k.
|
inline |
Returns the sign of the permutation, defined by.
![\[
\left(-1\right)^{n_{inv}},
\]](form_64.png)
where 

![\[
n_i > n_j.
\]](form_67.png)
Definition at line 1242 of file utils_multi_iterator.h.
References k.
|
friend |