The functional must be selected at compilation stage in predefines.h file:
/**
* Select functional:
* - SLDA:
* for simulating unitary Fermi gas,
* it sets effective mass of particles to 1.0 which assures better convergence properties,
* in case of time time-dependent calculations SLDA is about 2x faster than ASLDA.
* - ASLDA:
* for simulating unitary Fermi gas,
* at qualitative level it produces results compatible with SLDA, however it is more accurate,
* due to presence of current terms in the functional it has worse convergence properties.
* - BDG:
* for simulating systems in BCS regime,
* equations of motion are equivalent to Bogoliubov-de-Gennes equations,
* you MUST set aBdG value in input file when using this functional.
* */
// #define FUNCTIONAL SLDA
#define FUNCTIONAL ASLDA
// #define FUNCTIONAL BDG
ASLDA - asymmetric superfluid local density approximation
The ASLDA functional has been designed in order to capture properties of strongly interacting unitary Fermi gas. The functional has the generic form:
\begin{aligned}
\mathcal{E}_{\textrm{edf}}(n,\nu,\ldots) & = \alpha_{\uparrow}(n_{\uparrow},n_{\downarrow})\frac{\tau_{\uparrow}}{2} +
\alpha_{\downarrow}(n_{\uparrow},n_{\downarrow})\frac{\tau_{\downarrow}}{2} \\
&+
D(n_{\uparrow},n_{\downarrow})
+
g(n_{\uparrow},n_{\downarrow})\nu^{\dagger}\nu \\
&+ [1-\alpha_{\uparrow}(n_{\uparrow},n_{\downarrow})]\dfrac{\bm{j}_{\uparrow}^2}{2n_{\uparrow}}
+ [1-\alpha_{\downarrow}(n_{\uparrow},n_{\downarrow})]\dfrac{\bm{j}_{\downarrow}^2}{2n_{\downarrow}}
\end{aligned}
The functional is fitted to quantum Monte Carlo data, and for spin symmetric and uniform system it provides:
E/E_{\textrm{ffg}}=\xi=0.40(1),\qquad\Delta/\varepsilon_F=0.504(24).
For more info about fitting procedure and explicit form of functional terms see: arXiv:1008.3933.
Stabilization of ASLDA functional
In the case of calculations for trapped system term \frac{\bm{j}_{\sigma}^2}{2n_{\sigma}}
is source of numerical instabilities. Precisely, for small density regions we have:
-
n_{\sigma}\rightarrow 0
, -
\bm{j}_{\sigma}\rightarrow 0
, -
\frac{\bm{j}_{\sigma}^2}{2n_{\sigma}}\rightarrow 0
.
However, division of very small numbers is numerically not stable operations. For this reason, we introduce stabilization procedure:
\dfrac{\bm{j}_{\sigma}^2}{2n_{\sigma}}\longrightarrow f_{\textrm{reg.}}(n_{\sigma})\dfrac{\bm{j}_{\sigma}^2}{2n_{\sigma}}
Role of f_{\textrm{reg.}}
is to exclude from computation regions of small density. The function is controlled by two parameters in predefines.h
file:
/**
* Meaningful only in case of ASLDA.
* Parameters defining stabilization procedure of ASLDA functional.
* For regions with density smaller than ASLDA_STABILIZATION_EXCLUDE_BELOW_DENISTY
* contribution from current term j^2/2n is assumed to be zero.
* For regions with density above ASLDA_STABILIZATION_RETAIN_ABOVE_DENSITY
* the contribution is assumed to be intact by stabilization procedure.
* */
#define ASLDA_STABILIZATION_RETAIN_ABOVE_DENSITY 1.0e-5
#define ASLDA_STABILIZATION_EXCLUDE_BELOW_DENISTY 1.0e-7
There meaning is presented on the figure below.
Smooth transition between densities ASLDA_STABILIZATION_EXCLUDE_BELOW_DENISTY
and ASLDA_STABILIZATION_RETAIN_ABOVE_DENSITY
is introduced in order to avoid discontinuities for quantities, that may lead to divergences when computing derivatives.
SLDA - superfluid local density approximation
The term in ASLDA functional that depends on the currents \bm{j}_{\sigma}
introduces a significant cost to the computation. This term is responsible for maintaining Gallilean invariance of the ASLDA theory. The effective mass was found to be consistent with the bare mass to within 10% for a large range of polarizations, Therefore, in many applications, one can set \alpha_{\sigma}=1
without losing qualitative features of ASLDA theory. Under this ausumptin we obtain SLDA functional:
\mathcal{E}_{\textrm{edf}}(n,\nu,\ldots) = \frac{\tau_{\uparrow}}{2} +
\frac{\tau_{\downarrow}}{2}
+
D(n_{\uparrow},n_{\downarrow})
+
g(n_{\uparrow},n_{\downarrow})\nu^{\dagger}\nu
Note 1: SLDA functional exhibits much better convergence properties than ASLDA, i.e st-wslda
codes typically converge in a significantly smaller number of iterations.
Note 2: SLDA functional provides by factor about 2x better performance in case of td-wslda
codes than ASLDA variant.
Below we provide plot showing relative energy change (in %) between simulations of SLDA and ASLDA that compute the energy of N fermions (both even and odd particle numbers) in the spin-symmetric unitary Fermi gas trapped in an isotropic harmonic oscillator. For more info see supplemental material of this paper.
BdG - Bogoliubov de-Gennes functional
The BdG functional is equivalent to Bogoliubov de-Gennes mean-field approximation. This approximation is valid in BCS regime, under assumption $-ak_F
<1$. The functional has form:
\mathcal{E}_{\textrm{edf}}(n,\nu,\ldots) = \frac{\tau_{\uparrow}}{2} +
\frac{\tau_{\downarrow}}{2}
+ g\nu^{\dagger}\nu
The (bare) coupling constant g
is related to scattering length by the formula g=4\pi\hbar^2a/m
.