Global Variables

Description

Contains all variables, arrays and derived types instances shared throughout the code. Specifically, it contains definitions of the effective_bath, the gfmatrix and the sector data structures.

Quick access

Types:

h_operator, sector_map, sector, gfspectrum, gfchannel, gfmatrix

Variables:

ed_file_suffix, imphloc, neigen_sector, nlevels, ns, ns_orb, ns_ud, nsectors, sph0, sph0d, sph0dws, sph0e_eph, sph0nd, sph0ph_eph, sph0ups

Routines:

allocate_gfmatrix(), deallocate_gfmatrix(), write_gfmatrix(), read_gfmatrix()

Used modules

  • sf_constants

  • sf_iotools

  • ed_sparse_matrix: This class defines a data structure to efficiently store sparse matrices into dedicated CSR matrices, featuring support to MPI parallel storage, so that each matrix is spread across the threads.

  • ed_input_vars: 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).

  • mpi

  • sf_mpi

Types

  • type  ed_vars_global/h_operator

    The matrix storing in the basis [nspin , nspin , norb , norb ] each element of the Matrix basis decomposing the replica/general bath Hamiltonian \(H_p=\sum_{i=1}^{N_{basis}} \lambda_i(p) O_i\), where \(N_{basis}\) is the dimension of the user defined basis.

    Type fields:
    • o (•, •, •, •) [complex, allocatable] – Replica/General hamiltonian

  • type  ed_vars_global/sector_map
    Type fields:
    • map (•) [integer, allocatable]

    • status [logical, optional/default=.false.]

  • type  ed_vars_global/sector
    Type fields:
    • dim [integer]

    • dimdw [integer]

    • dimdws (•) [integer, allocatable]

    • dimel [integer]

    • dimph [integer]

    • dimup [integer]

    • dimups (•) [integer, allocatable]

    • h (•) [sector_map, allocatable]

    • index [integer]

    • ndw [integer]

    • ndws (•) [integer, allocatable]

    • nlanc [integer]

    • ntot [integer]

    • nup [integer]

    • nups (•) [integer, allocatable]

    • status [logical, optional/default=.false.]

    • sz [integer]

    • twojz [integer]

  • type  ed_vars_global/gfspectrum
    Type fields:
    • poles (•) [real, allocatable]

    • weight (•) [real, allocatable]

  • type  ed_vars_global/gfchannel
    Type fields:
  • type  ed_vars_global/gfmatrix
    Type fields:
    • state (•) [gfchannel, allocatable]

    • status [logical, optional/default=.false.]

Variables

  • ed_vars_global/ed_file_suffix [character(len=32),optional/default=""]

    suffix string attached to the output files.

  • ed_vars_global/imphloc (•, •, •, ) [complex,allocatable]

    local hamiltonian

  • ed_vars_global/neigen_sector () [integer,allocatable]
  • ed_vars_global/nlevels [integer]
  • ed_vars_global/ns [integer,save]

    Number of levels per spin

  • ed_vars_global/ns_orb [integer,save]
  • ed_vars_global/ns_ud [integer,save]
  • ed_vars_global/nsectors [integer,save]

    Number of sectors

  • ed_vars_global/sph0 [sparse_matrix_csr]
  • ed_vars_global/sph0d [sparse_matrix_csr]

    diagonal part

  • ed_vars_global/sph0dws () [sparse_matrix_csr,allocatable]

    reduced UP and DW parts

  • ed_vars_global/sph0e_eph [sparse_matrix_csr]
  • ed_vars_global/sph0nd [sparse_matrix_csr]

    non-diagonal part

  • ed_vars_global/sph0ph_eph [sparse_matrix_csr]

    electron-phonon interaction

  • ed_vars_global/sph0ups () [sparse_matrix_csr,allocatable]

Subroutines and functions

interface  ed_vars_global/allocate_gfmatrix(self, nstate, istate, nchan, ichan, nexc)
Parameters:
  • self [gfmatrix]

  • nstate [integer]

  • istate [integer]

  • nchan [integer]

  • ichan [integer]

  • nexc [integer]

interface  ed_vars_global/deallocate_gfmatrix(self)
Parameters:

self (various shapes) [gfmatrix]

interface  ed_vars_global/write_gfmatrix(self, file)
Parameters:
  • self [real]

  • file [character(len=*)]

interface  ed_vars_global/read_gfmatrix(self, file)
Parameters:
  • self [real]

  • file [character(len=*)]