Constructors with indexing

The following constructor refers to State enumeration without number conservation:

danceq::internal::State::State(const uint64_t index, const uint64_t start, const uint64_t end)

Setting the State with integer counting.

Initializes a State instance such that the index is generated by interger counting of basis \(Q\) in the range start to end:

\[\textbf{index} = \sum_{i=\textbf{start}}^{\textbf{end}-1} \quad \sigma_i \cdot\textbf{Q}^{i-\textbf{start}} \, .\]

More information can be found here.

Parameters:
  • index – Target index

  • start – Start of range

  • end – End of range

The following constructor refers to State enumeration with number conservation:

danceq::internal::State::State(const uint64_t index, const IntType particle_number, const uint64_t start, const uint64_t end)

Setting a State with integer counting given the total particle number.

Initializes a State instance with a given particle number, particle_number, on sites start to end-1. index refers to the number of states with the same particle_number that encode a smaller integer obtained from the interger counting to the basis \(Q\).

\[\textbf{particle_number} = \sum_{i=\textbf{start}}^{\textbf{end}-1} \quad \sigma_i \,.\]

More information can be found here.

Parameters:
  • index – Target index

  • particle_number – Total particle number

  • start – Start of range

  • end – End of range