Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
307 changes: 307 additions & 0 deletions Examples/iptdmft_dlr.ipynb

Large diffs are not rendered by default.

656 changes: 656 additions & 0 deletions Examples/syk_dlr_cooling.ipynb

Large diffs are not rendered by default.

66 changes: 66 additions & 0 deletions ModelDMFT/06-SYK_DLR.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
{
"cells": [
{
"cell_type": "markdown",
"id": "329ad08d",
"metadata": {},
"source": [
"# Self-consistent solution of the SYK equation using the Discrete Lehmann Representation\n",
"\n",
"The goal of this tutorial is to showcase the use of the discrete Lehmann representation (DLR) to solve the Dyson equation self-consistently (i.e., given an expression for the self-energy in terms of the Green's function), by implementing a simple self-consistent loop for the Sachdev-Ye-Kitaev (SYK) model. For background on the DLR and its use in TRIQS, we refer to the [TRIQS documentation](https://triqs.github.io/triqs/latest/userguide/python/tutorials/Basics/solutions/01s-Greens_functions.html#Compact-meshes-for-imaginary-time-/-frequency:-DLR-Green%E2%80%99s-function). We note that although this is not a DMFT calculation, some of the main steps (Fourier transform between imaginary time and Matsubara frequency, solving the Dyson equation) are similar to those in a DMFT calculation."
]
},
{
"cell_type": "markdown",
"id": "fee0f10b",
"metadata": {},
"source": [
"### Constructing DLR Green's Functions\n",
"\n",
"We begin by setting various parameters, building a DLR imaginary frequency mesh, and creating Green's function and self-energy containers from this mesh. The DLR parameters are the desired accuracy, `dlr_error`, and the problem bandwidth or frequency cutoff, `w_max`. We also set some physical problem parameters, as well as a maximum number of iterations for the self-consistency, a self-consistency convergence tolerance, and a mixing parameter $\\alpha$."
]
},
{
"cell_type": "markdown",
"id": "d5547d81",
"metadata": {},
"source": [
"### Exercise 1 \n",
"We first solve the $0+1$-dimensional (impurity) Sachdev-Ye-Kitaev (SYK) model self-consistently. The Hamiltonian is given by \n",
"$$H = \\frac{1}{(2N)^{3/2}}\\sum^N_{ijkl} J_{ijkl} c^\\dagger_i c^\\dagger_j c_k c_l$$\n",
"where the $J_{ijkl}$ are random Gaussian couplings between $N$ fermions with constant variance $J^2$.\n",
" This model has many interesting applications for non-Fermi liquids, or strange metals, and quantum criticality. You can read more about the model and its extensions [(here)](https://journals.aps.org/rmp/abstract/10.1103/RevModPhys.94.035004). Here we are interested in a simple form of the self-energy in the large-$N$ limit of the model, given by\n",
"\\begin{equation}\n",
"\\Sigma(\\tau) = -J^2 G^2(\\tau)G(-\\tau).\n",
"\\end{equation}\n",
"Combining this self-energy with the Dyson equation yields a self-consistent set of equations. These were solved using the DLR with weighted fixed point iteration in Sec. VII of [(this paper)](https://journals.aps.org/prb/abstract/10.1103/PhysRevB.105.235115). Following that reference, it is your turn to write a self-consistent loop to solve for $G$.\n",
"\n",
"As shown in the paper, as we approach the $\\beta = \\infty$ limit, the result should begin to match the conformal solution of these equations. Try comparing to the conformal solution! We should already have quite good agreement at $\\beta = 1000$.\n",
"\\begin{equation}\n",
"G_c(\\tau)=-\\frac{\\pi^{1 / 4}}{\\sqrt{2 \\beta}}\\left(\\sin \\left(\\frac{\\pi \\tau}{\\beta}\\right)\\right)^{-1 / 2}\n",
"\\end{equation}"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
253 changes: 253 additions & 0 deletions ModelDMFT/solutions/06s-SYK_DLR.ipynb

Large diffs are not rendered by default.