SOLIDstate
A C++ library for solid state physics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Public Attributes | List of all members
solid::QuantumState< T > Class Template Reference

template class representing Quantum State of the system More...

#include <QuantumState.hpp>

Public Member Functions

 QuantumState ()
 
 QuantumState (arma::Col< T > vec)
 Construct a new Quantum State< T> object from arma::Col. More...
 
 QuantumState (arma::subview_col< T > vec)
 Construct a new Quantum State< T> object from arma::subview_col. More...
 
template<typename T2 >
 QuantumState (QuantumState< T2 > &qState)
 Construct a new Quantum State< T> object. More...
 
void print (std::string extra_text="")
 print() the vector More...
 
template<>
 QuantumState (QuantumState< double > &qState)
 
template<>
 QuantumState (QuantumState< arma::cx_double > &qState)
 

Public Attributes

arma::Col< T > vector
 container of the QuantumState More...
 
double energy
 energy, it is assigned after eigen problem is solved More...
 

Detailed Description

template<typename T>
class solid::QuantumState< T >

template class representing Quantum State of the system

Template Parameters
Tdata type: double, std::complex<double> are supported

Constructor & Destructor Documentation

template<typename T>
template solid::QuantumState< T >::QuantumState ( )
inline
template<typename T>
solid::QuantumState< T >::QuantumState ( arma::Col< T >  vec)
inline

Construct a new Quantum State< T> object from arma::Col.

Parameters
vec
template<typename T>
solid::QuantumState< T >::QuantumState ( arma::subview_col< T >  vec)
inline

Construct a new Quantum State< T> object from arma::subview_col.

Parameters
vec
template<typename T>
template<typename T2 >
solid::QuantumState< T >::QuantumState ( QuantumState< T2 > &  qState)

Construct a new Quantum State< T> object.

Template Parameters
T2should be double, converts from double to complex, otherwise assertion
Parameters
qState
template<>
solid::QuantumState< arma::cx_double >::QuantumState ( QuantumState< double > &  qState)
template<>
solid::QuantumState< double >::QuantumState ( QuantumState< arma::cx_double > &  qState)

Member Function Documentation

template<typename T>
void solid::QuantumState< T >::print ( std::string  extra_text = "")
inline

print() the vector

Parameters
extra_text

Member Data Documentation

template<typename T>
double solid::QuantumState< T >::energy

energy, it is assigned after eigen problem is solved

\( \hat H | \psi \rangle = E | \psi \rangle, \) where \(E\) is energy.

template<typename T>
arma::Col<T> solid::QuantumState< T >::vector

container of the QuantumState


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