TBTK
TBTK::PropertyExtractor::ArnoldiIterator Class Reference

#include <ArnoldiIterator.h>

Inheritance diagram for TBTK::PropertyExtractor::ArnoldiIterator:
TBTK::PropertyExtractor::PropertyExtractor

Public Member Functions

 ArnoldiIterator (Solver::ArnoldiIterator &solver)
 
Property::EigenValues getEigenValues ()
 
double getEigenValue (int state)
 
const std::complex< double > getAmplitude (int state, const Index &index)
 
Property::WaveFunctions calculateWaveFunctions (std::vector< Index > patterns, std::vector< int > states)
 
virtual Property::DOS calculateDOS ()
 
virtual Property::LDOS calculateLDOS (Index pattern, Index ranges)
 
virtual Property::LDOS calculateLDOS (std::vector< Index > patterns)
 
virtual Property::SpinPolarizedLDOS calculateSpinPolarizedLDOS (Index pattern, Index ranges)
 
virtual Property::SpinPolarizedLDOS calculateSpinPolarizedLDOS (std::vector< Index > patterns)
 
- Public Member Functions inherited from TBTK::PropertyExtractor::PropertyExtractor
 PropertyExtractor ()
 
virtual ~PropertyExtractor ()
 
virtual void setEnergyWindow (double lowerBound, double upperBound, int energyResolution)
 
virtual void setEnergyInfinitesimal (double energyInfinitesimal)
 
virtual Property::Density calculateDensity (Index pattern, Index ranges)
 
virtual Property::Density calculateDensity (std::vector< Index > patterns)
 
virtual Property::Magnetization calculateMagnetization (Index pattern, Index ranges)
 
virtual Property::Magnetization calculateMagnetization (std::vector< Index > patterns)
 
virtual std::complex< double > calculateExpectationValue (Index to, Index from)
 
virtual double calculateEntropy ()
 

Additional Inherited Members

- Protected Member Functions inherited from TBTK::PropertyExtractor::PropertyExtractor
int getEnergyResolution () const
 
double getLowerBound () const
 
double getUpperBound () const
 
double getEnergyInfinitesimal () const
 
void calculate (void(*callback)(PropertyExtractor *cb_this, void *memory, const Index &index, int offset), void *memory, Index pattern, const Index &ranges, int currentOffset, int offsetMultiplier)
 
template<typename DataType >
void calculate (void(*callback)(PropertyExtractor *cb_this, void *memory, const Index &index, int offset), const IndexTree &allIndices, const IndexTree &memoryLayout, Property::AbstractProperty< DataType > &abstractProperty, int *spinIndexHint=nullptr)
 
void ensureCompliantRanges (const Index &pattern, Index &ranges)
 
void getLoopRanges (const Index &pattern, const Index &ranges, int *loopDimensions, int **loopRanges)
 
IndexTree generateIndexTree (std::vector< Index > patterns, const HoppingAmplitudeSet &hoppingAmplitudeSet, bool keepSummationWildcards, bool keepSpinWildcards)
 
void validatePatternsNumComponents (const std::vector< Index > &patterns, unsigned int expectedNumComponentIndices, const std::string &functionName) const
 
void validatePatternsSpecifiers (const std::vector< Index > &patterns, const std::vector< int > specifiers, const std::string &functionName) const
 
- Protected Attributes inherited from TBTK::PropertyExtractor::PropertyExtractor
void * hint
 

Detailed Description

The PropertyExtractor::ArnoldiIterator extracts common physical properties such as DOS, LDOS, etc. from a Solver::ArnoldiIterator. These can then be written to file using the FileWriter.

Constructor & Destructor Documentation

TBTK::PropertyExtractor::ArnoldiIterator::ArnoldiIterator ( Solver::ArnoldiIterator solver)

Constructs a PropertyExtractor::ArnoldiIterator.

Parameters
solverSolver to use.

Member Function Documentation

virtual Property::DOS TBTK::PropertyExtractor::ArnoldiIterator::calculateDOS ( )
virtual

Calculate Green's function. Overrides PropertyExtractor::calculateDOS().

Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.

virtual Property::LDOS TBTK::PropertyExtractor::ArnoldiIterator::calculateLDOS ( Index  pattern,
Index  ranges 
)
virtual
virtual Property::LDOS TBTK::PropertyExtractor::ArnoldiIterator::calculateLDOS ( std::vector< Index patterns)
virtual
virtual Property::SpinPolarizedLDOS TBTK::PropertyExtractor::ArnoldiIterator::calculateSpinPolarizedLDOS ( Index  pattern,
Index  ranges 
)
virtual
virtual Property::SpinPolarizedLDOS TBTK::PropertyExtractor::ArnoldiIterator::calculateSpinPolarizedLDOS ( std::vector< Index patterns)
virtual
Property::WaveFunctions TBTK::PropertyExtractor::ArnoldiIterator::calculateWaveFunctions ( std::vector< Index patterns,
std::vector< int >  states 
)

Calculate wave function.

const std::complex< double > TBTK::PropertyExtractor::ArnoldiIterator::getAmplitude ( int  state,
const Index index 
)
inline

Get amplitude for given eigenvector \(n\) and physical index \(x\): \(\Psi_{n}(x)\).

Parameters
stateEigenstate number \(n\)
indexPhysical index \(x\).
double TBTK::PropertyExtractor::ArnoldiIterator::getEigenValue ( int  state)
inline

Get eigenvalue.

Property::EigenValues TBTK::PropertyExtractor::ArnoldiIterator::getEigenValues ( )

Destructor. Get eigenvalues.


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