TBTK
TBTK::Solver::LindhardSusceptibility Class Reference
Inheritance diagram for TBTK::Solver::LindhardSusceptibility:
TBTK::Solver::Susceptibility TBTK::Solver::Solver

Public Member Functions

 LindhardSusceptibility (const MomentumSpaceContext &momentumSpaceContext)
 
virtual ~LindhardSusceptibility ()
 
virtual LindhardSusceptibilitycreateSlave ()
 
virtual std::vector< std::complex< double > > calculateSusceptibility (const Index &index, const std::vector< std::complex< double >> &energies)
 
- Public Member Functions inherited from TBTK::Solver::Susceptibility
 Susceptibility (Algorithm algorithm, const MomentumSpaceContext &momentumSpaceContext)
 
virtual ~Susceptibility ()
 
const MomentumSpaceContextgetMomentumSpaceContext () const
 
void generateKPlusQLookupTable ()
 
Algorithm getAlgorithm () const
 
void setEnergiesAreInversionSymmetric (bool energiesAreInversionSymmetric)
 
bool getEnergiesAreInversionSymmetric () const
 
- Public Member Functions inherited from TBTK::Solver::Solver
 Solver ()
 
virtual ~Solver ()
 
virtual void setModel (Model &model)
 
ModelgetModel ()
 
const ModelgetModel () const
 

Additional Inherited Members

- Public Types inherited from TBTK::Solver::Susceptibility
enum  Algorithm { Lindhard = 0, Matsubara = 1, RPA = 2 }
 
- Protected Member Functions inherited from TBTK::Solver::Susceptibility
 Susceptibility (Algorithm algorithm, const MomentumSpaceContext &momentumSpaceContext, int *kPlusQLookupTable)
 
bool getIsMaster () const
 
int * getKPlusQLookupTable ()
 
const int * getKPlusQLookupTable () const
 
template<bool useKPlusQLookupTable>
int getKPlusQLinearIndex (unsigned int meshIndex, const std::vector< double > &k, int kLinearIndex) const
 
template<>
int getKPlusQLinearIndex (unsigned int meshIndex, const std::vector< double > &k, int kLinearIndex) const
 
template<>
int getKPlusQLinearIndex (unsigned int meshIndex, const std::vector< double > &k, int kLinearIndex) const
 

Constructor & Destructor Documentation

TBTK::Solver::LindhardSusceptibility::LindhardSusceptibility ( const MomentumSpaceContext momentumSpaceContext)

Constructor.

virtual TBTK::Solver::LindhardSusceptibility::~LindhardSusceptibility ( )
virtual

Destructor.

Member Function Documentation

virtual std::vector<std::complex<double> > TBTK::Solver::LindhardSusceptibility::calculateSusceptibility ( const Index index,
const std::vector< std::complex< double >> &  energies 
)
virtual

Calculate the susceptibility.

Implements TBTK::Solver::Susceptibility.

virtual LindhardSusceptibility* TBTK::Solver::LindhardSusceptibility::createSlave ( )
virtual

Create slave SusceptibilityCalcuator. The slave reuses internal lookup tables used to speed up the calculations and should not be used after the generating master have been destructed.

Implements TBTK::Solver::Susceptibility.


The documentation for this class was generated from the following file: