23 #ifndef COM_DAFER45_TBTK_BASIC_STATE 24 #define COM_DAFER45_TBTK_BASIC_STATE 48 std::complex<double> overlap,
49 const Index &braIndex,
50 const Index &braRelativeUnitCell = {}
55 std::complex<double> matrixElement,
57 const Index &braRelativeUnitCell = {}
72 std::vector<std::tuple<std::complex<double>,
Index, Index>> overlaps;
77 std::vector<std::tuple<std::complex<double>, Index, Index>> matrixElements;
Data structure for flexible physical indices.
Abstract state class from which other states inherit.
void addMatrixElement(std::complex< double > matrixElement, const Index &bra, const Index &braRelativeUnitCell={})
Definition: BasicState.cpp:52
Definition: AbstractOperator.h:30
void addOverlap(std::complex< double > overlap, const Index &braIndex, const Index &braRelativeUnitCell={})
Definition: BasicState.cpp:44
BasicState(const Index &index, const Index &unitCellIndex={})
Definition: BasicState.cpp:28
virtual BasicState * clone() const
Definition: BasicState.cpp:38
Definition: AbstractState.h:37
virtual std::complex< double > getOverlap(const AbstractState &bra) const
Definition: BasicState.cpp:60
virtual ~BasicState()
Definition: BasicState.cpp:35
Definition: BasicState.h:35
Definition: AbstractOperator.h:26
Default (dummy) operator class for indicating default behavior.
Definition: DefaultOperator.h:30
virtual std::complex< double > getMatrixElement(const AbstractState &bra, const AbstractOperator &o=DefaultOperator()) const
Definition: BasicState.cpp:118