#include <OrbitalTransform.h>
|
| | OrbitalTransform (const CheMPS2::Hamiltonian &ham) |
| |
| virtual | ~OrbitalTransform ()=default |
| |
| void | fillHamCI (CheMPS2::Hamiltonian &HamCI) |
| |
| void | fillConstAndTmat (CheMPS2::Hamiltonian &Ham) const |
| |
| void | buildOneBodyMatrixElements () |
| |
| void | set_unitary (UnitaryMatrix &unit) |
| |
| CheMPS2::Hamiltonian & | get_ham () |
| |
| const CheMPS2::Hamiltonian & | get_ham () const |
| |
| double | TmatRotated (const int index1, const int index2) const |
| |
| double | get_norb (int irrep) const |
| |
| double | get_difference_orig (CheMPS2::Hamiltonian &hamin) const |
| |
| void | CheckDeviationFromUnitary () const |
| |
| void | update_unitary (double *step) |
| |
| UnitaryMatrix & | get_unitary () |
| |
| UnitaryMatrix & | get_unitary () const |
| |
| void | DoJacobiRotation (CheMPS2::Hamiltonian &, int k, int l, double theta) |
| |
| void | update_unitary (const UnitaryMatrix &, bool replace=false) |
| |
| | OrbitalTransform (const CheMPS2::Hamiltonian &ham) |
| |
| virtual | ~OrbitalTransform ()=default |
| |
| void | fillHamCI (CheMPS2::Hamiltonian &HamCI) |
| |
| void | fillConstAndTmat (CheMPS2::Hamiltonian &Ham) const |
| |
| void | buildOneBodyMatrixElements () |
| |
| void | set_unitary (UnitaryMatrix &unit) |
| |
| CheMPS2::Hamiltonian & | get_ham () |
| |
| const CheMPS2::Hamiltonian & | get_ham () const |
| |
| double | TmatRotated (const int index1, const int index2) const |
| |
| double | get_norb (int irrep) const |
| |
| double | get_difference_orig (CheMPS2::Hamiltonian &hamin) const |
| |
| void | CheckDeviationFromUnitary () const |
| |
| void | update_unitary (double *step) |
| |
| UnitaryMatrix & | get_unitary () |
| |
| UnitaryMatrix & | get_unitary () const |
| |
| void | DoJacobiRotation (CheMPS2::Hamiltonian &, int k, int l, double theta) |
| |
| void | update_unitary (const UnitaryMatrix &, bool replace=false) |
| |
Definition at line 16 of file OrbitalTransform.h.
| virtual simanneal::OrbitalTransform::~OrbitalTransform |
( |
| ) |
|
|
virtualdefault |
| virtual simanneal::OrbitalTransform::~OrbitalTransform |
( |
| ) |
|
|
virtualdefault |
| void OrbitalTransform::buildOneBodyMatrixElements |
( |
| ) |
|
This method fills the OneBodyMatrixElements array with the 1-body matrix elements so we can rotate them
Definition at line 138 of file OrbitalTransform.cpp.
| void simanneal::OrbitalTransform::buildOneBodyMatrixElements |
( |
| ) |
|
| void OrbitalTransform::CheckDeviationFromUnitary |
( |
| ) |
const |
| void simanneal::OrbitalTransform::CheckDeviationFromUnitary |
( |
| ) |
const |
| void OrbitalTransform::DoJacobiRotation |
( |
CheMPS2::Hamiltonian & |
ham_rot, |
|
|
int |
k, |
|
|
int |
l, |
|
|
double |
theta |
|
) |
| |
Update ham_rot in place with a jacobi rotation between orbital k and l over an angle of theta. k and l should be in the same irrep.
- Parameters
-
| k | the first orbital |
| l | the second orbital |
| theta | the angle to rotation over |
- Returns
- an rotated Hamiltonian
Definition at line 287 of file OrbitalTransform.cpp.
| void simanneal::OrbitalTransform::DoJacobiRotation |
( |
CheMPS2::Hamiltonian & |
, |
|
|
int |
k, |
|
|
int |
l, |
|
|
double |
theta |
|
) |
| |
| double OrbitalTransform::get_norb |
( |
int |
irrep | ) |
const |
| double simanneal::OrbitalTransform::get_norb |
( |
int |
irrep | ) |
const |
| UnitaryMatrix& simanneal::OrbitalTransform::get_unitary |
( |
| ) |
const |
|
inline |
| UnitaryMatrix& simanneal::OrbitalTransform::get_unitary |
( |
| ) |
const |
|
inline |
| void simanneal::OrbitalTransform::set_unitary |
( |
UnitaryMatrix & |
unit | ) |
|
| double simanneal::OrbitalTransform::TmatRotated |
( |
const int |
index1, |
|
|
const int |
index2 |
|
) |
| const |
| double OrbitalTransform::TmatRotated |
( |
const int |
index1, |
|
|
const int |
index2 |
|
) |
| const |
| void OrbitalTransform::update_unitary |
( |
double * |
step | ) |
|
| void simanneal::OrbitalTransform::update_unitary |
( |
double * |
step | ) |
|
| void OrbitalTransform::update_unitary |
( |
const UnitaryMatrix & |
X, |
|
|
bool |
replace = false |
|
) |
| |
Update the unitary matrix with exp(X). In X you should store an anti-symmetric real matrix.
- Parameters
-
| X | the anti-symmetric real matrix |
| replace | replace or multiply? By default do exp(X)*U |
Definition at line 273 of file OrbitalTransform.cpp.
| void simanneal::OrbitalTransform::update_unitary |
( |
const UnitaryMatrix & |
, |
|
|
bool |
replace = false |
|
) |
| |
The documentation for this class was generated from the following files: