nrgljubljana_interface.solver.Solver
- class nrgljubljana_interface.solver.Solver(*args, **params_kw)[source]
Bases:
SolverCoreNRGLjubljana impurity solver.
Thin Python wrapper over the compiled
SolverCore. Construct it with the model, symmetry type and frequency mesh, assign the hybridization functionS.Delta_w['imp'] << ..., then callsolve()and read the results (S.A_w,S.G_w,S.Sigma_w, …).The
__init__(),solve()andset_nrg_params()methods each accept either keyword arguments (which are used to build the corresponding parameter object) or a single parameter object positionally, so a storedS.constr_params/S.last_solve_params/S.nrg_paramscan be passed straight back in.- Parameters:
- argsConstrParamsT, optional
A construction-parameter object (e.g. a stored
constr_params) passed positionally, instead of the keyword arguments below.- modelstr, optional
Impurity model to solve (selects a template directory), e.g.
'SIAM'. Default'SIAM'.- symtypestr, optional
NRGLjubljana symmetry code, e.g.
'QS','QSZ','ISO'. Default'QS'.- mesh_maxfloat, optional
Maximum frequency of the logarithmic mesh. Default
10.- mesh_minfloat, optional
Minimum frequency of the logarithmic mesh. Default
1e-4.- mesh_ratiofloat, optional
Common ratio of the geometric (logarithmic) frequency mesh. Default
1.05.
Attributes
The spectral function \(A(\omega)\).
The spectral function \(B_l(\omega)\) of the auxiliary correlator \(F_l(\omega)\).
The spectral function \(B_r(\omega)\) of the auxiliary correlator \(F_r(\omega)\).
The spectral function \(C(\omega)\) of the auxiliary correlator \(I(\omega)\).
The hybridization function structure object.
The hybridization function on the real-frequency axis.
The auxiliary Green's function \(F_l(\omega) = \Sigma(\omega)\, G(\omega)\).
The auxiliary Green's function \(F_r(\omega) = G(\omega)\, \Sigma(\omega)\).
The retarded Green's function \(G(\omega)\).
The auxiliary Green's function \(I(\omega)\).
Constant Hartree shift to the self-energy, stored as a Green's function.
The retarded self-energy \(\Sigma(\omega)\) (computed from \(F_l\), \(F_r\), \(G\) and \(I\)).
Charge susceptibility \(\chi_{NN}(\omega)\).
Spin susceptibility \(\chi_{SS}(\omega)\).
The susceptibility structure object.
Parameters used for the solver construction.
Expectation values of local impurity operators.
The Green's function structure object.
Keep the temporary directories after the calculation.
Parameters used for the most recent solve process.
Logarithmic real-frequency mesh.
Low-level NRG parameters.
Thermodynamic variables (FDM algorithm).
If true, detailed output from NRGLjubljana and its tools is sent to stdout.
Methods
Suppress verbose output from the NRG solver.
Check that all required model parameters have been defined.
Create a temporary working directory for a series of NRG runs.
Produce the param file for a given value of the twist parameter \(z\).
Prepare the input files for an individual NRG calculation.
Read the block structure of Green's function objects from a file.
Read expectation values from the NRG output files.
Read thermodynamic variables (FDM algorithm) from the NRG output files.
set_nrg_params(*args, **params_kw)Set the advanced (low-level) NRG parameters.
Establish good defaults for the low-level NRG parameters.
Set the verbosity (see also
be_quiet()).solve(*args, **params_kw)Solve the impurity problem.
Perform an individual NRG calculation.
Write \(\Gamma = -\mathrm{Im}\,\Delta(\omega)\) to a file.
Notes
See
ConstrParamsTfor the full list of construction parameters.