|
HΦ
3.2.0
|
Functions to perform spectrum calculations with the full-diagonalization method. More...
#include <complex.h>#include "global.h"#include <time.h>#include "struct.h"#include "lapack_diag.h"#include "makeHam.h"#include "CalcTime.h"
Include dependency graph for CalcSpectrumByFullDiag.c:Go to the source code of this file.
Functions | |
| void | zcopy_ (int *n, double complex *x, int *incx, double complex *y, int *incy) |
| void | zdotc_ (double complex *xy, int *n, double complex *x, int *incx, double complex *y, int *incy) |
| int | CalcSpectrumByFullDiag (struct EDMainCalStruct *X, int Nomega, double complex *dcSpectrum, double complex *dcomega) |
| Compute the Green function with the Lehmann representation and FD \[ G(z) = \sum_n \frac{|\langle n|c|0\rangle|^2}{z - E_n} \] . More... | |
Functions to perform spectrum calculations with the full-diagonalization method.
Definition in file CalcSpectrumByFullDiag.c.
| int CalcSpectrumByFullDiag | ( | struct EDMainCalStruct * | X, |
| int | Nomega, | ||
| double complex * | dcSpectrum, | ||
| double complex * | dcomega | ||
| ) |
Compute the Green function with the Lehmann representation and FD
\[ G(z) = \sum_n \frac{|\langle n|c|0\rangle|^2}{z - E_n} \]
.
Generate fully stored Hamiltonian. Because v0 & v1 are overwritten, copy v0 into vg.
v0 becomes eigenvalues in lapack_diag(), and L_vec becomes eigenvectors
Compute \(|\langle n|c|0\rangle|^2\) for all \(n\) and store them into v1, where \(c|0\rangle\) is vg.
\[ \sum_n \frac{|\langle n|c|0\rangle|^2}{z - E_n} \]
| [in,out] | X | |
| [in] | Nomega | Number of frequencies |
| [out] | dcSpectrum | [Nomega] Spectrum |
| [in] | dcomega | [Nomega] Frequency |
Definition at line 37 of file CalcSpectrumByFullDiag.c.
References EDMainCalStruct::Bind, BindStruct::Check, CheckList::idim_max, L_vec, lapack_diag(), makeHam(), StartTimer(), StopTimer(), TRUE, v0, v1, vg, and zcopy_().
Referenced by CalcSpectrum().
Here is the call graph for this function:
Here is the caller graph for this function:| void zcopy_ | ( | int * | n, |
| double complex * | x, | ||
| int * | incx, | ||
| double complex * | y, | ||
| int * | incy | ||
| ) |
| void zdotc_ | ( | double complex * | xy, |
| int * | n, | ||
| double complex * | x, | ||
| int * | incx, | ||
| double complex * | y, | ||
| int * | incy | ||
| ) |