gpe.slda#

Classes#

HomogeneousSLDA

Class for computing parameters for the Homogeneous SLDA.

Functions#

cubic_degeneracy(N, ny, nz)

Return the degeneracy of the point (N, ny, nz) on the cube.

get_n2s(N)

Return dictionary of sum(n**2) keys with degeneracies.

Module Contents#

cubic_degeneracy(N, ny, nz)[source]#

Return the degeneracy of the point (N, ny, nz) on the cube.

Assumes N >= ny >= nz.

get_n2s(N)[source]#

Return dictionary of sum(n**2) keys with degeneracies.

class HomogeneousSLDA(**kw)[source]#

Class for computing parameters for the Homogeneous SLDA.

hbar2_2m[source]#

hbar**2 / 2 / m.

Type:

float

xi[source]#

Bertsch parameter.

Type:

float

alpha[source]#

Inverse effective mass.

Type:

float

eta[source]#

Gap in units of the Fermi energy: eta = Delta / E_F

Type:

float

aurel[source]#

If True, then use Aurel’s regularization scheme which converges faster.

Type:

bool

hbar2_2m = 0.5[source]#
xi = 0.372[source]#
alpha = 1.09[source]#
eta = 0.45[source]#
aurel = False[source]#
_quad(f, mu_alpha, delta_alpha, kc_k0)[source]#

Return the integral of f(k) over a sphere in momentum up to kc.

_get_nk(k, mu_alpha, delta_alpha)[source]#

Carefully compute the density integrand to avoid round-off errors.

Uses a series expansion for large k.

_get_kF_EF_EFG(n)[source]#

Return (k_F, E_F, E_FG). (DRY)

Parameters:

n (float or array-like) – Total density n = n_a + n_b.

n_integrand(k, **kw)[source]#
tau_integrand(k, **kw)[source]#
nu_integrand(k, mu_alpha, delta_alpha)[source]#
gap_eq(delta_alpha, **kw)[source]#

Return the gap equation objective (should be zero).

compute(kc_k0=50, mu_alpha=1.0, delta_alpha=1)[source]#

Solve the gap equation, then compute the parameters.

Parameters:
  • kc_k0 (float) – Momentum cutoff in units of k0.

  • mu_alpha (float) – mu / alpha. Sets the scale for densities and k0.

  • delta_alpha (float) – Initial guess for delta / alpha. If this is zero, then properties of the normal state are computed.

Returns:

  • Res (tuple) – Object with alpha, beta and gamma parameters.

  • Note, for debugging purposes, all variables are stored in self._locals which can be

  • used with e.g. locals().update(s._locals).

f(y0, l)[source]#

Return the -pi P_l(-y_0)/sin(pi*l).

compute_lattice(y0, L)[source]#
_quad_box(f, mu_alpha, delta_alpha)[source]#

Return the integral of f(k) over a box.