triqs::hilbert_space::state<HilbertSpace,ScalarType,true>

#include <triqs/hilbert_space/state.hpp>

template<typename HilbertSpace, typename ScalarType> class state<HilbertSpace,ScalarType,true>

State: implementation based on a map

This specialization can work well on huge Hilbert spaces, as long as there are not too many non-vanishing amplitudes in the state.

Template parameters

  • HilbertSpace: Hilbert space type, one of [[hilbert_space]] and [[sub_hilbert_space]]
  • ScalarType: Amplitude type, normally double or std::complex<double>

Member types

value_type ScalarType Accessor to ScalarType template parameter
hilbert_space_t HilbertSpace Accessor to HilbertSpace template parameter

Member functions

(constructor)  
size  
operator()  
operator+=  
operator-=  
operator*=  
operator/=  
get_hilbert  
set_hilbert  

Non Member functions

dot_product  
foreach