Go to the documentation of this file.
23 #ifndef COM_DAFER45_TBTK_OVERLAP_AMPLITUDE
24 #define COM_DAFER45_TBTK_OVERLAP_AMPLITUDE
31 #include <initializer_list>
55 const Index &braIndex,
70 std::complex<double> amplitude,
71 const Index &braIndex,
86 const Index &braIndex,
98 const std::string &serializeation,
156 std::complex<double> amplitude;
171 amplitudeCallback =
nullptr;
175 if(amplitudeCallback){
195 if(amplitudeCallback ==
nullptr)
203 if(amplitudeCallback !=
nullptr){
204 return *amplitudeCallback;
208 "OverlapAmplitude::getAmplitudeCallback()",
209 "Tried to access AmplitudeCallback from an"
210 <<
" OverlapAmplitude without an AmplitudeCallback.",
219 + std::to_string(real(amplitude))
220 +
", " + std::to_string(imag(amplitude))
Overlap amplitude between state 'bra' and 'ket'.
Definition: OverlapAmplitude.h:37
bool getIsCallbackDependent() const
Definition: OverlapAmplitude.h:194
const Index & getBraIndex() const
Definition: OverlapAmplitude.h:186
std::string toString() const
Definition: Index.h:349
std::string toString() const
Definition: OverlapAmplitude.h:216
unsigned int getSizeInBytes() const
Definition: Index.h:548
const Index & getKetIndex() const
Definition: OverlapAmplitude.h:190
OverlapAmplitude()
Definition: OverlapAmplitude.h:170
Definition: OverlapAmplitude.h:41
Abstract base class for serializable objects.
std::complex< double > getAmplitude() const
Definition: OverlapAmplitude.h:174
Base class for psudo-serializable objects.
virtual std::complex< double > getOverlapAmplitude(const Index &braIndex, const Index &ketIndex) const =0
Mode
Definition: Serializable.h:47
const AmplitudeCallback & getAmplitudeCallback() const
Definition: OverlapAmplitude.h:202
Definition: PseudoSerializable.h:31
Physical index.
Definition: Index.h:44
unsigned int getSizeInBytes() const
Definition: OverlapAmplitude.h:228
std::string serialize(Serializable::Mode mode) const