Detailed Description

Iterates over a range of basis indices with information on each of its quantum number.

Definition at line 243 of file QuantumNumbers.hpp.

#include <QuantumNumbers.hpp>

Collaboration diagram for QuantumNumbersIterator:

Public Types

typedef QuantumNumbersIterator Self_t
 

Public Member Functions

 QuantumNumbersIterator (const QuantumNumbers &QN_in)
 Initialize an iterator through all quantum numbers. More...
 
 QuantumNumbersIterator (const QuantumNumbers &QN_in, const PetscInt &GlobIdxStart, const PetscInt &GlobIdxEnd)
 Initialize an iterator through a range of indices. More...
 
PetscInt Idx () const
 Gets the current state index. More...
 
PetscInt BlockIdx () const
 Gets the current quantum number block index. More...
 
PetscInt IdxStart () const
 Gets the first quantum number block index. More...
 
PetscInt IdxEnd () const
 Gets the first quantum number block index. More...
 
PetscInt LocIdx () const
 Gets the current local index in the quantum number block. More...
 
bool Loop () const
 Determines whether the end of the range has not yet been reached. More...
 
PetscInt Steps () const
 Gets the number of steps incremented from the starting index. More...
 
Self_t operator++ ()
 Overloading the ++ increment. More...
 
PetscErrorCode OpBlockToGlobalRange (const PetscInt &BlockShift, PetscInt &GlobIdxStart, PetscInt &GlobIdxEnd, PetscBool &flg) const
 Interfaced function OpBlockToGlobalRange from the Quantum Numbers class with current block index as input. More...
 

Private Attributes

const QuantumNumbersQN
 Reference to the Quantum Numbers object on which this iterator is based on. More...
 
PetscInt istart_ = 0
 Starting index in the range [Istart, Iend) More...
 
PetscInt iend_ = 0
 The final excluded index of the range [Istart, Iend) More...
 
PetscInt idx_ = 0
 
PetscInt blockidx_ = 0
 The block index associated with Idx. More...
 
PetscInt locidx_ = 0
 The local index in the block associated with Idx. More...
 

The documentation for this class was generated from the following file:
This site was generated by Sphinx using Doxygen with a customized theme from doxygen-bootstrapped.