Input Variables

Description

Contains all global input variables which can be set by the user through the input file. A specific preocedure ed_read_input() should be called to read the input file using parse_input_variable() procedure from SciFortran. All variables are automatically set to a default, looked for and updated by reading into the file and, sequentially looked for and updated from command line (std.input) using the notation variable_name=variable_value(s) (case independent).

Quick access

Variables:

nbath, norb, nspin, nloop, nph, uloc, ust, jh, jx, jp, xmu, beta, nsuccess, dmft_error, eps, wini, wfin, xmin, xmax, sb_field, nread, ed_total_ud, ed_twin, hfmode, cutoff, gs_threshold, deltasc, ph_type, a_ph, g_ph, w0_ph, g_ph_diag, spin_field_x, spin_field_y, spin_field_z, pair_field, exc_field, rdm_flag, chispin_flag, chidens_flag, chipair_flag, chiexct_flag, ed_mode, ed_finite_temp, ed_sparse_h, ed_solve_offdiag_gf, ed_print_sigma, ed_print_g, ed_print_g0, ed_print_chispin, ed_print_chidens, ed_print_chipair, ed_print_chiexct, ed_all_g, ed_sectors, ed_sectors_shift, ed_verbose, ed_offset_bath, ed_hw_bath, ed_obs_all, lanc_method, lanc_tolerance, lanc_niter, lanc_ngfiter, lanc_ncv_factor, lanc_ncv_add, lanc_nstates_sector, lanc_nstates_total, lanc_nstates_step, lanc_dim_threshold, cg_scheme, cg_method, cg_grad, cg_niter, cg_ftol, cg_stop, cg_weight, cg_pow, cg_norm, cg_minimize_ver, cg_minimize_hh, finitet, bath_type, nerr, ndelta, ncoeff, niter, jz_basis, jz_max, jz_max_value, lmats, lreal, lfit, ltau, lpos, hfile, hlocfile, sectorfile, gphfile, logfile, ed_input_file

Routines:

ed_read_input(), ed_update_input()

Used modules

Variables

ed_input_vars/a_ph

phonon field coupled to displacement operator (constant)

Type:

real

ed_input_vars/bath_type

flag to set bath type: normal (1bath/imp), hybrid(1bath), replica(1replica/imp), general(replica++)

Type:

character(len=7)

ed_input_vars/beta

inverse temperature

Type:

real

Attributes:

bind(c, name=”beta”)

ed_input_vars/cg_ftol

Tolerance in the cg fit

Type:

real

ed_input_vars/cg_grad

gradient evaluation: 0=analytic, 1=numeric

Type:

integer

ed_input_vars/cg_method

fit routine type:0=CGnr (default), 1=minimize (old f77)

Type:

integer

ed_input_vars/cg_minimize_hh

unknown parameter used in the CG minimize procedure.

Type:

real

ed_input_vars/cg_minimize_ver

flag to pick old (Krauth) or new (Lichtenstein) version of the minimize CG routine

Type:

logical

ed_input_vars/cg_niter

Max number of iteration in the fit

Type:

integer

ed_input_vars/cg_norm

frobenius/elemental (for now only in general bath)

Type:

character(len=12)

ed_input_vars/cg_pow

fit power to generalize the distance as \(\vert G0 - G0_{and} \vert ^{cg\_pow}\)

Type:

integer

ed_input_vars/cg_scheme

fit scheme: delta (default), weiss for G0

Type:

character(len=5)

ed_input_vars/cg_stop

fit stop condition:0-3, 0=C1.AND.C2, 1=C1, 2=C2 with C1= \(\vert F_{n-1} -F_{n} \vert < tol*(1+F_{n})\), C2= \(\vert\vert x_{n-1} -x_{n} \vert\vert <tol*(1+ \vert\vert x_{n} \vert\vert\)).

Type:

integer

ed_input_vars/cg_weight

CGfit mode 0=1, 1=1/n , 2=1/w_n weight

Type:

integer

ed_input_vars/chidens_flag

evaluate dens susceptibility

Type:

logical

ed_input_vars/chiexct_flag

evaluate excitonic susceptibility

Type:

logical

ed_input_vars/chipair_flag

evaluate pair susceptibility

Type:

logical

ed_input_vars/chispin_flag

evaluate spin susceptibility

Type:

logical

ed_input_vars/cutoff

cutoff for spectral summation

Type:

real

ed_input_vars/deltasc

breaking symmetry field

Type:

real

ed_input_vars/dmft_error

dmft convergence threshold

Type:

real

Attributes:

bind(c, name=”dmft_error”)

ed_input_vars/ed_all_g

flag to evaluate all the components of the impurity Green`s functions irrespective of the symmetries

Type:

logical

ed_input_vars/ed_finite_temp

flag to select finite temperature method. note that if T then lanc_nstates_total must be > 1

Type:

logical

ed_input_vars/ed_hw_bath

half-bandwidth for the bath initialization: flat in -hwband:hwband

Type:

real

ed_input_vars/ed_input_file

Name of input file

Type:

character(len=200)

ed_input_vars/ed_mode

flag to set ed symmetry type: normal=normal (default), superc=superconductive, nonsu2=broken SU(2)

Type:

character(len=7)

ed_input_vars/ed_obs_all

flag to print observables for every loop

Type:

logical

ed_input_vars/ed_offset_bath

half-bandwidth for the bath initialization: flat in -hwband:hwband

Type:

real

ed_input_vars/ed_print_chidens

flag to print impurity dens susceptibility

Type:

logical

ed_input_vars/ed_print_chiexct

flag to print impurity exct susceptibility

Type:

logical

ed_input_vars/ed_print_chipair

flag to print impurity pair susceptibility

Type:

logical

ed_input_vars/ed_print_chispin

flag to print impurity spin susceptibility

Type:

logical

ed_input_vars/ed_print_g

flag to print impurity Green`s functions

Type:

logical

ed_input_vars/ed_print_g0

flag to print impurity non-interacting Green`s functions

Type:

logical

ed_input_vars/ed_print_sigma

flag to print impurity Self-energies

Type:

logical

ed_input_vars/ed_sectors

flag to reduce sector scan for the spectrum to specific sectors +/- ed_sectors_shift

Type:

logical

ed_input_vars/ed_sectors_shift

shift to the ed_sectors scan

Type:

integer

ed_input_vars/ed_solve_offdiag_gf

flag to select the calculation of the off-diagonal impurity GF. this is T by default if bath_type/=normal

Type:

logical

ed_input_vars/ed_sparse_h

flag to select storage of sparse matrix H (mem–, cpu++) if TRUE, or direct on-the-fly H*v product (mem++, cpu–

Type:

logical

ed_input_vars/ed_total_ud

flag to select which type of quantum numbers have to be considered: T (default) total Nup-Ndw, F orbital based Nup-Ndw

Type:

logical

Attributes:

bind(c, name=”ed_total_ud”)

ed_input_vars/ed_twin

flag to reduce (T) or not (F,default) the number of visited sector using twin symmetry.

Type:

logical

Attributes:

bind(c, name=”ed_twin”)

ed_input_vars/ed_verbose

verbosity level: 0=almost nothing –> 5:all. Really: all

Type:

integer

ed_input_vars/eps

broadening

Type:

real

Attributes:

bind(c, name=”eps”)

ed_input_vars/exc_field

external field coupling to exciton order parameter

Type:

real(4)

ed_input_vars/finitet

flag for finite temperature calculation

Type:

logical

ed_input_vars/g_ph
Type:

complex(•, •)

Attributes:

allocatable

ed_input_vars/g_ph_diag
Type:

real(•)

Attributes:

allocatable

ed_input_vars/gphfile

File of Phonon couplings. Put NONE to use only density couplings.

Type:

character(len=100)

ed_input_vars/gs_threshold

Energy threshold for ground state degeneracy loop up

Type:

real

ed_input_vars/hfile

File where to retrieve/store the bath parameters.

Type:

character(len=100)

ed_input_vars/hfmode

flag for HF interaction form U(n-1/2)(n-1/2) VS Unn

Type:

logical

ed_input_vars/hlocfile

File read the input local H

Type:

character(len=100)

ed_input_vars/jh

J_Hund: Hunds’ coupling constant

Type:

real

Attributes:

bind(c, name=”jh”)

ed_input_vars/jp

J_P: coupling constant for the Pair-hopping interaction term

Type:

real

Attributes:

bind(c, name=”jp”)

ed_input_vars/jx

J_X: coupling constant for the spin-eXchange interaction term

Type:

real

Attributes:

bind(c, name=”jx”)

ed_input_vars/jz_basis

“Flag to enable the Jz basis”

Type:

logical

ed_input_vars/jz_max

“Flag to enable a maximum value for Jz”

Type:

logical

ed_input_vars/jz_max_value

“Maximum value for Jz”

Type:

real

ed_input_vars/lanc_dim_threshold

Min dimension threshold to use Lanczos determination of the spectrum rather than Lapack based exact diagonalization.

Type:

integer

ed_input_vars/lanc_method

select the lanczos method to be used in the determination of the spectrum. ARPACK (default), LANCZOS (T=0 only)

Type:

character(len=12)

ed_input_vars/lanc_ncv_add

Adds up to the size of the block to prevent it to become too small (Ncv=lanc_ncv_factor*Neigen+lanc_ncv_add)

Type:

integer

ed_input_vars/lanc_ncv_factor

Set the size of the block used in Lanczos-Arpack by multiplying the required Neigen (Ncv=lanc_ncv_factor*Neigen+lanc_ncv_add)

Type:

integer

ed_input_vars/lanc_ngfiter

Max number of iteration in resolvant tri-diagonalization

Type:

integer

ed_input_vars/lanc_niter

Max number of Lanczos iterations

Type:

integer

ed_input_vars/lanc_nstates_sector

Max number of required eigenvalues per sector

Type:

integer

ed_input_vars/lanc_nstates_step

Number of states added at each step to determine the optimal spectrum size at finite T

Type:

integer

ed_input_vars/lanc_nstates_total

Max number of states hold in the finite T calculation

Type:

integer

ed_input_vars/lanc_tolerance

Tolerance for the Lanczos iterations as used in Arpack and plain lanczos.

Type:

real

ed_input_vars/lfit

Number of frequencies for bath fitting

Type:

integer

Attributes:

bind(c, name=”lfit”)

ed_input_vars/lmats

Number of Matsubara frequencies

Type:

integer

Attributes:

bind(c, name=”lmats”)

ed_input_vars/logfile

Logfile unit

Type:

integer

Attributes:

save, bind(c, name=”logfile”)

ed_input_vars/lpos

Number of points in PDF lattice

Type:

integer

Attributes:

bind(c, name=”lpos”)

ed_input_vars/lreal

Number of real-axis frequencies

Type:

integer

Attributes:

bind(c, name=”lreal”)

ed_input_vars/ltau

Number of imaginary time points

Type:

integer

Attributes:

bind(c, name=”ltau”)

ed_input_vars/nbath

Number of bath sites (per orbital or not depending on bath_type)

Type:

integer

Attributes:

bind(c, name=”nbath”)

ed_input_vars/ncoeff

multiplier for the initial ndelta read from a file (ndelta–>ndelta*ncoeff)

Type:

real

ed_input_vars/ndelta

initial chemical potential step

Type:

real

ed_input_vars/nerr

fix density threshold. a loop over from 1.d-1 to required nerr is performed

Type:

real

ed_input_vars/niter
Type:

integer

ed_input_vars/nloop

max dmft loop variables

Type:

integer

Attributes:

bind(c, name=”nloop”)

ed_input_vars/norb

Number of impurity orbitals

Type:

integer

Attributes:

bind(c, name=”norb”)

ed_input_vars/nph

max number of phonons allowed (cut off)

Type:

integer

Attributes:

bind(c, name=”nph”)

ed_input_vars/nread

fixed density. if 0.d0 fixed chemical potential calculation.

Type:

real

Attributes:

bind(c, name=”nread”)

ed_input_vars/nspin

Number spin degeneracy (max 2)

Type:

integer

Attributes:

bind(c, name=”nspin”)

ed_input_vars/nsuccess

Number of repeated success to fall below convergence threshold

Type:

integer

Attributes:

bind(c, name=”nsuccess”)

ed_input_vars/pair_field
Type:

real(•)

Attributes:

allocatable

ed_input_vars/ph_type

shape of the e part of the e-ph interaction: 1=orbital occupation, 2=orbital hybridization

Type:

integer

ed_input_vars/rdm_flag

evaluate impurity RDM

Type:

logical

ed_input_vars/sb_field

symmetry breaking field

Type:

real

Attributes:

bind(c, name=”sb_field”)

ed_input_vars/sectorfile

File where to retrieve/store the sectors contributing to the spectrum

Type:

character(len=100)

ed_input_vars/spin_field_x
Type:

real(•)

Attributes:

allocatable

ed_input_vars/spin_field_y
Type:

real(•)

Attributes:

allocatable

ed_input_vars/spin_field_z
Type:

real(•)

Attributes:

allocatable

ed_input_vars/uloc

local interactions

Type:

real(5)

Attributes:

bind(c, name=”uloc”)

ed_input_vars/ust

intra-orbitals interactions

Type:

real

Attributes:

bind(c, name=”ust”)

ed_input_vars/w0_ph

phonon frequency (constant)

Type:

real

ed_input_vars/wfin

frequency range max

Type:

real

Attributes:

bind(c, name=”wfin”)

ed_input_vars/wini

frequency range min

Type:

real

Attributes:

bind(c, name=”wini”)

ed_input_vars/xmax

x-range for the local lattice probability distribution function (phonons)

Type:

real

Attributes:

bind(c, name=”xmax”)

ed_input_vars/xmin

x-range for the local lattice probability distribution function (phonons)

Type:

real

Attributes:

bind(c, name=”xmin”)

ed_input_vars/xmu

chemical potential

Type:

real

Attributes:

bind(c, name=”xmu”)

Subroutines and functions

subroutine  ed_input_vars/ed_read_input(inputunit)

This functions reads the input file provided by INPUTunit and sets the global variables accordingly

Parameters:

inputunit [character(len=*)]

Use :

mpi, sf_mpi

subroutine  ed_input_vars/ed_update_input(name, vals)

This functions updates some variables in the input file, namely exc_field, pair_field, exc_field, spin_field_x, spin_field_y, and spin_field_z.

Parameters:
  • name [character(len=*)] – the name of the variable to update

  • vals (•) [real] – the new value of the variable