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
[legend]
Collaboration diagram for Pomerol::EnsembleAverage:
Collaboration graph
[legend]

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 */);
EA.prepare();
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 
)

Constructor.

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

◆ EnsembleAverage() [2/2]

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

Copy-constructor.

Parameters
[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
inline

Return the ensemble average.

Definition at line 73 of file EnsembleAverage.hpp.


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