qtbm#
Includes the core class for QTBM calculations.
Classes:
-
Observables–Container for transport observables from QTBM calculations.
-
QTBM–Quantum Transmitting Boundary Method solver.
Observables
dataclass
#
Observables(electron_ldos: dict[Contact, NDArray] = dict(), contact_currents: dict[tuple[Contact, Contact], NDArray] = dict(), transmissions: dict[tuple[Contact, Contact], NDArray] = dict())
Container for transport observables from QTBM calculations.
Attributes:
-
electron_ldos((dict, optional)) –Orbital-resolved local density of states (LDOS) for each contact.
-
contact_currents((dict, optional)) –Contact current values for each contact pair.
-
transmissions((dict, optional)) –Transmission coefficients between contact pairs.
QTBM
#
QTBM(device: Device, config: QuatrexConfig)
Bases: TransportSolver
Quantum Transmitting Boundary Method solver.
Parameters:
-
device(Device) –The quantum device object containing Hamiltonian, atomic structure, and attached contacts.
-
config(QuatrexConfig) –Configuration object containing calculation parameters, energy grid, and numerical settings.
Attributes:
-
device(Device) –Reference to the device object.
-
kpoints(tuple) –k-points for the calculation.
-
observables(Observables) –Container for computed transport observables including transmission matrices, density of states, and current distributions.
-
electron_energies(NDArray) –Full energy grid for the calculation.
-
local_energies(NDArray) –Local portion of energy grid for MPI parallelization.
Methods:
-
set_potential–Sets the potential for the QTBM calculation.
-
get_charge_density–Gets the charge density from the QTBM calculation.
-
run–Runs the complete QTBM transport calculation.
set_potential
#
Sets the potential for the QTBM calculation.
This method can be used to update the potential in the system matrix for self-consistent calculations. It modifies the system matrix in-place to include the new potential.
Parameters:
-
potential(NDArray) –The new potential values to be set in the system matrix.
get_charge_density
#
Gets the charge density from the QTBM calculation.
This method integrates the local density of states to obtain the charge density. This is typically used in self-consistent calculations where the charge density is needed to update the potential.
Returns:
-
charge_density(NDArray) –The computed charge density for the device.