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, chispin_flag, chidens_flag, chipair_flag, chiexct_flag, ed_mode, ed_diag_type, ed_finite_temp, ed_sparse_h, ed_solve_offdiag_gf, ed_print_sigma, ed_print_g, ed_print_g0, ed_all_g, ed_sectors, ed_sectors_shift, ed_verbose, ed_offset_bath, ed_hw_bath, 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 [real]

    phonon field coupled to displacement operator (constant)

  • ed_input_vars/bath_type [character(len=7)]

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

  • ed_input_vars/beta [real,bind(c,name="beta")]

    inverse temperature

  • ed_input_vars/cg_ftol [real]

    Tolerance in the cg fit

  • ed_input_vars/cg_grad [integer]

    gradient evaluation: 0=analytic, 1=numeric

  • ed_input_vars/cg_method [integer]

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

  • ed_input_vars/cg_minimize_hh [real]

    unknown parameter used in the CG minimize procedure.

  • ed_input_vars/cg_minimize_ver [logical]

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

  • ed_input_vars/cg_niter [integer]

    Max number of iteration in the fit

  • ed_input_vars/cg_norm [character(len=12)]

    frobenius/elemental (for now only in general bath)

  • ed_input_vars/cg_pow [integer]

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

  • ed_input_vars/cg_scheme [character(len=5)]

    fit scheme: delta (default), weiss for G0

  • ed_input_vars/cg_stop [integer]

    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\)).

  • ed_input_vars/cg_weight [integer]

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

  • ed_input_vars/chidens_flag [logical]

    evaluate dens susceptibility

  • ed_input_vars/chiexct_flag [logical]

    evaluate excitonic susceptibility

  • ed_input_vars/chipair_flag [logical]

    evaluate pair susceptibility

  • ed_input_vars/chispin_flag [logical]

    evaluate spin susceptibility

  • ed_input_vars/cutoff [real]

    cutoff for spectral summation

  • ed_input_vars/deltasc [real]

    breaking symmetry field

  • ed_input_vars/dmft_error [real,bind(c,name="dmft_error")]

    dmft convergence threshold

  • ed_input_vars/ed_all_g [logical]

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

  • ed_input_vars/ed_diag_type [character(len=4)]

    flag to select the diagonalization type: “lanc” for Lanczos/Davidson, “full” for Full diagonalization method.

  • ed_input_vars/ed_finite_temp [logical]

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

  • ed_input_vars/ed_hw_bath [real]

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

  • ed_input_vars/ed_input_file [character(len=200),optional/default=""]

    Name of input file

  • ed_input_vars/ed_mode [character(len=7)]

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

  • ed_input_vars/ed_offset_bath [real]

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

  • ed_input_vars/ed_print_g [logical]

    flag to print impurity Green`s functions

  • ed_input_vars/ed_print_g0 [logical]

    flag to print impurity non-interacting Green`s functions

  • ed_input_vars/ed_print_sigma [logical]

    flag to print impurity Self-energies

  • ed_input_vars/ed_sectors [logical]

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

  • ed_input_vars/ed_sectors_shift [integer]

    shift to the ed_sectors scan

  • ed_input_vars/ed_solve_offdiag_gf [logical]

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

  • ed_input_vars/ed_sparse_h [logical]

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

  • ed_input_vars/ed_total_ud [logical,bind(c,name="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

  • ed_input_vars/ed_twin [logical,bind(c,name="ed_twin")]

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

  • ed_input_vars/ed_verbose [integer]

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

  • ed_input_vars/eps [real,bind(c,name="eps")]

    broadening

  • ed_input_vars/exc_field (4) [real]

    external field coupling to exciton order parameter

  • ed_input_vars/finitet [logical]

    flag for finite temperature calculation

  • ed_input_vars/g_ph (•, ) [complex,allocatable]

    electron-phonon coupling constant all

  • ed_input_vars/g_ph_diag () [real,allocatable]

    electron-phonon coupling constant diagonal (density)

  • ed_input_vars/gphfile [character(len=100)]

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

  • ed_input_vars/gs_threshold [real]

    Energy threshold for ground state degeneracy loop up

  • ed_input_vars/hfile [character(len=100)]

    File where to retrieve/store the bath parameters.

  • ed_input_vars/hfmode [logical]

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

  • ed_input_vars/hlocfile [character(len=100)]

    File read the input local H

  • ed_input_vars/jh [real,bind(c,name="jh")]

    J_Hund: Hunds’ coupling constant

  • ed_input_vars/jp [real,bind(c,name="jp")]

    J_P: coupling constant for the Pair-hopping interaction term

  • ed_input_vars/jx [real,bind(c,name="jx")]

    J_X: coupling constant for the spin-eXchange interaction term

  • ed_input_vars/jz_basis [logical]

    “Flag to enable the Jz basis”

  • ed_input_vars/jz_max [logical]

    “Flag to enable a maximum value for Jz”

  • ed_input_vars/jz_max_value [real]

    “Maximum value for Jz”

  • ed_input_vars/lanc_dim_threshold [integer]

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

  • ed_input_vars/lanc_method [character(len=12)]

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

  • ed_input_vars/lanc_ncv_add [integer]

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

  • ed_input_vars/lanc_ncv_factor [integer]

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

  • ed_input_vars/lanc_ngfiter [integer]

    Max number of iteration in resolvant tri-diagonalization

  • ed_input_vars/lanc_niter [integer]

    Max number of Lanczos iterations

  • ed_input_vars/lanc_nstates_sector [integer]

    Max number of required eigenvalues per sector

  • ed_input_vars/lanc_nstates_step [integer]

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

  • ed_input_vars/lanc_nstates_total [integer]

    Max number of states hold in the finite T calculation

  • ed_input_vars/lanc_tolerance [real]

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

  • ed_input_vars/lfit [integer,bind(c,name="lfit")]

    Number of frequencies for bath fitting

  • ed_input_vars/lmats [integer,bind(c,name="lmats")]

    Number of Matsubara frequencies

  • ed_input_vars/logfile [integer,save/bind(c,name="logfile")]

    Logfile unit

  • ed_input_vars/lpos [integer,bind(c,name="lpos")]

    Number of points in PDF lattice

  • ed_input_vars/lreal [integer,bind(c,name="lreal")]

    Number of real-axis frequencies

  • ed_input_vars/ltau [integer,bind(c,name="ltau")]

    Number of imaginary time points

  • ed_input_vars/nbath [integer,bind(c,name="nbath")]

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

  • ed_input_vars/ncoeff [real]

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

  • ed_input_vars/ndelta [real]

    initial chemical potential step

  • ed_input_vars/nerr [real]

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

  • ed_input_vars/niter [integer]
  • ed_input_vars/nloop [integer,bind(c,name="nloop")]

    max dmft loop variables

  • ed_input_vars/norb [integer,bind(c,name="norb")]

    Number of impurity orbitals

  • ed_input_vars/nph [integer,bind(c,name="nph")]

    max number of phonons allowed (cut off)

  • ed_input_vars/nread [real,bind(c,name="nread")]

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

  • ed_input_vars/nspin [integer,bind(c,name="nspin")]

    Number spin degeneracy (max 2)

  • ed_input_vars/nsuccess [integer,bind(c,name="nsuccess")]

    Number of repeated success to fall below convergence threshold

  • ed_input_vars/pair_field () [real,allocatable]

    pair field per orbital coupling to s-wave order parameter component

  • ed_input_vars/ph_type [integer]

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

  • ed_input_vars/sb_field [real,bind(c,name="sb_field")]

    symmetry breaking field

  • ed_input_vars/sectorfile [character(len=100)]

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

  • ed_input_vars/spin_field_x () [real,allocatable]

    magnetic field per orbital coupling to X-spin component

  • ed_input_vars/spin_field_y () [real,allocatable]

    magnetic field per orbital coupling to Y-spin component

  • ed_input_vars/spin_field_z () [real,allocatable]

    magnetic field per orbital coupling to Z-spin component

  • ed_input_vars/uloc (5) [real,bind(c,name="uloc")]

    local interactions

  • ed_input_vars/ust [real,bind(c,name="ust")]

    intra-orbitals interactions

  • ed_input_vars/w0_ph [real]

    phonon frequency (constant)

  • ed_input_vars/wfin [real,bind(c,name="wfin")]

    frequency range max

  • ed_input_vars/wini [real,bind(c,name="wini")]

    frequency range min

  • ed_input_vars/xmax [real,bind(c,name="xmax")]

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

  • ed_input_vars/xmin [real,bind(c,name="xmin")]

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

  • ed_input_vars/xmu [real,bind(c,name="xmu")]

    chemical potential

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