Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
looking for Green's function poles
Go Python
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.gitignore
LICENSE
Makefile
README
bisection.go
bisection_test.go
bracket.go
clean
cubicspline.go
cubicspline_test.go
environment.go
environment_test.go
environment_test.json
grapher.py
integrate.go
integrate_test.go
kramerskronig.go
list_cache.go
list_cache_test.go
mesh2d.go
mesh2d_test.go
mesh_aggregates.go
mesh_aggregates_test.go
mpljson.go
principalvalue.go
principalvalue_test.go
selfconsistent.go
selfconsistent_test.go
spectrum.go
spectrum_test.go
tridiagonal.go
tridiagonal_test.go
utility.go
utility_test.go
vector.go
vector_cache.go
vector_cache_test.go
zerotemp.go
zerotemp_greens.go
zerotemp_plots.go
zerotemp_test.go
zerotemp_test.json
zerotemp_test_gc0.json
zerotemp_test_gc0_cache.json

README

Find the poles of the Green's function G_{c0} for the physical electron

G_{c0}(k\omega) = \frac{1}{4N} \sum_{q} \left[ 
\left(1+\frac{\lambda}{\omega_q}\right) \left(1+\frac{\xi_h(q-k)}{E_h(q-k)}\right) \frac{n_q + f(E_h(q-k))}{i\omega - \omega_q + E_h(q-k)} 
+ \left(1+\frac{\lambda}{\omega_q}\right) \left(1-\frac{\xi_h(q-k)}{E_h(q-k)}\right) \frac{n_q + 1 - f(E_h(q-k))}{i\omega - \omega_q - E_h(q-k)}
- \left(1-\frac{\lambda}{\omega_q}\right) \left(1+\frac{\xi_h(q-k)}{E_h(q-k)}\right) \frac{n_q + 1 - f(E_h(q-k))}{i\omega + \omega_q + E_h(q-k)}
- \left(1-\frac{\lambda}{\omega_q}\right) \left(1-\frac{\xi_h(q-k)}{E_h(q-k)}\right) \frac{n_q + f(E_h(q-k))}{i\omega + \omega_q - E_h(q-k)} \right]

lambda is the boson chemical potential - treat as a free parameter (scaled with t0?)

at zero temperature, need to fix D1, mu, and F0 by self-consistent equations used before

at higher temperatures, beta is a free parameter; fix beta_c by looking at point where F0 = 0

-------

self-consistent equation:
-interface function "absError(val float64, env Environment) float64" gives lhs - rhs of equation (not abs(lhs - rhs) to avoid singularity in derivative)
-"solve(env Environment) Environment" finds the root of absError by building a closure around absError with env and passing the closure to a root-finder.  returned Environment has the appropriate variable set to the root of absError.

self-consistent system:
-interface function "solve(env Environment) Environment" solves all associated self-consistent equations iteratively. returns Environment after system has been solved.
-implementing type holds a slice of self-consistent equations.  those with lowest indexes are highest priority to solve.  start with eq[0]. then do eq[1] followed by eq[0], iterating until both are solved.  continue to eq[2]->1->0, etc.

----

requires packages gsl and gsl-devel to build on fedora
Something went wrong with that request. Please try again.