![]() |
TBTK
|
Need a break? Support the development by playing Polarity Puzzles |
Extracts physical properties from the Solver::Diagonalizer. More...
#include <Diagonalizer.h>
Public Member Functions | |
| Diagonalizer (Solver::Diagonalizer &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< Subindex > states) |
| Property::GreensFunction | calculateGreensFunction (const std::vector< Index > &patterns, Property::GreensFunction::Type type=Property::GreensFunction::Type::Retarded) |
| virtual Property::DOS | calculateDOS () |
| virtual std::complex< double > | calculateExpectationValue (Index to, Index from) |
| 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 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) |
| virtual double | calculateEntropy () |
Public Member Functions inherited from TBTK::PropertyExtractor::PropertyExtractor | |
| PropertyExtractor () | |
| virtual | ~PropertyExtractor () |
| virtual void | setEnergyWindow (double lowerBound, double upperBound, int energyResolution) |
| virtual void | setEnergyWindow (int lowerFermionicMatsubaraEnergyIndex, int upperFermionicMatsubaraEnergyIndex, int lowerBosonicMatsubaraEnergyIndex, int upperBosonicMatsubaraEnergyIndex) |
| virtual void | setEnergyInfinitesimal (double energyInfinitesimal) |
| virtual Property::DOS | sampleDOS (unsigned int numSamples, const std::vector< Index > &patterns={}, unsigned int seed=time(nullptr)) |
Additional Inherited Members | |
Protected Types inherited from TBTK::PropertyExtractor::PropertyExtractor | |
| enum | EnergyType { Real, Matsubara } |
Protected Member Functions inherited from TBTK::PropertyExtractor::PropertyExtractor | |
| EnergyType | getEnergyType () const |
| int | getEnergyResolution () const |
| double | getLowerBound () const |
| double | getUpperBound () const |
| int | getLowerFermionicMatsubaraEnergyIndex () const |
| int | getUpperFermionicMatsubaraEnergyIndex () const |
| int | getLowerBosonicMatsubaraEnergyIndex () const |
| int | getUpperBosonicMatsubaraEnergyIndex () const |
| double | getEnergyInfinitesimal () const |
| template<typename DataType > | |
| void | calculate (void(*callback)(PropertyExtractor *cb_this, Property::Property &property, const Index &index, int offset, Information &information), Property::AbstractProperty< DataType > &property, Index pattern, const Index &ranges, int currentOffset, int offsetMultiplier, Information &information) |
| template<typename DataType > | |
| void | calculate (void(*callback)(PropertyExtractor *cb_this, Property::Property &property, const Index &index, int offset, Information &information), const IndexTree &allIndices, const IndexTree &memoryLayout, Property::AbstractProperty< DataType > &abstractProperty, Information &information) |
| void | ensureCompliantRanges (const Index &pattern, Index &ranges) |
| std::vector< int > | getLoopRanges (const Index &pattern, const Index &ranges) |
| IndexTree | generateIndexTree (std::vector< Index > patterns, const HoppingAmplitudeSet &hoppingAmplitudeSet, bool keepSummationWildcards, bool keepSpinWildcards) |
Extracts physical properties from the Solver::Diagonalizer.
The PropertyExtractor::Diagonalizer extracts Properties from the Solver::Diagonalizer.
| TBTK::PropertyExtractor::Diagonalizer::Diagonalizer | ( | Solver::Diagonalizer & | solver | ) |
Constructs a PropertyExtractor::Diagonalizer.
| solver | The Solver to use. |
|
virtual |
Overrides PropertyExtractor::calculateDensity().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateDensity().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateDOS().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateEntropy().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Calculate expectation value.
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
| Property::GreensFunction TBTK::PropertyExtractor::Diagonalizer::calculateGreensFunction | ( | const std::vector< Index > & | patterns, |
| Property::GreensFunction::Type | type = Property::GreensFunction::Type::Retarded |
||
| ) |
Calculate Green's function. Calculate Green's function.
|
virtual |
Overrides PropertyExtractor::calculateLDOS().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateLDOS().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateMagnetization().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateMagnetization().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateSpinPolarizedLDOS().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
|
virtual |
Overrides PropertyExtractor::calculateSpinPolarizedLDOS().
Reimplemented from TBTK::PropertyExtractor::PropertyExtractor.
| Property::WaveFunctions TBTK::PropertyExtractor::Diagonalizer::calculateWaveFunctions | ( | std::vector< Index > | patterns, |
| std::vector< Subindex > | states | ||
| ) |
Calculate WaveFunction on the Custom format. [See AbstractProperty for detailed information about the Custom format. See PropertyExtractor for detailed information about the patterns argument.]
| pattern | The pattern to use. |
| states | The states to extract the wave functions for. Can be set to {IDX_ALL} to get all states. |
|
inline |
Get amplitude for given eigenvector \(n\) and physical index \(x\): \(\Psi_{n}(x)\).
| state | Eigenstate number \(n\) |
| index | Physical index \(x\). |
|
inline |
Get a single eigenvalue.
| state | The state (in accendingorder) to get the eigen value for. |
| Property::EigenValues TBTK::PropertyExtractor::Diagonalizer::getEigenValues | ( | ) |
Get eigenvalues.