SOLIDstate
A C++ library for solid state physics
|
general purpouse class for solving quantum systems More...
#include <QuantumSystem.hpp>
Public Member Functions | |
void | Fill () |
fills matrixElements for selected Hamiltonian, with respect to HilbertSpace (Ensemble) and system Parameters More... | |
template<class Ens , typename... Targs> | |
void | SelectEnsemble (Targs...Fargs) |
selects Ensemble for QuantumSystem More... | |
template<template< template< typename > class, typename > class Ham> | |
void | SelectHamiltonian () |
selects IHamiltonian for QuantumSystem More... | |
template<template< template< typename > class, typename > class Obs, typename... Targs> | |
void | SelectObservable (Targs...Fargs) |
selects Observable for QuantumSystem More... | |
void | SelectParameters (Parameters< T2 > ¶meters) |
Select Parameters of the QuantumSystem. More... | |
void | SelectParameters (Geometry< T2 > &geometry) |
Select Geometry (predefined Parameters) More... | |
Public Attributes | |
HilbertSpace | hilbertSpace |
selected HilbertSpace for the QuantumSystem More... | |
Operator< T1, T2 > | hamiltonian |
container for matrixElements More... | |
Parameters< T2 > | parameters |
Parameters for hamiltonian. More... | |
general purpouse class for solving quantum systems
T1 | matrix type: arma::Mat and arma:SpMat are supported |
T2 | data type: double, std::complex<double> are supported |
class contains:
void solid::QuantumSystem< T1, T2 >::Fill | ( | ) |
fills matrixElements for selected Hamiltonian, with respect to HilbertSpace (Ensemble) and system Parameters
void solid::QuantumSystem< T1, T2 >::SelectEnsemble | ( | Targs... | Fargs | ) |
selects Ensemble for QuantumSystem
Ens | Ensemble template (e.g. GrandCanonical, Canonical) |
Targs | Ensemble specific argument types |
Fargs | Ensemble specific arguments (e.g. number of particles \(N\) or parity) |
void solid::QuantumSystem< T1, T2 >::SelectHamiltonian | ( | ) |
selects IHamiltonian for QuantumSystem
Ham | IHamiltonian template (e.g. KitaevHamiltonian) |
void solid::QuantumSystem< T1, T2 >::SelectObservable | ( | Targs... | Fargs | ) |
selects Observable for QuantumSystem
Obs | Observable template |
Targs | Observable specific argument types |
Fargs | Observable specific arguments (e.g. number of sites \(L\)) |
void solid::QuantumSystem< T1, T2 >::SelectParameters | ( | Parameters< T2 > & | parameters | ) |
Select Parameters of the QuantumSystem.
parameters | Parameters |
void solid::QuantumSystem< T1, T2 >::SelectParameters | ( | Geometry< T2 > & | geometry | ) |
Select Geometry (predefined Parameters)
geometry | Geometry |
Operator<T1, T2> solid::QuantumSystem< T1, T2 >::hamiltonian |
container for matrixElements
HilbertSpace solid::QuantumSystem< T1, T2 >::hilbertSpace |
selected HilbertSpace for the QuantumSystem
Parameters<T2> solid::QuantumSystem< T1, T2 >::parameters |
Parameters for hamiltonian.