ALPS 2.1 Tutorials:DMFT-05 OSMT
Languages: |
English • 日本語 (ja) • 繁體中文 (zh-tw) • 简体中文 (zh) |
Tutorial 05: Orbitally Selective Mott Transition
An interesting phenomenon in multi-orbital models is the orbitally selective Mott transition, first examined by Anisimov et al. A variant of this, a momentum-selective Mott transition, has recently been discussed in cluster calculations as a cluster representation of pseudogap physics.
In an orbitally selective Mott transition some of the orbitals involved become Mott insulating as a function of doping or interactions, while others stay metallic.
As a minimal model we consider two bands: a wide band and a narrow band. In addition to the intra-orbital Coulomb repulsion we consider interactions
, and
, with
. We limit ourselves to Ising-like interactions - a simplification that is often problematic for real compounds.
We choose here a case with two bandwidth and
and density-density like interactions of
,
, and
between
and
, where the first case shows a Fermi liquid-like behavior in both orbitals, the
is orbitally selective, and
is insulating in both orbitals.
The python command lines for running the simulations are found in tutorial5a.py. Alternatively, you can use the Vistrails file:
import pyalps import numpy as np import matplotlib.pyplot as plt import pyalps.pyplot #prepare the input parameters parms=[] coulombparam=[[1.8,0.45],[2.2,0.55],[2.8,0.7]] for cp in coulombparam: parms.append( { 'CHECKPOINT' : 'dump', 'CONVERGED' : 0.01, 'F' : 10, 'FLAVORS' : 4, 'H' : 0, 'H_INIT' : 0., 'MAX_IT' : 20, 'MAX_TIME' : 180, 'MU' : 0, 'N' : 1000, 'NMATSUBARA' : 1000, 'N_FLIP' : 0, 'N_MEAS' : 10000, 'N_MOVE' : 0, 'N_ORDER' : 50, 'N_SHIFT' : 0, 'OMEGA_LOOP' : 1, 'OVERLAP' : 0, 'SEED' : 0, 'SOLVER' : 'Hybridization', 'SYMMETRIZATION' : 1, 'TOLERANCE' : 0.3, 't' : 1, 'SWEEPS' : 100000000, 'BETA' : 30, 'THERMALIZATION' : 10, 'U' : cp[0], 'J' : cp[1], 't0' : 0.5, 't1' : 1, 'G0TAU_INPUT' :'G0_tau_input_u_'+str(cp[0])+'_j_'+str(cp[1]) } ) #write the input file and run the simulation for p in parms: input_file = pyalps.writeParameterFile('parm_u_'+str(p['U'])+'_j_'+str(p['J']),p) res = pyalps.runDMFT(input_file)
The parameter files to run the simulation on the command line can be found in tutorials/dmft-05-osmt in the directories beta30_U1.8_2orbital, beta30_U2.2_2orbital and beta30_U2.8_2orbital. A paper using the same sample parameters can be found here.
As discussed in the previous tutorial, the (non-)metallicity of the Green's function is best observed by plotting the data on a logarithmic scale:
flavors=parms[0]['FLAVORS'] listobs=[] for f in range(0,flavors): listobs.append('Green_'+str(f)) ll=pyalps.load.Hdf5Loader() data = ll.ReadMeasurementFromFile(pyalps.getResultFiles(pattern='parm_u_*h5'), respath='/simulation/results/G_tau', measurements=listobs, verbose=True) for d in pyalps.flatten(data): d.x = d.x*d.props["BETA"]/float(d.props["N"]) d.y = -d.y d.props['label'] = r'$U=$'+str(d.props['U']) plt.figure() plt.yscale('log') plt.xlabel(r'$\tau$') plt.ylabel(r'$G(\tau)$') plt.title('Hubbard model on the Bethe lattice') pyalps.pyplot.plot(data) plt.legend() plt.show()
Tutorial by Emanuel - Please don't hesitate to ask!