pomerol  2.1
Public Member Functions
Pomerol::EnsembleAverage Class Reference

Canonical ensemble average of a monomial operator. More...

#include <EnsembleAverage.hpp>

Inheritance diagram for Pomerol::EnsembleAverage:
Inheritance graph
Collaboration diagram for Pomerol::EnsembleAverage:
Collaboration graph

Public Member Functions

 EnsembleAverage (MonomialOperator const &A, DensityMatrix const &DM)
 EnsembleAverage (EnsembleAverage const &EA)
void compute ()
 Compute the ensemble average of \(\hat A\). More...
ComplexType operator() () const
 Return the ensemble average. More...
- Public Member Functions inherited from Pomerol::Thermal
 Thermal (RealType beta)
- Public Member Functions inherited from Pomerol::ComputableObject
 ComputableObject ()=default
StatusEnum getStatus () const
 Return the current computation status. More...
void setStatus (StatusEnum Status_in)

Additional Inherited Members

- Public Types inherited from Pomerol::ComputableObject
enum  StatusEnum { Constructed, Prepared, Computed }
 Computation status of the object. More...
- Data Fields inherited from Pomerol::Thermal
const RealType beta
 Inverse temperature \(\beta\). More...
const ComplexType MatsubaraSpacing
 Spacing between (imaginary) Matsubara frequencies, \(i\pi/\beta\). More...
- Protected Attributes inherited from Pomerol::ComputableObject
StatusEnum Status = Constructed
 Current computation status. More...

Detailed Description

Canonical ensemble average of a monomial operator.

This class represents the ensemble average of a monomial operator \(\hat A\),

\[ \langle A \rangle = Tr[\hat\rho \hat A]. \]

Usage example:

EnsembleAverage EA(A /* Monomial operator */, DM /* Density matrix */);
auto average = EA();

Definition at line 47 of file EnsembleAverage.hpp.

Constructor & Destructor Documentation

◆ EnsembleAverage() [1/2]

Pomerol::EnsembleAverage::EnsembleAverage ( MonomialOperator const &  A,
DensityMatrix const &  DM 


[in]AMonomial operator \(\hat A\).
[in]DMMany-body density matrix \(\hat\rho\).

◆ EnsembleAverage() [2/2]

Pomerol::EnsembleAverage::EnsembleAverage ( EnsembleAverage const &  EA)


[in]EAEnsembleAverage object to be copied.

Member Function Documentation

◆ compute()

void Pomerol::EnsembleAverage::compute ( )

Compute the ensemble average of \(\hat A\).

◆ operator()()

ComplexType Pomerol::EnsembleAverage::operator() ( ) const

Return the ensemble average.

Definition at line 73 of file EnsembleAverage.hpp.

The documentation for this class was generated from the following file:
EnsembleAverage(MonomialOperator const &A, DensityMatrix const &DM)