24 #ifndef COM_DAFER45_TBTK_SOLVER_MATSUBARA_SUSCEPTIBILITY 25 #define COM_DAFER45_TBTK_SOLVER_MATSUBARA_SUSCEPTIBILITY 29 #include "TBTK/MomentumSpaceContext.h" 30 #include "TBTK/Property/Susceptibility.h" 38 class MatsubaraSusceptibility :
public Solver,
public Communicator{
41 MatsubaraSusceptibility(
42 const MomentumSpaceContext &momentumSpaceContext,
43 const Property::GreensFunction &greensFunction
47 virtual MatsubaraSusceptibility* createSlave();
51 virtual std::vector<std::complex<double>> calculateSusceptibility(
53 const std::vector<std::complex<double>> &energies
57 std::vector<std::complex<double>> calculateSusceptibility(
59 int lowerMatsubaraEnergyIndex,
60 int upperMatsubaraEnergyIndex
64 Property::Susceptibility calculateSusceptibilityAllBlocks(
66 int lowerMatsubaraEnergyIndex,
67 int upperMatsubaraEnergyIndex
71 const Property::GreensFunction& getGreensFunction()
const;
74 const Property::GreensFunction &greensFunction;
77 const MomentumSpaceContext &momentumSpaceContext;
80 inline const Property::GreensFunction&
81 MatsubaraSusceptibility::getGreensFunction()
const{
82 return greensFunction;
89 Property container for the Green's function.
Base class for classes that can communicate their status during execution.