quant_met.mean_field.hamiltonians.

BaseHamiltonian#

class quant_met.mean_field.hamiltonians.BaseHamiltonian(parameters)#

Base class for Hamiltonians.

This abstract class provides the essential framework for defining various Hamiltonians used in solid-state physics. It includes methods for constructing the Hamiltonian based on a set of parameters, calculating properties such as energy bands, conducting derivatives, and diagonalizing the Hamiltonian to obtain eigenstates and eigenvalues. Subclasses should implement methods to provide specific Hamiltonian forms.

Parameters:
parametersquant_met.parameters.hamiltonians.GenericParameters

An object containing the necessary parameters to define the Hamiltonian, including lattice parameters, critical constants, and Hubbard interaction strengths.

Attributes:
namestr

Name or identifier of the Hamiltonian.

betafloat

Inverse temperature (related to thermal excitations).

qnumpy.ndarray

A two-dimensional array defining a momentum offset, typically in reciprocal space.

latticequant_met.geometry.BaseLattice

The lattice structure in which the Hamiltonian is defined.

hubbard_int_orbital_basisnumpy.ndarray

Interaction terms for Hubbard-type models represented in orbital basis.

number_of_bandsint

The total number of bands calculated based on the orbital basis provided.

delta_orbital_basisnumpy.ndarray

An array initialized for the order parameter or pairing potentials.

Methods

bdg_hamiltonian(k)

Generate the Bogoliubov-de Gennes (BdG) Hamiltonian.

bdg_hamiltonian_derivative(k, direction)

Calculate the derivative of the BdG Hamiltonian.

calculate_bandstructure(k[, overlaps])

Calculate the band structure.

calculate_current_density(k)

Calculate the current density.

calculate_density_of_states(k)

Calculate the density of states (DOS).

calculate_free_energy(k)

Calculate the free energy for the Hamiltonian.

calculate_quantum_metric(k, bands)

Calculate the quantum metric (geometric tensor) for specified bands.

calculate_spectral_gap(k)

Calculate the spectral gap.

calculate_superfluid_weight(k)

Calculate the superfluid weight.

diagonalize_bdg(k)

Diagonalizes the BdG Hamiltonian.

diagonalize_nonint(k)

Diagonalizes the normal state Hamiltonian.

from_file(filename)

Initialize a Hamiltonian from a previously saved HDF5 file.

gap_equation(k)

Gap equation.

gap_equation_loop(bdg_energies, ...)

Calculate the gap equation.

get_parameters_model()

Return the specific parameters model for the subclass.

hamiltonian(k)

Return the normal state Hamiltonian.

hamiltonian_derivative(k, direction)

Calculate the spatial derivative of the Hamiltonian.

save(filename)

Save the Hamiltonian configuration as an HDF5 file.

setup_lattice(parameters)

Set up the lattice based on the provided parameters.