Eötvös Quantum Utilities  v4.9.146
Providing the Horsepowers in the Quantum Realm
List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
QuantumDot Class Reference

A class to process transport calculations on quantum dots. More...

Inheritance diagram for QuantumDot:
Inheritance graph
[legend]

Public Member Functions

function CalcTunnelingRate (Energy, gateVoltage, varargin)
 closing the parallel pool More...
 
function CalcTunnelingRates (gateVoltage)
 Determine the tunneling rates for all energy values in the energy array Evec for a given gateVoltage. More...
 
function DensityCalc (varargin)
 Calculates the onsite desnity using the method in Nanotechnology 25 (2014), 465201. More...
 
function DensityCalcSmall (num_occupied_states)
 determine the number of sites in the calculations to preallocate memory More...
 
function DetermineCurrent (bias, gateVoltage, leadnum)
 Calculates the current (in units of e^2/hbar) through a lead leadnum at gate voltage gateVoltage and at bias bias. More...
 
function DetermineCurrentOperator (bias, gateVoltage, leadnum)
 Determine the current operator (in units of $ e^2/\hbar $) to calculate the current through a lead leadnum at gate voltage gateVoltage and at bias bias. More...
 
function DetermineDensityOfStates (Emin, Emax, Edb)
 Calculates the DOS to deremine the one-electron occupation levels. More...
 
function DetermineOccupationProbabilities ()
 Determines the non-equilibrium occupation probabilities P_N (see Eq (8) in Eur. More...
 
function DetermineSelfEnergy (bias, gateVoltage)
 Determine the self-energy matrix elements describing the transition rates between the N occupated states of the QD. More...
 
function DetermineThermalOccupationProbabilities (gateVoltage)
 Determines the equilibrium occupation probabilities PN (see Eq (8) in Eur. More...
 
function diagInv (A)
 Calculates the diagonal part of the inverse of a sparse matrix. More...
 
function diagInv (A)
 Calculates the diagonal part of the inverse of a sparse matrix. More...
 
function display (message, nosilent)
 Displays output messages on the screen. More...
 
function display (message, nosilent)
 Displays output messages on the screen. More...
 
function DOSCalc (Evec, varargin)
 Calculates the onsite desnity of states. More...
 
function eig (A, B)
 Calculates the generalized eigenvalue problem based on the zggev and dggev LAPACK functions. More...
 
function eig (A, B)
 Calculates the generalized eigenvalue problem based on the zggev and dggev LAPACK functions. More...
 
function Fermi (E)
 A function of the Fermi-Dirac statistics. More...
 
function Fermi (E)
 A function of the Fermi-Dirac statistics. More...
 
function getBandWidth ()
 creating site indexes corresponding to the elements of the density vector More...
 
function getOpt ()
 Retrives the structure containing the calculation parameters. More...
 
function getOpt ()
 Retrives the structure containing the calculation parameters. More...
 
function getProgramName ()
 Gets the name of the package. More...
 
function getProgramName ()
 Gets the name of the package. More...
 
function getProgramShortName ()
 Gets the short name of the package. More...
 
function getProgramShortName ()
 Gets the short name of the package. More...
 
function getVersion ()
 Gets the current version of the package. More...
 
function getVersion ()
 Gets the current version of the package. More...
 
function Initialize ()
 Initializes class attributes. More...
 
function IsDeployedMKL ()
 Checks whether the MKL component is deployed. More...
 
function IsDeployedMKL ()
 Checks whether the MKL component is deployed. More...
 
function IVcalc (varargin)
 Calculates the current-voltage relation as a function of the bias. More...
 
function LocalDOSCalc (Energy, varargin)
 preallocate memory for Densitysurf More...
 
function partialInv (A, sizeInv)
 Calculates a partial inverse of a sparse matrix. More...
 
function partialInv (A, sizeInv)
 Calculates a partial inverse of a sparse matrix. More...
 
function QuantumDot (Opt, varargin)
 Constructor of the class. More...
 
function SetChemicalPotentials (doping_levels, gateVoltage)
 Manually sets the chemical potentials corresponding to the given single-electron doping levels. More...
 
function SetEnergy (newE, varargin)
 Sets the energy for the calculations. More...
 
function SetEnergy (newE, varargin)
 Sets the energy for the calculations. More...
 
function setTemperature (T)
 Sets the temperature for the calculations. More...
 
function setTemperature (T)
 Sets the temperature for the calculations. More...
 
function xmlread (filename)
 Function to load XML files (based on xerces libraries), providing octave compatibility. More...
 
function xmlread (filename)
 Function to load XML files (based on xerces libraries), providing octave compatibility. More...
 
function xmlwrite (filename, DOM)
 Function to export XML files (based on xerces libraries), providing octave compatibility. More...
 
function xmlwrite (filename, DOM)
 Function to export XML files (based on xerces libraries), providing octave compatibility. More...
 

Static Public Member Functions

static function BadInputType (variable, type)
 Throws a "bad input type" warning, with using the default value. More...
 
static function BadInputType (variable, type)
 Throws a "bad input type" warning, with using the default value. More...
 
static function BadInputTypeNoDefault (variable, type)
 Throws a "bad input type" warning without setting it to default. More...
 
static function BadInputTypeNoDefault (variable, type)
 Throws a "bad input type" warning without setting it to default. More...
 
static function checkMEXfile (fncname)
 Checks the presence of a given MEX file. More...
 
static function checkMEXfile (fncname)
 Checks the presence of a given MEX file. More...
 
static function ExceedIteration ()
 Throws an "iteration exceeded" warning. More...
 
static function ExceedIteration ()
 Throws an "iteration exceeded" warning. More...
 
static function inv_SVD (A)
 Inverts badly conditioned matrix A with SVD regularization. More...
 
static function inv_SVD (A)
 Inverts badly conditioned matrix A with SVD regularization. More...
 
static function isOctave ()
 Checks whether the running environment is matlab or octave. More...
 
static function isOctave ()
 Checks whether the running environment is matlab or octave. More...
 
static function SimphsonInt (y, h)
 Simphson integral: y is a vector of function values at equal distant points: y_i = f(x_i), x_i-x_{i-1}=h. More...
 
static function SimphsonInt (y, h)
 Simphson integral: y is a vector of function values at equal distant points: y_i = f(x_i), x_i-x_{i-1}=h. More...
 

Public Attributes

Property BandWidth
 An instance of structure BandWidth. More...
 
Property BandWidth
 An instance of structure BandWidth. More...
 
Property DOSdata
 
 DOSvec
 Array of the density of states values. More...
 
Property Ec
 The charging energy. More...
 
 Evec
 Array of the enrgy points. More...
 
Property gfininvfromHamiltonian
 logical value. Set true for calculate the Greens function of the scattering region from Hamiltonian, or false (default) otherwise. More...
 
Property gfininvfromHamiltonian
 logical value. Set true for calculate the Greens function of the scattering region from Hamiltonian, or false (default) otherwise. More...
 
Property junction
 An instance of class NTerminal (or its subclass) representing the junction. More...
 
Property junction
 An instance of class NTerminal (or its subclass) representing the junction. More...
 
Property scatterPotential
 Function handle pot = f(#coordinates) for the additional potential to be applied in the scattering region. More...
 
Property scatterPotential
 Function handle pot = f(#coordinates) for the additional potential to be applied in the scattering region. More...
 
Property useSelfEnergy
 logical value. Set true (default) for solve the Dyson equation with the self energies, or false otherwise. More...
 
Property useSelfEnergy
 logical value. Set true (default) for solve the Dyson equation with the self energies, or false otherwise. More...
 
Property varargin
 cell array of optional parameters. (For details see InputParsing) More...
 
Property varargin
 cell array of optional parameters. (For details see InputParsing) More...
 

Protected Member Functions

function complexDensity (junction_loc, JustScatter)
 Calculates the density at a complex energy. More...
 
function complexSpectral (junction_loc, JustScatter)
 setting the current energy More...
 
function create_Hamiltonians (varargin)
 Creates the Hamiltonians of the system. More...
 
function create_scatter (varargin)
 cerating Hamiltonian of the scattering region More...
 
function create_scatter_GreensFunction (varargin)
 Calculates the surface Green operator of the scattering region. More...
 
function CreateEnergyArray (varargin)
 Creates the array of energy values for the integration. More...
 
function currentcalc (differentialConductance, Evec, tuned_contact)
 Calculates the current by integrating the differential conductance in a bias window. More...
 
function DifferentialConductanceT0 (Energy, junction)
 Calculates the zero temperature differential conductance for a given energy. More...
 
function InputParsing (varargin)
 Parses the optional parameters for the class constructor. More...
 

Protected Attributes

Property beta
 $\beta = 1/(k_BT)$ More...
 
Property beta
 $\beta = 1/(k_BT)$ More...
 
Property bias_max
 The maximal bias to be used in the calculations. More...
 
Property CurrentOp
 The calculated current operator between the QD and a chosen lead. (see method DetermineCurrentOperator) More...
 
Property DeployedMKL
 True if MKL component is built, false otherwise. More...
 
Property DeployedMKL
 True if MKL component is built, false otherwise. More...
 
Property Edb
 The number of the energy points in the attribute Evec. More...
 
Property Evec
 The energy array used in the calculations. More...
 
Property k_B
 Boltzmann constant in eV/K. More...
 
Property k_B
 Boltzmann constant in eV/K. More...
 
Property MaxSize
 Maximal size of full matrixes to be handled. More...
 
Property MaxSize
 Maximal size of full matrixes to be handled. More...
 
Property mu
 The Chemical potential in the same unit as other energy scales in the Hamiltonians. More...
 
Property mu
 The Chemical potential in the same unit as other energy scales in the Hamiltonians. More...
 
Property mu_QD
 An array containing the chamical potentials corresponding to the occupation numbers of OccNumbers. More...
 
Property OccNumbers
 Array containing the occupation numbers. More...
 
Property OccupationProbabilities
 Occupation probabilities of the QD connected to the leads occupied by N-N0 excess charge. More...
 
Property Opt
 An instance of structure Opt. More...
 
Property Opt
 An instance of structure Opt. More...
 
Property PartitionFunctionsOneElectron
 Array of partition functions of 1<N<StatesNum occupied one-electron states ( Z = sum_n(exp(-beta*En)) ) More...
 
Property ProgramName
 Name of the package. More...
 
Property ProgramName
 Name of the package. More...
 
Property ProgramShortName
 Short name of the package. More...
 
Property ProgramShortName
 Short name of the package. More...
 
Property SelfEnergy
 The calculated transition rates between the individual N-occupations states of the QD. More...
 
Property StatesNum
 Number of states utilized in the calculations. More...
 
Property T
 The temperature in Kelvin. More...
 
Property T
 The temperature in Kelvin. More...
 
Property T_treshold
 treshold temperature (makes difference between T=0 and T>0) More...
 
Property T_treshold
 treshold temperature (makes difference between T=0 and T>0) More...
 
Property ThermalOccupationProbabilities
 Occupation probabilities of an isolated, the N-occupied QD in thermal equilibrium. More...
 
Property TunnelingRates
 The calculated tunneling rates between the individual leads and the QD. More...
 
Property version
 The current version of the package. More...
 
Property version
 The current version of the package. More...
 

Detailed Description

A class to process transport calculations on quantum dots.

Based on the real-time diagrammatic method of PRB 50, 18439

Available

EQuUs v4.9 or later

Definition at line 26 of file QuantumDot.m.

Constructor & Destructor Documentation

◆ QuantumDot()

function QuantumDot::QuantumDot ( Opt  ,
varargin   
)

Constructor of the class.

Parameters
OptAn instance of structure Opt.
vararginCell array of optional parameters. For details see InputParsing.
Returns
An instance of the class

Member Function Documentation

◆ BadInputType() [1/2]

static function Messages::BadInputType ( variable  ,
type   
)
staticinherited

Throws a "bad input type" warning, with using the default value.

Parameters
variableA string conatining the name of the variable.
typeA string describing the desired type.

◆ BadInputType() [2/2]

static function Messages::BadInputType ( variable  ,
type   
)
staticinherited

Throws a "bad input type" warning, with using the default value.

Parameters
variableA string conatining the name of the variable.
typeA string describing the desired type.

◆ BadInputTypeNoDefault() [1/2]

static function Messages::BadInputTypeNoDefault ( variable  ,
type   
)
staticinherited

Throws a "bad input type" warning without setting it to default.

Parameters
variableA string conatining the name of the variable.
typeA string describing the desired type.

◆ BadInputTypeNoDefault() [2/2]

static function Messages::BadInputTypeNoDefault ( variable  ,
type   
)
staticinherited

Throws a "bad input type" warning without setting it to default.

Parameters
variableA string conatining the name of the variable.
typeA string describing the desired type.

◆ CalcTunnelingRate()

function QuantumDot::CalcTunnelingRate ( Energy  ,
gateVoltage  ,
varargin   
)

closing the parallel pool

Determine the tunneling rate for a given Energy and gateVoltage

Parameters
EnergyThe current energy value in units of the energy unit used in the Hamiltonian parameters.
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'junction'An instance of class NTerminal (or its derived class) representing the junction.

◆ CalcTunnelingRates()

function QuantumDot::CalcTunnelingRates ( gateVoltage  )

Determine the tunneling rates for all energy values in the energy array Evec for a given gateVoltage.

Parameters
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.

◆ checkMEXfile() [1/2]

static function CommonFunctions::checkMEXfile ( fncname  )
staticinherited

Checks the presence of a given MEX file.

Parameters
fncnameThe name of the function.
Returns
Returns true if the MEX file is present, false otherwise.

◆ checkMEXfile() [2/2]

static function CommonFunctions::checkMEXfile ( fncname  )
staticinherited

Checks the presence of a given MEX file.

Parameters
fncnameThe name of the function.
Returns
Returns true if the MEX file is present, false otherwise.

◆ complexDensity()

function Density::complexDensity ( junction_loc  ,
JustScatter   
)
protectedinherited

Calculates the density at a complex energy.

Parameters
junction_locAn instance of class NTerminal or its subclass describing the junction.
JustScatterLogical value. True if only an isolated scattering center should be considered in the self-consistent calculations, false otherwise.

◆ complexSpectral()

function DOS::complexSpectral ( junction_loc  ,
JustScatter   
)
protectedinherited

setting the current energy

creating the Hamiltonian of the scattering region evaluating the energy resolved density creating the data structure of the local density of states Calculates the spectral function at a complex energy

Parameters
junction_locAn instance of class NTerminal or its subclass representing the junction.
JustScatterlogical value. True if only an isolated scattering center should be considered in the calculations, false otherwise.
Returns
spectral_function The calculted spectral function and a data structure containing geometry data of the junction.

◆ create_Hamiltonians()

function DOS::create_Hamiltonians ( varargin  )
protectedinherited

Creates the Hamiltonians of the system.

Parameters
vararginCell array of optional parameters:.

◆ create_scatter()

function DOS::create_scatter ( varargin  )
protectedinherited

cerating Hamiltonian of the scattering region

creating the Lead Hamiltonians Creates the Hamiltonian of the scattering center

Parameters
vararginCell array of optional parameters:.

◆ create_scatter_GreensFunction()

function IV::create_scatter_GreensFunction ( varargin  )
protectedinherited

Calculates the surface Green operator of the scattering region.

Parameters
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'gauge_trans'Logical value. Set true (default) to perform gauge transformation on the Green's function and on the Hamiltonians, or false otherwise.
'junction'An instance of class NTerminal or its subclass.
Returns
The inverse of the Green operator.

◆ CreateEnergyArray()

function IV::CreateEnergyArray ( varargin  )
protectedinherited

Creates the array of energy values for the integration.

Parameters
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'tuned_contact'String value. Identifies the tuned contact for the calculations. Possible values are: 'right', 'left', 'symmetric'.

◆ currentcalc()

function IV::currentcalc ( differentialConductance  ,
Evec  ,
tuned_contact   
)
protectedinherited

Calculates the current by integrating the differential conductance in a bias window.

Parameters
differentialConductanceArray of differential conductance
EvecArray of energy values
tuned_contactString value. Identifies the tuned contact for the calculations. Possible values are: 'right', 'left', 'symmetric'.
Returns
Returns with the calculated current

◆ DensityCalc()

function Density::DensityCalc ( varargin  )
inherited

Calculates the onsite desnity using the method in Nanotechnology 25 (2014), 465201.

Parameters
vararginCell array of optional parameters:
'Edb'The number of the energy points over the contour integral.
'DeltaPhi'A parameter to control the incident angle of the integration contour near the real axis. (Default value is $$\Delta\Phi=0.5\pi$$.
'Evec'The complex energy points in case of custom integration path. (Overrides all other optional parameters.)
'Emin'The minimum of the energy array.
'JustScatter'Logical value. True if only an isolated scattering center should be considered in the self-consistent calculations, false otherwise.
Returns
An array of the calculated density and a structure describing the geometry of the sites.

◆ DensityCalcSmall()

function Density::DensityCalcSmall ( num_occupied_states  )
inherited

determine the number of sites in the calculations to preallocate memory

preallocate memory for Densitysurf creating function handles for parallel for setting the current energy creating the Hamiltonian of the scattering region evaluating the energy resolved density closing the parallel pool calculating the contour integrals Calculates the onsite desnity using the method in Nanotechnology 25 (2014), 465201. This method is usable for small isolated scattering centers for which an exact diagonalization can be performed

Parameters
num_occupied_statesNumber of occupied states
Returns
An array of the calculated density and a structure describing the geometry of the sites.

◆ DetermineCurrent()

function QuantumDot::DetermineCurrent ( bias  ,
gateVoltage  ,
leadnum   
)

Calculates the current (in units of e^2/hbar) through a lead leadnum at gate voltage gateVoltage and at bias bias.

Parameters
biasThe bias voltage applied through the leads in units of the energy unit used in the Hamiltonian parameters.
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.
leadnumIdentification number of the lead. (see attribute CreateLeadHamiltonians.Hanyadik_Lead).
Returns
Returns with the calculated current in units of $ e^2/\hbar $

◆ DetermineCurrentOperator()

function QuantumDot::DetermineCurrentOperator ( bias  ,
gateVoltage  ,
leadnum   
)

Determine the current operator (in units of $ e^2/\hbar $) to calculate the current through a lead leadnum at gate voltage gateVoltage and at bias bias.

Parameters
biasThe bias voltage applied through the leads in units of the energy unit used in the Hamiltonian parameters.
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.
leadnumIdentification number of the lead. (see attribute CreateLeadHamiltonians.Hanyadik_Lead).

◆ DetermineDensityOfStates()

function QuantumDot::DetermineDensityOfStates ( Emin  ,
Emax  ,
Edb   
)

Calculates the DOS to deremine the one-electron occupation levels.

This must be done manually.

Parameters
EminThe minimum of the energy array.
EmaxThe maximum of the energy array.
EdbThe number of the energy points in the energy array.

◆ DetermineOccupationProbabilities()

function QuantumDot::DetermineOccupationProbabilities ( )

Determines the non-equilibrium occupation probabilities P_N (see Eq (8) in Eur.

Phys. J B 10, 119)

Returns
Returns with the calculated occupation probabilities

◆ DetermineSelfEnergy()

function QuantumDot::DetermineSelfEnergy ( bias  ,
gateVoltage   
)

Determine the self-energy matrix elements describing the transition rates between the N occupated states of the QD.

(see the diagrammatic rules in PRB 50, 18439)

Parameters
biasThe bias voltage applied through the leads in units of the energy unit used in the Hamiltonian parameters.
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.
Returns
The calulated self-energy (transition rates between the N occupated states of the QD.)

◆ DetermineThermalOccupationProbabilities()

function QuantumDot::DetermineThermalOccupationProbabilities ( gateVoltage  )

Determines the equilibrium occupation probabilities PN (see Eq (8) in Eur.

Phys. J B 10, 119)

Parameters
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.

◆ diagInv() [1/2]

function CommonFunctions::diagInv ( )
inherited

Calculates the diagonal part of the inverse of a sparse matrix.

If MKL component is advised to build.

Parameters
AA sparse matrix to be inverted
Returns
Returns the diagonal elements of the inverse

◆ diagInv() [2/2]

function CommonFunctions::diagInv ( )
inherited

Calculates the diagonal part of the inverse of a sparse matrix.

If MKL component is advised to build.

Parameters
AA sparse matrix to be inverted
Returns
Returns the diagonal elements of the inverse

◆ DifferentialConductanceT0()

function IV::DifferentialConductanceT0 ( Energy  ,
junction   
)
protectedinherited

Calculates the zero temperature differential conductance for a given energy.

Parameters
EnergyThe energy value (use the same units as in the Hamiltonian)
junctionAn instance of class NTerminal or its subclass.
Returns
Returns with the calculated zero temperature differential conductance.

◆ display() [1/2]

function Messages::display ( message  ,
nosilent   
)
inherited

Displays output messages on the screen.

Parameters
messageString containing the message to be displayed
nosilentSet true to override the silent option given in Opt.Silent.

◆ display() [2/2]

function Messages::display ( message  ,
nosilent   
)
inherited

Displays output messages on the screen.

Parameters
messageString containing the message to be displayed
nosilentSet true to override the silent option given in Opt.Silent.

◆ DOSCalc()

function DOS::DOSCalc ( Evec  ,
varargin   
)
inherited

Calculates the onsite desnity of states.

Parameters
EvecOne-dimensional array of the energy points.
vararginCell array of optional parameters:
'JustScatter'Logical value. Set true to omit the contacts from the system

◆ eig() [1/2]

function CommonFunctions::eig ( ,
 
)
inherited

Calculates the generalized eigenvalue problem based on the zggev and dggev LAPACK functions.

Parameters
AA square matrix on the left side.
BA square matrix on the right side.
Returns
Returns the calculated generalized eigenvalues and the right and left sided eigenvectors.

◆ eig() [2/2]

function CommonFunctions::eig ( ,
 
)
inherited

Calculates the generalized eigenvalue problem based on the zggev and dggev LAPACK functions.

Parameters
AA square matrix on the left side.
BA square matrix on the right side.
Returns
Returns the calculated generalized eigenvalues and the right and left sided eigenvectors.

◆ ExceedIteration() [1/2]

static function Messages::ExceedIteration ( )
staticinherited

Throws an "iteration exceeded" warning.

◆ ExceedIteration() [2/2]

static function Messages::ExceedIteration ( )
staticinherited

Throws an "iteration exceeded" warning.

◆ Fermi() [1/2]

function FermiDirac::Fermi ( )
inherited

A function of the Fermi-Dirac statistics.

Parameters
EThe energy value in eV (scalar or an array of energy values).
Returns
Returns with the occupation number (numbers).

◆ Fermi() [2/2]

function FermiDirac::Fermi ( )
inherited

A function of the Fermi-Dirac statistics.

Parameters
EThe energy value in eV (scalar or an array of energy values).
Returns
Returns with the occupation number (numbers).

◆ getBandWidth()

function Density::getBandWidth ( )
inherited

creating site indexes corresponding to the elements of the density vector

Determines the band width of the leads and of the scattering region.

Returns
ret An instance of structure BandWidth containing the bandwidths.

◆ getOpt() [1/2]

function Messages::getOpt ( )
inherited

Retrives the structure containing the calculation parameters.

Returns
Return an instance of structure Opt.

◆ getOpt() [2/2]

function Messages::getOpt ( )
inherited

Retrives the structure containing the calculation parameters.

Returns
Return an instance of structure Opt.

◆ getProgramName() [1/2]

function CommonFunctions::getProgramName ( )
inherited

Gets the name of the package.

Returns
Returns the name of the package.

◆ getProgramName() [2/2]

function CommonFunctions::getProgramName ( )
inherited

Gets the name of the package.

Returns
Returns the name of the package.

◆ getProgramShortName() [1/2]

function CommonFunctions::getProgramShortName ( )
inherited

Gets the short name of the package.

Returns
Returns the short name of the package.

◆ getProgramShortName() [2/2]

function CommonFunctions::getProgramShortName ( )
inherited

Gets the short name of the package.

Returns
Returns the short name of the package.

◆ getVersion() [1/2]

function CommonFunctions::getVersion ( )
inherited

Gets the current version of the package.

Returns
Returns the current version of the package.

◆ getVersion() [2/2]

function CommonFunctions::getVersion ( )
inherited

Gets the current version of the package.

Returns
Returns the current version of the package.

◆ Initialize()

function QuantumDot::Initialize ( )

Initializes class attributes.

◆ InputParsing()

function QuantumDot::InputParsing ( varargin  )
protected

Parses the optional parameters for the class constructor.

Parameters
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'T'The absolute temperature in Kelvins.
'silent'Set true to suppress output messages.
'scatterPotential'A function handle y=f( #coordinates coords ) or y=f( CreateHamiltonians CreateH, E ) of the potential across the junction.
'useSelfEnergy'Logical value. Set true (default) to solve the Dyson equation with the self energies of the leads, or false to use the surface Green operators.
'gfininvfromHamiltonian'Logical value. Set true calculate the surface Greens function of the scattering region from the Hamiltonaian of the scattering region, or false (default) to calculate it by the fast way (see Phys. Rev. B 90, 125428 (2014) for details).
'junction'An instance of a class NTerminal or its subclass describing the junction.
'bias_max'The maximal bias to be used in the calculations
'Edb'The number of the energy points in the attribute Evec
'Ec'The charging energy in the same units as the Hamiltonians.

◆ inv_SVD() [1/2]

static function CommonFunctions::inv_SVD ( )
staticinherited

Inverts badly conditioned matrix A with SVD regularization.

Parameters
AA square matrix to be inverted.
Returns
Returns the calculated inverse.

◆ inv_SVD() [2/2]

static function CommonFunctions::inv_SVD ( )
staticinherited

Inverts badly conditioned matrix A with SVD regularization.

Parameters
AA square matrix to be inverted.
Returns
Returns the calculated inverse.

◆ IsDeployedMKL() [1/2]

function CommonFunctions::IsDeployedMKL ( )
inherited

Checks whether the MKL component is deployed.

Returns
Returns with true if MKL component is deployed, false otherwise.

◆ IsDeployedMKL() [2/2]

function CommonFunctions::IsDeployedMKL ( )
inherited

Checks whether the MKL component is deployed.

Returns
Returns with true if MKL component is deployed, false otherwise.

◆ isOctave() [1/2]

static function CommonFunctions::isOctave ( )
staticinherited

Checks whether the running environment is matlab or octave.

Returns
Returns true if running environment is octave, false otherwise.

◆ isOctave() [2/2]

static function CommonFunctions::isOctave ( )
staticinherited

Checks whether the running environment is matlab or octave.

Returns
Returns true if running environment is octave, false otherwise.

◆ IVcalc()

function IV::IVcalc ( varargin  )
inherited

Calculates the current-voltage relation as a function of the bias.

Parameters
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'tuned_contact'String value. Identifies the tuned contact for the calculations. Possible values are: 'right', 'left', 'symmetric'.
Returns
[1] The calculated current array.
[2] The calculated voltage bias array.
[3] The calculated differential conductance.

◆ LocalDOSCalc()

function DOS::LocalDOSCalc ( Energy  ,
varargin   
)
inherited

preallocate memory for Densitysurf

creating function handles for parallel for setting the current energy creating the Hamiltonian of the scattering region evaluating the energy resolved density closing the parallel pool Calculates the local desnity of states for a given energy.

Parameters
EnergyThe energy value in the units of the Hamiltonians
vararginCell array of optional parameters:
'JustScatter'Logical value. Set true to omit the contacts from the system
Returns
Returns with the calculated local DOS. (An instance of structure LocalDOS)

◆ partialInv() [1/2]

function CommonFunctions::partialInv ( ,
sizeInv   
)
inherited

Calculates a partial inverse of a sparse matrix.

If MKL component is not developed, the backslash operator is used insted.

Parameters
AA sparse matrix to be inverted
sizeInvThe size of partial inverse to be calculated.
Returns
Returns the calculated partial inverse

◆ partialInv() [2/2]

function CommonFunctions::partialInv ( ,
sizeInv   
)
inherited

Calculates a partial inverse of a sparse matrix.

If MKL component is not developed, the backslash operator is used insted.

Parameters
AA sparse matrix to be inverted
sizeInvThe size of partial inverse to be calculated.
Returns
Returns the calculated partial inverse

◆ SetChemicalPotentials()

function QuantumDot::SetChemicalPotentials ( doping_levels  ,
gateVoltage   
)

Manually sets the chemical potentials corresponding to the given single-electron doping levels.

Parameters
doping_levelsThe user defined single-electron doping levels obatined from the calculated density of states.
gateVoltageThe back gate voltage in units of the energy unit used in the Hamiltonian parameters.

◆ SetEnergy() [1/2]

function UtilsBase::SetEnergy ( newE  ,
varargin   
)
inherited

Sets the energy for the calculations.

Parameters
newEThe value of the energy in the same units as the Hamiltonian.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'junction'An instance of class NTerminal (or its derived class) representing the junction.

◆ SetEnergy() [2/2]

function UtilsBase::SetEnergy ( newE  ,
varargin   
)
inherited

Sets the energy for the calculations.

Parameters
newEThe value of the energy in the same units as the Hamiltonian.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'junction'An instance of class NTerminal (or its derived class) representing the junction.

◆ setTemperature() [1/2]

function FermiDirac::setTemperature ( T  )
inherited

Sets the temperature for the calculations.

Parameters
TThe temperature in Kelvin (scalar or an array)

◆ setTemperature() [2/2]

function FermiDirac::setTemperature ( T  )
inherited

Sets the temperature for the calculations.

Parameters
TThe temperature in Kelvin (scalar or an array)

◆ SimphsonInt() [1/2]

static function CommonFunctions::SimphsonInt ( ,
 
)
staticinherited

Simphson integral: y is a vector of function values at equal distant points: y_i = f(x_i), x_i-x_{i-1}=h.

Parameters
yFunction values to be integrated
hIncrement between the x_i points.

◆ SimphsonInt() [2/2]

static function CommonFunctions::SimphsonInt ( ,
 
)
staticinherited

Simphson integral: y is a vector of function values at equal distant points: y_i = f(x_i), x_i-x_{i-1}=h.

Parameters
yFunction values to be integrated
hIncrement between the x_i points.

◆ xmlread() [1/2]

function CommonFunctions::xmlread ( filename  )
inherited

Function to load XML files (based on xerces libraries), providing octave compatibility.

Parameters
filenameAbsolute path to the file to be opened. (In matlab relative path is sufficient)
Returns
The loaded document object model (see http://www.mathworks.com/help/matlab/ref/xmlread.html#outputarg_DOMnode for details.)

◆ xmlread() [2/2]

function CommonFunctions::xmlread ( filename  )
inherited

Function to load XML files (based on xerces libraries), providing octave compatibility.

Parameters
filenameAbsolute path to the file to be opened. (In matlab relative path is sufficient)
Returns
The loaded document object model (see http://www.mathworks.com/help/matlab/ref/xmlread.html#outputarg_DOMnode for details.)

◆ xmlwrite() [1/2]

function CommonFunctions::xmlwrite ( filename  ,
DOM   
)
inherited

Function to export XML files (based on xerces libraries), providing octave compatibility.

Parameters
filenameAbsolute path to the file to be opened. (In matlab relative path is sufficient)
DOMThe loaded document object model (see http://www.mathworks.com/help/matlab/ref/xmlread.html#outputarg_DOMnode for details.)

◆ xmlwrite() [2/2]

function CommonFunctions::xmlwrite ( filename  ,
DOM   
)
inherited

Function to export XML files (based on xerces libraries), providing octave compatibility.

Parameters
filenameAbsolute path to the file to be opened. (In matlab relative path is sufficient)
DOMThe loaded document object model (see http://www.mathworks.com/help/matlab/ref/xmlread.html#outputarg_DOMnode for details.)

Member Data Documentation

◆ BandWidth [1/2]

Property UtilsBase::BandWidth
inherited

An instance of structure BandWidth.

Definition at line 36 of file UtilsBase.m.

◆ BandWidth [2/2]

Property UtilsBase::BandWidth
inherited

An instance of structure BandWidth.

Definition at line 36 of file UtilsBase.m.

◆ beta [1/2]

Property FermiDirac::beta
protectedinherited

$\beta = 1/(k_BT)$

Definition at line 38 of file FermiDirac.m.

◆ beta [2/2]

Property FermiDirac::beta
protectedinherited

$\beta = 1/(k_BT)$

Definition at line 38 of file FermiDirac.m.

◆ bias_max

Property IV::bias_max
protectedinherited

The maximal bias to be used in the calculations.

Definition at line 37 of file IV.m.

◆ CurrentOp

Property QuantumDot::CurrentOp
protected

The calculated current operator between the QD and a chosen lead. (see method DetermineCurrentOperator)

Definition at line 55 of file QuantumDot.m.

◆ DeployedMKL [1/2]

Property CommonFunctions::DeployedMKL
protectedinherited

True if MKL component is built, false otherwise.

Definition at line 32 of file CommonFunctions.m.

◆ DeployedMKL [2/2]

Property CommonFunctions::DeployedMKL
protectedinherited

True if MKL component is built, false otherwise.

Definition at line 32 of file CommonFunctions.m.

◆ DOSdata

Property DOS::DOSdata
inherited

Definition at line 34 of file DOS.m.

◆ DOSvec

DOS::DOSvec
inherited

Array of the density of states values.

Definition at line 198 of file structures.m.

◆ Ec

Property QuantumDot::Ec

The charging energy.

Definition at line 33 of file QuantumDot.m.

◆ Edb

Property IV::Edb
protectedinherited

The number of the energy points in the attribute Evec.

Definition at line 40 of file IV.m.

◆ Evec [1/2]

Property IV::Evec
protectedinherited

The energy array used in the calculations.

Definition at line 34 of file IV.m.

◆ Evec [2/2]

DOS::Evec
inherited

Array of the enrgy points.

Definition at line 200 of file structures.m.

◆ gfininvfromHamiltonian [1/2]

Property UtilsBase::gfininvfromHamiltonian
inherited

logical value. Set true for calculate the Greens function of the scattering region from Hamiltonian, or false (default) otherwise.

Definition at line 45 of file UtilsBase.m.

◆ gfininvfromHamiltonian [2/2]

Property UtilsBase::gfininvfromHamiltonian
inherited

logical value. Set true for calculate the Greens function of the scattering region from Hamiltonian, or false (default) otherwise.

Definition at line 45 of file UtilsBase.m.

◆ junction [1/2]

Property UtilsBase::junction
inherited

An instance of class NTerminal (or its subclass) representing the junction.

Definition at line 33 of file UtilsBase.m.

◆ junction [2/2]

Property UtilsBase::junction
inherited

An instance of class NTerminal (or its subclass) representing the junction.

Definition at line 33 of file UtilsBase.m.

◆ k_B [1/2]

Property FermiDirac::k_B
protectedinherited

Boltzmann constant in eV/K.

Definition at line 32 of file FermiDirac.m.

◆ k_B [2/2]

Property FermiDirac::k_B
protectedinherited

Boltzmann constant in eV/K.

Definition at line 32 of file FermiDirac.m.

◆ MaxSize [1/2]

Property CommonFunctions::MaxSize
protectedinherited

Maximal size of full matrixes to be handled.

Definition at line 44 of file CommonFunctions.m.

◆ MaxSize [2/2]

Property CommonFunctions::MaxSize
protectedinherited

Maximal size of full matrixes to be handled.

Definition at line 44 of file CommonFunctions.m.

◆ mu [1/2]

Property FermiDirac::mu
protectedinherited

The Chemical potential in the same unit as other energy scales in the Hamiltonians.

Definition at line 44 of file FermiDirac.m.

◆ mu [2/2]

Property FermiDirac::mu
protectedinherited

The Chemical potential in the same unit as other energy scales in the Hamiltonians.

Definition at line 44 of file FermiDirac.m.

◆ mu_QD

Property QuantumDot::mu_QD
protected

An array containing the chamical potentials corresponding to the occupation numbers of OccNumbers.

Definition at line 61 of file QuantumDot.m.

◆ OccNumbers

Property QuantumDot::OccNumbers
protected

Array containing the occupation numbers.

Definition at line 58 of file QuantumDot.m.

◆ OccupationProbabilities

Property QuantumDot::OccupationProbabilities
protected

Occupation probabilities of the QD connected to the leads occupied by N-N0 excess charge.

Definition at line 46 of file QuantumDot.m.

◆ Opt [1/2]

Property Messages::Opt
protectedinherited

An instance of structure Opt.

Definition at line 31 of file Messages.m.

◆ Opt [2/2]

Property Messages::Opt
protectedinherited

An instance of structure Opt.

Definition at line 31 of file Messages.m.

◆ PartitionFunctionsOneElectron

Property QuantumDot::PartitionFunctionsOneElectron
protected

Array of partition functions of 1<N<StatesNum occupied one-electron states ( Z = sum_n(exp(-beta*En)) )

Definition at line 40 of file QuantumDot.m.

◆ ProgramName [1/2]

Property CommonFunctions::ProgramName
protectedinherited

Name of the package.

Definition at line 38 of file CommonFunctions.m.

◆ ProgramName [2/2]

Property CommonFunctions::ProgramName
protectedinherited

Name of the package.

Definition at line 38 of file CommonFunctions.m.

◆ ProgramShortName [1/2]

Property CommonFunctions::ProgramShortName
protectedinherited

Short name of the package.

Definition at line 41 of file CommonFunctions.m.

◆ ProgramShortName [2/2]

Property CommonFunctions::ProgramShortName
protectedinherited

Short name of the package.

Definition at line 41 of file CommonFunctions.m.

◆ scatterPotential [1/2]

Property UtilsBase::scatterPotential
inherited

Function handle pot = f(#coordinates) for the additional potential to be applied in the scattering region.

Definition at line 42 of file UtilsBase.m.

◆ scatterPotential [2/2]

Property UtilsBase::scatterPotential
inherited

Function handle pot = f(#coordinates) for the additional potential to be applied in the scattering region.

Definition at line 42 of file UtilsBase.m.

◆ SelfEnergy

Property QuantumDot::SelfEnergy
protected

The calculated transition rates between the individual N-occupations states of the QD.

Definition at line 49 of file QuantumDot.m.

◆ StatesNum

Property QuantumDot::StatesNum
protected

Number of states utilized in the calculations.

Definition at line 64 of file QuantumDot.m.

◆ T [1/2]

Property FermiDirac::T
protectedinherited

The temperature in Kelvin.

Definition at line 35 of file FermiDirac.m.

◆ T [2/2]

Property FermiDirac::T
protectedinherited

The temperature in Kelvin.

Definition at line 35 of file FermiDirac.m.

◆ T_treshold [1/2]

Property FermiDirac::T_treshold
protectedinherited

treshold temperature (makes difference between T=0 and T>0)

Definition at line 41 of file FermiDirac.m.

◆ T_treshold [2/2]

Property FermiDirac::T_treshold
protectedinherited

treshold temperature (makes difference between T=0 and T>0)

Definition at line 41 of file FermiDirac.m.

◆ ThermalOccupationProbabilities

Property QuantumDot::ThermalOccupationProbabilities
protected

Occupation probabilities of an isolated, the N-occupied QD in thermal equilibrium.

Definition at line 43 of file QuantumDot.m.

◆ TunnelingRates

Property QuantumDot::TunnelingRates
protected

The calculated tunneling rates between the individual leads and the QD.

Definition at line 52 of file QuantumDot.m.

◆ useSelfEnergy [1/2]

Property UtilsBase::useSelfEnergy
inherited

logical value. Set true (default) for solve the Dyson equation with the self energies, or false otherwise.

Definition at line 39 of file UtilsBase.m.

◆ useSelfEnergy [2/2]

Property UtilsBase::useSelfEnergy
inherited

logical value. Set true (default) for solve the Dyson equation with the self energies, or false otherwise.

Definition at line 39 of file UtilsBase.m.

◆ varargin [1/2]

Property UtilsBase::varargin
inherited

cell array of optional parameters. (For details see InputParsing)

Definition at line 48 of file UtilsBase.m.

◆ varargin [2/2]

Property UtilsBase::varargin
inherited

cell array of optional parameters. (For details see InputParsing)

Definition at line 48 of file UtilsBase.m.

◆ version [1/2]

Property CommonFunctions::version
protectedinherited

The current version of the package.

Definition at line 35 of file CommonFunctions.m.

◆ version [2/2]

Property CommonFunctions::version
protectedinherited

The current version of the package.

Definition at line 35 of file CommonFunctions.m.


The documentation for this class was generated from the following file: