-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit b162a78
Showing
472 changed files
with
207,851 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Sphinx build info version 1 | ||
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done. | ||
config: fb433f8af712df3ecb0d794aebb5e7ed | ||
tags: 645f666f9bcd5a90fca523b33c5a78b7 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added
BIN
+48.4 KB
.doctrees/browsesource/module/ed_hamiltonian_nonsu2_direct_hxv.doctree
Binary file not shown.
Binary file added
BIN
+48.4 KB
.doctrees/browsesource/module/ed_hamiltonian_nonsu2_stored_hxv.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added
BIN
+61.6 KB
.doctrees/browsesource/module/ed_hamiltonian_normal_direct_hxv.doctree
Binary file not shown.
Binary file added
BIN
+61.6 KB
.doctrees/browsesource/module/ed_hamiltonian_normal_stored_hxv.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added
BIN
+50.4 KB
.doctrees/browsesource/module/ed_hamiltonian_superc_direct_hxv.doctree
Binary file not shown.
Binary file added
BIN
+50.4 KB
.doctrees/browsesource/module/ed_hamiltonian_superc_stored_hxv.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file.
7 changes: 7 additions & 0 deletions
7
_downloads/026dfd6a198e016d3e52ce47f9007d0f/U3.00_hamiltonian.restart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
#Ek_l1_s1 Vk_l1_s1 | ||
-6.480190552585E-01 1.945170994948E-01 | ||
-2.541161887408E-02 8.294803024290E-05 | ||
-2.571185948695E-03 1.774585377770E-03 | ||
2.617545746267E-03 1.778990687474E-03 | ||
2.535731264219E-02 -4.903727066652E-05 | ||
6.485905353075E-01 1.945945322989E-01 |
8 changes: 8 additions & 0 deletions
8
_downloads/02bd26b8fd01100907c5a41c0bc0b2fa/U1.00_hamiltonian.restart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#Ek_l1_s1 Vk_l1_s1 | ||
-4.076868353266E-01 2.765046014120E-01 | ||
-8.289638067108E-02 1.475592529053E-01 | ||
-1.347666656789E-02 6.655691154192E-02 | ||
2.726322096903E-06 3.222354973937E-02 | ||
1.350639542721E-02 6.662898931960E-02 | ||
8.309985420397E-02 1.477426962404E-01 | ||
4.083402394518E-01 2.764554661220E-01 |
243 changes: 243 additions & 0 deletions
243
_downloads/0c988b2ad15b0db61507fb3b9f1ecb1d/03_excBHZ.f90
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,243 @@ | ||
program ed_bhz | ||
USE EDIPACK2 | ||
USE SCIFOR | ||
USE DMFT_TOOLS | ||
USE MPI | ||
implicit none | ||
|
||
integer :: iloop,Lk,Nso | ||
logical :: converged | ||
!Bath: | ||
integer :: Nb | ||
real(8),allocatable :: Bath(:) | ||
!The local hybridization function: | ||
!The local hybridization function: | ||
complex(8),dimension(:,:,:),allocatable :: Weiss, Weiss_ | ||
complex(8),dimension(:,:,:),allocatable :: Smats,Sreal | ||
complex(8),dimension(:,:,:),allocatable :: Gmats,Greal | ||
!hamiltonian input: | ||
complex(8),dimension(:,:,:),allocatable :: Hk | ||
complex(8),dimension(:,:),allocatable :: Hloc | ||
complex(8),dimension(:,:),allocatable :: sigmaBHZ | ||
real(8),dimension(:,:),allocatable :: Zbhz | ||
!variables for the model: | ||
integer :: Nx,Nkpath | ||
real(8) :: mh,lambda,wmixing,z2 | ||
character(len=16) :: finput | ||
!>Gamma matrices: | ||
complex(8),dimension(4,4) :: Gamma1,Gamma2,Gamma5,GammaN | ||
complex(8),dimension(4,4) :: GammaE0,GammaEx,GammaEy,GammaEz | ||
!>Replica bath | ||
real(8),dimension(:,:),allocatable :: lambdasym_vector | ||
complex(8),dimension(:,:,:),allocatable :: Hsym_basis | ||
!MPI Vars: | ||
integer :: comm,rank | ||
logical :: master,fhtop | ||
|
||
call init_MPI() | ||
comm = MPI_COMM_WORLD | ||
call StartMsg_MPI(comm) | ||
rank = get_Rank_MPI(comm) | ||
master = get_Master_MPI(comm) | ||
|
||
|
||
!Parse additional variables && read Input && read H(k)^4x4 | ||
call parse_cmd_variable(finput,"FINPUT",default='inputED_BHZ.conf') | ||
call parse_input_variable(Nx,"NX",finput,default=100) | ||
call parse_input_variable(nkpath,"NKPATH",finput,default=500) | ||
call parse_input_variable(mh,"MH",finput,default=0.d0) | ||
call parse_input_variable(lambda,"LAMBDA",finput,default=0.d0) | ||
call parse_input_variable(wmixing,"WMIXING",finput,default=0.75d0) | ||
! | ||
call ed_read_input(trim(finput)) | ||
! | ||
! | ||
!Add DMFT CTRL Variables used in DMFT_TOOLS: | ||
call add_ctrl_var(Norb,"norb") | ||
call add_ctrl_var(Nspin,"nspin") | ||
call add_ctrl_var(beta,"beta") | ||
call add_ctrl_var(xmu,"xmu") | ||
call add_ctrl_var(wini,'wini') | ||
call add_ctrl_var(wfin,'wfin') | ||
call add_ctrl_var(eps,"eps") | ||
|
||
if(Nspin/=2.OR.Norb/=2)stop "Wrong setup from input file: Nspin=Norb=2 -> 4Spin-Orbitals" | ||
Nso=Nspin*Norb | ||
Lk=Nx**2 | ||
|
||
!Allocate local functions: | ||
allocate(Weiss(Nso,Nso,Lmats)) | ||
allocate(Weiss_(Nso,Nso,Lmats)) | ||
allocate(Smats(Nso,Nso,Lmats)) | ||
allocate(Gmats(Nso,Nso,Lmats)) | ||
allocate(Sreal(Nso,Nso,Lreal)) | ||
allocate(Greal(Nso,Nso,Lreal)) | ||
allocate(SigmaBHZ(Nso,Nso)) | ||
allocate(Zbhz(Nso,Nso)) | ||
|
||
gamma1=kron( pauli_sigma_z, pauli_tau_x) | ||
gamma2=kron( pauli_sigma_0,-pauli_tau_y) | ||
gamma5=kron( pauli_sigma_0, pauli_tau_z) | ||
gammaN=kron( pauli_sigma_0, pauli_tau_0) | ||
! | ||
gammaE0=kron( pauli_sigma_0, pauli_tau_x ) | ||
gammaEx=kron( pauli_sigma_x, pauli_tau_x ) | ||
gammaEy=kron( pauli_sigma_y, pauli_tau_x ) | ||
gammaEz=kron( pauli_sigma_z, pauli_tau_x ) | ||
|
||
|
||
|
||
!> Set the basis vectors square lattice | ||
call TB_set_ei([1d0,0d0],[0d0,1d0]) ! real-space lattice basis vectors | ||
call TB_set_bk([pi2,0d0],[0d0,pi2]) ! k-space lattice basis vectors | ||
!> Set the self-energy correction to zero | ||
call set_SigmaBHZ() | ||
!> Allocate and build the lattice Hamiltonian using model function above. | ||
allocate(Hk(Nso,Nso,Lk)) ;Hk=zero | ||
call TB_build_model(Hk,hk_bhz,Nso,[Nx,Nx]) | ||
!> Solve the band structure | ||
call solve_Hk() | ||
|
||
|
||
!> Get local Hamiltonian summing over k (one can do better) | ||
allocate(Hloc(Nso,Nso)) | ||
Hloc = sum(Hk,dim=3)/Lk | ||
where(abs(dreal(Hloc))<1d-6)Hloc=zero | ||
!> Set H_{loc} in EDIpack2 | ||
call ed_set_hloc(Hloc) | ||
|
||
|
||
!> Setup the replica bath basis for the case E0EzEx(singlet,tripletZ,tripletX) | ||
allocate(lambdasym_vector(Nbath,4)) | ||
allocate(Hsym_basis(Nso,Nso,4)) | ||
Hsym_basis(:,:,1)=Gamma5 ;lambdasym_vector(:,1)= Mh | ||
Hsym_basis(:,:,2)=GammaE0 ;lambdasym_vector(:,2)= sb_field | ||
Hsym_basis(:,:,3)=GammaEz ;lambdasym_vector(:,3)= sb_field | ||
Hsym_basis(:,:,4)=GammaEx ;lambdasym_vector(:,4)=-sb_field | ||
!> Set the replica bath | ||
call ed_set_Hreplica(Hsym_basis,lambdasym_vector) | ||
!> Get bath dimension and allocate user bath to this size | ||
Nb=ed_get_bath_dimension(4)!(Hsym_basis) | ||
allocate(Bath(Nb)) | ||
! | ||
!> Initialize the ED solver (bath is guessed or read from file) | ||
call ed_init_solver(bath) | ||
|
||
|
||
!DMFT loop | ||
iloop=0;converged=.false. | ||
do while(.not.converged.AND.iloop<nloop) | ||
iloop=iloop+1 | ||
call start_loop(iloop,nloop,"DMFT-loop") | ||
|
||
!> Solve the impurity problem, retrieve matsubara self-energy | ||
call ed_solve(bath) | ||
call ed_get_sigma(Smats,axis='mats') | ||
|
||
!> Get Gloc (using DMFT_TOOLS) | ||
call get_gloc(Hk,Gmats,Smats,axis='m') | ||
call write_gf(Gmats,"Gloc",axis='mats',iprint=3) | ||
|
||
!> Update the Weiss field: (using DMFT_TOOLS). Linear mixing. | ||
call dmft_self_consistency(Gmats,Smats,Weiss) | ||
if(iloop>1)Weiss = wmixing*Weiss + (1.d0-wmixing)*Weiss_ | ||
|
||
!> Fit the new bath, starting from the current bath + the update Weiss field | ||
call ed_chi2_fitgf(Weiss,bath) | ||
|
||
!Check convergence (using DMFT_TOOLS) | ||
converged = check_convergence(Weiss(1,1,:),dmft_error,nsuccess,nloop) | ||
|
||
call end_loop | ||
enddo | ||
|
||
!> retrieve real-axis self-energy and build local Green's function | ||
call ed_get_sigma(Sreal,axis='real') | ||
call get_gloc(Hk,Greal,Sreal,axis='r') | ||
call write_gf(Greal,"Gloc",axis='real',iprint=3) | ||
! | ||
!> Set the self-energy correction, build the topological Hamiltonian and get corresponding invariant | ||
call set_SigmaBHZ(Smats(:,:,1)) | ||
call TB_build_model(Hk,hk_bhz,Nso,[Nx,Nx]) !this is now Htop = Z.(Hk + ReSigma) | ||
!> Solve the topological Hamiltonian Band structure (a proxy for GF poles). | ||
call solve_hk() | ||
|
||
|
||
call finalize_MPI() | ||
|
||
|
||
|
||
|
||
contains | ||
|
||
|
||
|
||
|
||
|
||
|
||
function hk_bhz(kvec,N) result(hk) | ||
integer :: N | ||
real(8),dimension(:) :: kvec | ||
complex(8),dimension(N,N) :: hk | ||
real(8) :: ek,kx,ky | ||
! | ||
if(N/=Nso)stop "hk_bhz error: N != Nspin*Norb == 4" | ||
kx = kvec(1) ; ky=kvec(2) | ||
ek = -1d0*(cos(kx)+cos(ky)) | ||
Hk = (Mh+ek)*Gamma5 + lambda*sin(kx)*Gamma1 + lambda*sin(ky)*Gamma2 | ||
! | ||
!> Include the self-energy correction, if previously defined | ||
if(fhtop)then | ||
Hk = Hk + dreal(SigmaBHZ) | ||
Hk = matmul(Zbhz,Hk) | ||
endif | ||
end function hk_bhz | ||
|
||
|
||
subroutine set_SigmaBHZ(sigma) | ||
complex(8),dimension(Nso,Nso),optional :: sigma | ||
integer :: ii | ||
! | ||
sigmaBHZ = zero ; Zbhz=eye(Nso); fhtop=.false. | ||
! | ||
if(present(sigma))then | ||
sigmaBHZ=sigma | ||
! | ||
Zbhz=zero | ||
do ii=1,Nso | ||
Zbhz(ii,ii) = 1.d0/abs( 1.d0 + abs(dimag(sigmaBHZ(ii,ii))/pi*beta)) | ||
end do | ||
! | ||
fhtop=.true. | ||
! | ||
endif | ||
end subroutine set_SigmaBHZ | ||
|
||
|
||
|
||
|
||
!--------------------------------------------------------------------! | ||
!PURPOSE: Solve the topological Hamiltonian | ||
!--------------------------------------------------------------------! | ||
subroutine solve_hk() | ||
integer :: Npts | ||
real(8),dimension(:,:),allocatable :: kpath | ||
! | ||
if(master)then | ||
Npts = 4 | ||
Lk=(Npts-1)*Nkpath | ||
allocate(kpath(Npts,3)) | ||
kpath(1,:)=kpoint_gamma | ||
kpath(2,:)=kpoint_x1 | ||
kpath(3,:)=kpoint_m1 | ||
kpath(4,:)=kpoint_gamma | ||
write(LOGfile,*)"Build H(k) BHZ along path \Gamma-X-M-\Gamma:" | ||
call TB_solve_model(hk_bhz,Nso,kpath,Nkpath,& | ||
colors_name=[red,blue,red,blue],& | ||
points_name=[character(len=20) :: "{\Symbol G}","X","M","{\Symbol G}"],& | ||
file="Eig_Hk_"//str(fhtop)//".ed") | ||
endif | ||
end subroutine solve_hk | ||
|
||
|
||
end program ed_bhz |
7 changes: 7 additions & 0 deletions
7
_downloads/1e8d5978b1e2fdf8b2c60a514950bda9/U0.5_hamiltonian.restart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
#Ek_l1_s1 Dk_l1_s1 Vk_l1_s1 | ||
-5.249454795410E+00 -1.003321282020E+00 1.505395237261E+00 | ||
-9.426106679244E-02 4.015864578443E-02 2.047405302797E-01 | ||
-9.988215961891E-01 7.646407513868E+00 7.746312978379E-01 | ||
9.988215961891E-01 7.646407513868E+00 7.746312978379E-01 | ||
9.426106679244E-02 4.015864578443E-02 2.047405302797E-01 | ||
5.249454795410E+00 -1.003321282020E+00 1.505395237261E+00 |
4 changes: 4 additions & 0 deletions
4
_downloads/22e4a7d85f9731fc5134181fc704e70d/M1_U2_J0.25_hamiltonian.restart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#Ek_l1_s1 Vk_l1_s1 #Ek_l2_s1 Vk_l2_s1 #Ek_l1_s2 Vk_l1_s2 #Ek_l2_s2 Vk_l2_s2 | ||
-2.063325383596E+00 -3.285491173696E-01 -6.227961385330E+00 2.410927843632E+00 -2.063325383596E+00 -3.285491173696E-01 -6.227961385330E+00 2.410927843632E+00 | ||
-1.675859198890E-01 6.159720975864E-01 1.675859198934E-01 6.159720975903E-01 -1.675859198890E-01 6.159720975864E-01 1.675859198934E-01 6.159720975903E-01 | ||
6.227961385463E+00 2.410927843678E+00 2.063325383595E+00 -3.285491172895E-01 6.227961385463E+00 2.410927843678E+00 2.063325383595E+00 -3.285491172895E-01 |
27 changes: 27 additions & 0 deletions
27
_downloads/34327f3ffd7e63656d7364ae8126ba12/exct_M1_U6_J0.25_hamiltonian.restart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
#V_i Lambda_i1 Lambda_i2 Lambda_i3 Lambda_i4 | ||
4 | ||
5.718887742132E-01 -8.930753143566E-01 3.884837520875E-02 -1.148605141630E+00 2.749600864404E+00 | ||
-5.339078433090E-01 -1.673257892178E+00 9.233320224583E-01 -5.013862761535E-02 -9.594471806308E-01 | ||
-4.568136565652E-02 -5.069733513433E-01 2.448960640092E-01 -3.293610522247E-01 3.424798019974E-01 | ||
6.063922879158E-01 3.581355433238E+00 4.513885386087E-01 -2.702524312923E-02 -2.412717524740E+00 | ||
|
||
( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
( 0.00, 0.00) (-1.00,-0.00) ( 0.00, 0.00) ( 0.00,-0.00) | ||
( 0.00, 0.00) ( 0.00, 0.00) ( 1.00, 0.00) ( 0.00, 0.00) | ||
( 0.00, 0.00) ( 0.00,-0.00) ( 0.00, 0.00) (-1.00,-0.00) | ||
|
||
( 0.00, 0.00) ( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
( 0.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) ( 1.00, 0.00) | ||
( 0.00, 0.00) ( 0.00, 0.00) ( 1.00, 0.00) ( 0.00, 0.00) | ||
|
||
( 0.00, 0.00) ( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
( 0.00, 0.00) ( 0.00, 0.00) ( 0.00,-0.00) (-1.00,-0.00) | ||
( 0.00, 0.00) ( 0.00, 0.00) (-1.00,-0.00) ( 0.00,-0.00) | ||
|
||
( 0.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) ( 1.00, 0.00) | ||
( 0.00, 0.00) ( 0.00, 0.00) ( 1.00, 0.00) ( 0.00, 0.00) | ||
( 0.00, 0.00) ( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
( 1.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) ( 0.00, 0.00) | ||
|
Oops, something went wrong.