Eötvös Quantum Utilities
v4.9.146
Providing the Horsepowers in the Quantum Realm
|
A class to calculate the Keldysh lesser and greater Green functions and self energies of a translational invariant lead. More...
Public Member Functions | |
function | AddPotential (V) |
Adds on-site potential to the Hamiltonian H0. More... | |
function | ApplyOverlapMatrices (E) |
Applies the overlap matrices to the Hamiltonians: K = H-ES. More... | |
function | Calc_Effective_Hamiltonians (E) |
Calculates the effective Hamiltonians according to Eq (48) of of PRB 78, 035407. More... | |
function | CalcSpektrum (varargin) |
Calculates the band structure of the lead. More... | |
function | Clear (MemberName) |
Clears the value of an attribute in the class. More... | |
function | CreateClone (varargin) |
Creates a clone of the present Lead object. More... | |
function | CreateClone () |
Creates a clone of the present object. More... | |
function | CreateHamiltonians (varargin) |
Creates the Hamiltonians H_0 and H_1 of the lead. More... | |
function | Decimate_Hamiltonians () |
Decimates the Hamiltonians (if the singular sites are predefined). More... | |
function | Determine_Open_Channels () |
Determines the open channels in the lead. The data are storen within the attribute open_channels. 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 | 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 | FiniteGreenFunction (z1, z2, varargin) |
Eq (20), (17) and (36) in PRB 78 035407 g00 = inv(Normamtx) More... | |
function | Gamma () |
Calculates the effective coupling of the lead to the scattering region according to Eq (3) in Eur. More... | |
function | Get_Effective_Coordinates () |
Gets the coordinates of the sites of the effective Hamiltonians. More... | |
function | Get_Effective_Hamiltonians () |
Gets the effective Hamiltonians K0_eff, K1_eff, K1adj_eff according to Eq (48) of of PRB 78, 035407. More... | |
function | Get_Effective_Overlaps () |
Gets the effective Hamiltonians S0_eff, S1_eff, S1adj_eff according to Eq (48) of of PRB 78, 035407. More... | |
function | Get_Neff () |
Gets the effective number of sites after the elimination of the singular values. More... | |
function | Get_V () |
Gets the total transformation U related to the SVD transformation. More... | |
function | getOpt () |
Retrives the structure containing the calculation parameters. More... | |
function | getProgramName () |
Gets the 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 | Group_Velocity () |
Calculates the group velocities corresponding to the propagating states. The calculated group velocities are stored within the class. More... | |
function | InfGreenFunction (z1, z2, varargin) |
Calculates the Green function of the infinite lead for eregy E between slabs z1 and z2. More... | |
function | is_SVD_needed () |
Decides whether SVD regularization is needed or not. More... | |
function | IsDeployedMKL () |
Checks whether the MKL component is deployed. More... | |
function | isSuperconducting () |
Test, whether the lead is in the superconducting phase or not. More... | |
function | Lead_Keldysh (Opt, param, varargin) |
Constructor of the class. More... | |
function | LesserSelfEnergy () |
Calculates the lesser self energy of a semi-infinite lead for energy E according to Eq (41) in Adv. More... | |
function | LesserSurfaceGreenFunction (varargin) |
Calculates the lesser Green function of a semi-infinite lead for eregy E. The calculated Green function is stored by the attribute lessergsurf. More... | |
function | MomentumDependentHamiltonian (k, q) |
Construct a momentum dependent (Fourier-transformed) Hamiltonian. More... | |
function | NormamtxSzamolo () |
right SGF Eq (33) in PRB 78, 035407 (2008) g00 = inv(Normamtx) More... | |
function | partialInv (A, sizeInv) |
Calculates a partial inverse of a sparse matrix. More... | |
function | Read (MemberName) |
Query for the value of an attribute in the class. More... | |
function | Reset () |
Resets all elements in the class. More... | |
function | saveLeads () |
Save Lead Hamiltonians into a file 'Hamiltoni_Lead_' + num2str(Hanyadik_Lead) + '.mat'. More... | |
function | SelfEnergy () |
Calculates the retarded self energy of the semi-infinite lead according to Eq (36) of Ref PRB 78, 035407 (2008). More... | |
function | setTemperature (T) |
Sets the temperature in the calculations. More... | |
function | ShiftCoordinates (shift) |
Shifts the coordinates of the sites by an integer multiple of the lattice vector Coordinates.a. More... | |
function | ShiftLead (Energy) |
Shifts the on-site energies in the leads by a given energy. More... | |
function | SurfaceGreenFunction (varargin) |
Calculates the surface Green function of a semi-infinite lead for eregy E. More... | |
function | SVD_transform () |
Regularize the Hamiltonians of the lead by SVD regularization. More... | |
function | SVDdecompozition () |
Calculates the SVD decomposition of the matrix H1. More... | |
function | szetvalaszto (tolerance) |
Sorts the left and right propagating (decaying) modes. More... | |
function | Transform2BdG () |
Transforms the Hamiltonians and the overlap matrices into the BdG model in the Nambu space representation according to New Journal of Physics 9 (2007) 278. More... | |
function | Transform2Spin () |
Transforms the Hamiltonians and the overlap matrices to include electron spin. More... | |
function | TrukkosSajatertekek (E) |
Calculates the wave numbers corresponding to the propagating states at given energy. More... | |
function | Unitary_Transform (Umtx) |
Transforms the effective Hamiltonians and the calculated surface Green operator and selfenergy by a unitary transformation. More... | |
function | Write (MemberName, input) |
Sets the value of an attribute in the class. 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... | |
Static Public Member Functions | |
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 | checkMEXfile (fncname) |
Checks the presence of a given MEX file. 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 | 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... | |
Protected Member Functions | |
function | calcDualModes () |
Calculates the dual modes. The dual modes is stored by attributes d_modusmtx_m and d_modusmtx_p. More... | |
function | CalcDualModesEigenvec (modusmtx) |
Calculates the dual modes by inverting the right-sided eigenvectors. More... | |
function | CalcDualModesEigenvecWithLeftModes (modusmtx_left, vcsop) |
Calculates the dual modes using the left-sided eigenvectors. More... | |
function | Extend_Wavefnc (wavefnc_reduced, expk) |
Extend a reduced wave function to the original basis before the SVD regularization (Eq (45) in PRB 78 035407. More... | |
function | GinfCalcWithDualModes (z1, z2, z1points, z2points) |
Calculates the Green function of the infinite ribbon with dual modes. More... | |
function | GinfCalcWithLeftModes (z1, z2, z1points, z2points) |
Calculates the Green function of the infinite ribbon with with the left-sided modes. More... | |
function | GsurfSzamoloWithDualModes () |
Calculates the surface Green function with dual modes. The calculated Green function is stored by attribute gsurf. More... | |
function | GsurfSzamoloWithLeftModes () |
Calculates the surface Green function with the left-sided modes according to Eq (33) in PRB 78, 035407 (2008). The calculated Green function is stored by attribute gsurf. More... | |
function | Initialize () |
Initializes class attributes. More... | |
function | InputParsing (varargin) |
Parses the optional parameters for the class constructor. More... | |
function | NormamtxSzamoloWithDualModes () |
Calculates the normalization matrix to calculate the Green function using the dual modes. The calculated normalization matrix is stored by attribute Normamtx. More... | |
function | NormamtxSzamoloWithLeftModes () |
Calculates the normalization matrix to calculate the Green function using the left-sided modes. The calculated normalization matrix is stored by attribute Normamtx. More... | |
function | SelfEnergyCalcWithDualModes () |
Calculates the self energy with dual modes according to Eqs (17) and (36) in PRB 78 035407. More... | |
function | SelfEnergyCalcWithLeftModes () |
Eq (17) and (36) in PRB 78 035407 g00 = inv(Normamtx) More... | |
function | setM () |
Updates the number of sites in the cross section. More... | |
Protected Attributes | |
Property | beta |
More... | |
Property | bias |
The bias on the lead in units of the energy unit in the elements of the Hamiltonian. More... | |
Property | coordinates |
An instance of the structure coordinates. More... | |
Property | csoportseb |
The unsorted group velocities. More... | |
Property | d_modusmtx_m |
The dual basis of the right-sided wave functions of the eigenstates, that propagates or decays in the negative direction. More... | |
Property | d_modusmtx_p |
The dual basis of the right-sided wave functions of the eigenstates, that propagates or decays in the positive direction. More... | |
Property | degenerate_k_subspaces |
Logical matrix containing the degenerate k subspaces. More... | |
Property | DeployedMKL |
True if MKL component is built, false otherwise. More... | |
Property | E |
The energy value for which the TrukkosSajatertekek eigenvalue problem was solved. More... | |
Property | expk |
The unsorted wave numbers in form exp(1i*k). More... | |
Property | expk_m |
The wave numbers of the eigenstates in form exp(1i*k), that propagates or decays in the negative direction. More... | |
Property | expk_p |
The wave numbers of the eigenstates, that propagates or decays in the positive direction. More... | |
Property | fazis_mtx_H0 |
The matrix of the Peierls phases in the unit cell. More... | |
Property | fazis_mtx_H1 |
The matrix of the Peierls phases in the coupling matrix between the unit cells. More... | |
Property | fazis_mtx_H1t |
The matrix of the Peierls phases in the transverse coupling matrix between the unit cells. More... | |
Property | GaugeTransformationApplied |
A logical value. True if a gauge transformation was incorporated into the Hamiltonians or false otherwise. More... | |
Property | gfin |
The matrix of the retarded surface Greens function of a finite ribbon. More... | |
Property | gfininv |
The inverse of the retarded surface Greens function of a finite ribbon. More... | |
Property | ginf |
The matrix of the retarded Greens function of the infinite ribbon. More... | |
Property | GinfCalc |
Function handle to calculate the retarded infinite Greens function. More... | |
Property | gsurf |
The matrix of the surface Greens function of the semi-infinite ribbon. More... | |
Property | gsurfinv |
The inverse of the retarded surface Greens function. More... | |
Property | H0 |
The Hamiltonian of a unit cell. More... | |
Property | H00 |
Obsolete. More... | |
Property | H1 |
The coupling Hamiltonian between the unit cells. More... | |
Property | H1_skew_left |
The skew coupling (in the positive direction) between Hamiltonians H0 for transverse calculations. More... | |
Property | H1_skew_right |
The skew upward (in the negative direction) coupling between Hamiltonians H0 for transverse calculations. More... | |
Property | H1_transverse |
The transverse coupling between the slabs for transverse calculations. More... | |
Property | H1adj |
The coupling Hamiltonian between the unit cells in the opposite direction as H1. (For complex energies they differ from each other.) More... | |
Property | HamiltoniansCreated |
A logical value. True if the Hamiltonians were created, false otherwise. More... | |
Property | HamiltoniansDecimated |
A logical value. True if the Hamiltonians were decimated, false otherwise. More... | |
Property | Hanyadik_Lead |
The id number of the current lead. More... | |
Property | invNormamtx |
The inverse of the normalization matrix. More... | |
Property | is_SVD_transformed |
true if the Hamiltonians were SVD transformed, false otherwise More... | |
Property | K0 |
K0=H0-E*S0, see Eq (4) of PRB 78, 035407. More... | |
Property | K1 |
K1=H1-E*S1, see Eq (4) of PRB 78, 035407. More... | |
Property | K1_transverse |
K1_transverse=H1_transverse-E*S1_transverse. More... | |
Property | K1adj |
K1adj=H1adj-E*S1', see Eq (4) of PRB 78, 035407. More... | |
Property | k_B |
Boltzmann constant in eV/K. More... | |
Property | kulso_szabfokok |
List of sites in the unit cell that should be kept after decimation. More... | |
Property | Lead_Orientation |
The orientation of the lead. Set +1 is the "incoming" direction of the propagating states is defined in the +x or +y direction, and "-1" otherwise. More... | |
Property | lessergfin |
The matrix of the lesser surface Greens function of a finite ribbon. More... | |
Property | lesserginf |
The matrix of the lesser Greens function of the infinite ribbon. More... | |
Property | lessergsurf |
The matrix of the lesser surface Greens function of the semi-infinite ribbon. More... | |
Property | lesserSigma |
The lesser self-energy of the semi-infinite ribbon. More... | |
Property | M |
The number of the sites in the cross section. More... | |
Property | MagneticFieldApplied |
A logical value. True if magnetic field was applied in the Hamiltonians, false otherwise. More... | |
Property | MaxSize |
Maximal size of full matrixes to be handled. More... | |
Property | modusmtx |
The unsorted right-sided eigenstates. More... | |
Property | modusmtx_left |
The unsorted left-sided eigenstates. More... | |
Property | modusmtx_m |
The right-sided wave functions of the eigenstates, that propagates or decays in the negative direction. More... | |
Property | modusmtx_m_left |
The left-sided wave functions of the eigenstates, that propagates or decays in the negative direction. More... | |
Property | modusmtx_p |
The right sided wave functions of the eigenstates, that propagates or decays in the positive direction. More... | |
Property | modusmtx_p_left |
The left-sided wave numbers of the eigenstates, that propagates or decays in the positive direction. More... | |
Property | mu |
The Chemical potential in the same unit as other energy scales in the Hamiltonians. More... | |
Property | Neff |
Effective number of sites after the elimination of the singular values. More... | |
Property | next_SVD_cycle |
Somethimes it is needed to perform another SVD cycle to regularize the H1 matrix. More... | |
Property | Normamtx |
The normalization matrix in the Greens function. More... | |
Property | open_channels |
A structure open_channels containing info on the open channels. More... | |
Property | Opt |
An instance of structure Opt. More... | |
Property | OverlapApplied |
A logical value. True if the overlap integrals were applied, false otherwise. More... | |
Property | param |
An instance of the structure param. More... | |
Property | params |
An instance of the structure lead_param. More... | |
Property | ProgramName |
Name of the package. More... | |
Property | ProgramShortName |
Short name of the package. More... | |
Property | q |
The tranverse momentum for transverse computations. More... | |
Property | retarted |
true for calculating the retarded Green function, or false for the advanced Green function. More... | |
Property | S |
S matrix from the SVD decompozition, see Eq (41) of PRB 78, 035407. More... | |
Property | S0 |
The overlap integrals of a unit cell. More... | |
Property | S1 |
The overlap integrals between the unit cells. More... | |
Property | S1_transverse |
The overlap integrals between the slabs for transverse calculations. More... | |
Property | S1adj |
The adjungate of the overlap integrals between the unit cells. More... | |
Property | SelfEnergyCalc |
function handle to calculate the self energy More... | |
Property | Sigma |
The retarded self-energy of the semi-infinite ribbon. More... | |
Property | sort_tolerance |
A real number corresponding to the tolerance used to sort the left and right moving (decaying) modes. More... | |
Property | T |
The temperature in Kelvin. More... | |
Property | T_treshold |
treshold temperature (makes difference between T=0 and T>0) More... | |
Property | tolerance |
SVD tolerance to identify singular values. More... | |
Property | U |
U matrix from the SVD decompozition, see Eq (41) of PRB 78, 035407. More... | |
Property | V |
V matrix from the SVD decompozition, see Eq (41) of PRB 78, 035407. More... | |
Property | varargin |
list of optional parameters (see http://www.mathworks.com/help/matlab/ref/varargin.html for details) More... | |
Property | vcsop_m |
The group velocities of the eigenstates, that propagates or decays in the negative direction. More... | |
Property | vcsop_p |
The group velocities of the eigenstates in form exp(1i*k), that propagates or decays in the positive direction. More... | |
Property | version |
The current version of the package. More... | |
A class to calculate the Keldysh lesser and greater Green functions and self energies of a translational invariant lead.
The notations and the structure of the Hamiltonian is defined accroding to the following image:
EQuUs v4.9 or later
Definition at line 29 of file Lead_Keldysh.m.
Constructor of the class.
Opt | An instance of the structure Opt. |
param | An instance of structure param. |
varargin | Cell array of optional parameters. For details see InputParsing. |
Adds on-site potential to the Hamiltonian H0.
V | The potential calculated on the sites. The normalization matrix is set to empty. |
|
inherited |
Applies the overlap matrices to the Hamiltonians: K = H-ES.
E | The energy value. |
|
staticinherited |
Throws a "bad input type" warning, with using the default value.
variable | A string conatining the name of the variable. |
type | A string describing the desired type. |
|
staticinherited |
Throws a "bad input type" warning without setting it to default.
variable | A string conatining the name of the variable. |
type | A string describing the desired type. |
|
inherited |
Calculates the effective Hamiltonians according to Eq (48) of of PRB 78, 035407.
E | The energy value |
|
protectedinherited |
Calculates the dual modes. The dual modes is stored by attributes d_modusmtx_m and d_modusmtx_p.
Calculates the dual modes by inverting the right-sided eigenvectors.
modusmtx | The right-sided eigenvectors. |
|
protectedinherited |
Calculates the dual modes using the left-sided eigenvectors.
modusmtx_left | The left-sided eigenvectors. |
vcsop | The group velocities. |
Calculates the band structure of the lead.
varargin | Cell array of optional parameters: |
'toPlot' | Set 1 in order to plot the calculated spectrum, 0 (default) otherwise |
'ka_min' | The lower bound of the wave numbers. (Default is -pi.) |
'ka_max' | The upper bound of the wave numbers. (Default is pi.) |
'ka_num' | The number of wave number points involved in the calculations. (Default is 300.) |
'ka_vec' | One dimensional array of the k-pints. (Overrides previous attributes related to the k-vector array.) |
'center' | The calculated energy eigenvalues are centered around this value. (Default is 0.001.) |
'db' | The number of the calculated eigenvalues. |
'offset' | Offset value to shift the spectrum along the energy axis. |
'calcWaveFnc' | Logical value. Set true to calculate also the wave functions, or false (default) otherwise. |
|
staticinherited |
Checks the presence of a given MEX file.
fncname | The name of the function. |
function Lead_Keldysh::Clear | ( | MemberName | ) |
Clears the value of an attribute in the class.
MemberName | The name of the attribute to be cleared. |
Creates a clone of the present Lead object.
varargin | Cell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'empty' | Set true to create an empty clone, or false (default) to clone all atributes. |
|
inherited |
Creates a clone of the present object.
varargin | Cell array of optional parameters: |
'empty' | Set true to create an empty class, or false (default) to copy all the attributes. |
Creates the Hamiltonians H_0 and H_1 of the lead.
The created Hamiltonians are stored by within the object.
varargin | Cell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'toSave' | Logical value. If true, the created Hamiltonians are saved into a file 'Hamiltoni_Lead_' + num2str(Hanyadik_Lead) + '.mat'. |
'CustomHamiltonian' | An instance of class Custom_Hamiltonians describing external source of Hamiltonians. |
|
inherited |
Decimates the Hamiltonians (if the singular sites are predefined).
|
inherited |
Determines the open channels in the lead. The data are storen within the attribute open_channels.
|
inherited |
Calculates the diagonal part of the inverse of a sparse matrix.
If MKL component is advised to build.
A | A sparse matrix to be inverted |
|
inherited |
Displays output messages on the screen.
message | String containing the message to be displayed |
nosilent | Set true to override the silent option given in Opt.Silent. |
|
inherited |
Calculates the generalized eigenvalue problem based on the zggev and dggev LAPACK functions.
A | A square matrix on the left side. |
B | A square matrix on the right side. |
|
staticinherited |
Throws an "iteration exceeded" warning.
|
protectedinherited |
Extend a reduced wave function to the original basis before the SVD regularization (Eq (45) in PRB 78 035407.
wavefnc_reduced | The reduced wavefunction of the effective system |
expk | e^(i*k) |
|
inherited |
A function of the Fermi-Dirac statistics.
E | The energy value in eV (scalar or an array of energy values). |
Eq (20), (17) and (36) in PRB 78 035407 g00 = inv(Normamtx)
Calculates the Green function of a finite piece of the lead for eregy E between slabs z1 and z2. The calculated Greens function is stored by attribute gfin.
z1 | The index of the first slab. |
z2 | The index of the second slab. |
varargin | Optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'onlygfininv' | If true, only the inverse of the Green function is calculated. (Default value is false) |
|
inherited |
Calculates the effective coupling of the lead to the scattering region according to Eq (3) in Eur.
Phys. J. B 53, 537-549 (2006)
|
inherited |
Gets the coordinates of the sites of the effective Hamiltonians.
(Has sense if the singular sites were given directly)
|
inherited |
Gets the effective Hamiltonians K0_eff, K1_eff, K1adj_eff according to Eq (48) of of PRB 78, 035407.
|
inherited |
Gets the effective Hamiltonians S0_eff, S1_eff, S1adj_eff according to Eq (48) of of PRB 78, 035407.
|
inherited |
Gets the effective number of sites after the elimination of the singular values.
|
inherited |
Gets the total transformation U related to the SVD transformation.
|
inherited |
Retrives the structure containing the calculation parameters.
|
inherited |
Gets the name of the package.
|
inherited |
Gets the short name of the package.
|
inherited |
Gets the current version of the package.
|
protectedinherited |
Calculates the Green function of the infinite ribbon with dual modes.
The calculated Greens function is stored by attribute ginf.
z1 | The index of the first slab. |
z2 | The index of the second slab. |
z1points | Site indexes in the slab at z1. |
z2points | Site indexes in the slab at z2. |
|
protectedinherited |
Calculates the Green function of the infinite ribbon with with the left-sided modes.
The calculated Greens function is stored by attribute ginf.
z1 | The index of the first slab. |
z2 | The index of the second slab. |
z1points | Site indexes in the slab at z1. |
z2points | Site indexes in the slab at z2. |
|
inherited |
Calculates the group velocities corresponding to the propagating states. The calculated group velocities are stored within the class.
|
protectedinherited |
Calculates the surface Green function with dual modes. The calculated Green function is stored by attribute gsurf.
|
protectedinherited |
Calculates the surface Green function with the left-sided modes according to Eq (33) in PRB 78, 035407 (2008). The calculated Green function is stored by attribute gsurf.
Calculates the Green function of the infinite lead for eregy E between slabs z1 and z2.
The calculated Greens function is stored by attribute ginf.
z1 | The index of the first slab. |
z2 | The index of the second slab. |
varargin | Optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'z1points' | Array of sites in the slab z1 to include in the calculations. By default each site in the given slab is included. |
'z2points' | Array of sites in the slab z2 to include in the calculations. By default each site in the given slab is included. |
|
protected |
Initializes class attributes.
Parses the optional parameters for the class constructor.
varargin | Cell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'Hanyadik_Lead' | The ID number of the current lead. Set to empty (default) for using parameters of the scatter region. |
'Lead_Orientation' | Orientation of the lead. Set +1 (default) is the "incoming" direction of the propagating states is defined in the +x or +y direction, and "-1" otherwise. |
'q' | The transverse momentum. Set to empty (default) for computations without transverse momentums. |
'T' | The absolute temperature in Kelvins. |
|
staticinherited |
Inverts badly conditioned matrix A with SVD regularization.
A | A square matrix to be inverted. |
|
inherited |
Decides whether SVD regularization is needed or not.
|
inherited |
Checks whether the MKL component is deployed.
|
staticinherited |
Checks whether the running environment is matlab or octave.
|
inherited |
Test, whether the lead is in the superconducting phase or not.
function Lead_Keldysh::LesserSelfEnergy | ( | ) |
Calculates the lesser self energy of a semi-infinite lead for energy E according to Eq (41) in Adv.
Nat. Sci.: Nanosci. Nanotechnol. 5 (2014) 033001. The calculated lesser self energy is stored by attribute lesserSigma.
Calculates the lesser Green function of a semi-infinite lead for eregy E. The calculated Green function is stored by the attribute lessergsurf.
Construct a momentum dependent (Fourier-transformed) Hamiltonian.
k | The longitudinal momentum times the lattice constant. |
q | The transverse momentum times the lattice constant. |
|
inherited |
right SGF Eq (33) in PRB 78, 035407 (2008) g00 = inv(Normamtx)
left SGF Eq (33) in PRB 78, 035407 (2008) g00 = inv(Normamtx) The normalization matrix to calculate the Green function. The calculated normalization matrix is stored by attribute Normamtx.
|
protectedinherited |
Calculates the normalization matrix to calculate the Green function using the dual modes. The calculated normalization matrix is stored by attribute Normamtx.
|
protectedinherited |
Calculates the normalization matrix to calculate the Green function using the left-sided modes. The calculated normalization matrix is stored by attribute Normamtx.
|
inherited |
Calculates a partial inverse of a sparse matrix.
If MKL component is not developed, the backslash operator is used insted.
A | A sparse matrix to be inverted |
sizeInv | The size of partial inverse to be calculated. |
function Lead_Keldysh::Read | ( | MemberName | ) |
Query for the value of an attribute in the class.
MemberName | The name of the attribute to be set. |
function Lead_Keldysh::Reset | ( | ) |
Resets all elements in the class.
|
inherited |
Save Lead Hamiltonians into a file 'Hamiltoni_Lead_' + num2str(Hanyadik_Lead) + '.mat'.
|
inherited |
Calculates the retarded self energy of the semi-infinite lead according to Eq (36) of Ref PRB 78, 035407 (2008).
The calculated self energy is stored by attribure Sigma.
|
protectedinherited |
Calculates the self energy with dual modes according to Eqs (17) and (36) in PRB 78 035407.
|
protectedinherited |
Eq (17) and (36) in PRB 78 035407 g00 = inv(Normamtx)
Calculates the self energy with the left-sided modes according to Eqs (20), (17) and (36) in PRB 78 035407
|
protectedinherited |
Updates the number of sites in the cross section.
Sets the temperature in the calculations.
T | The value of the temperature in Kelvins. |
|
inherited |
Shifts the coordinates of the sites by an integer multiple of the lattice vector Coordinates.a.
shift | Integer by which the coordinates are shifted. |
|
inherited |
Shifts the on-site energies in the leads by a given energy.
The normalization matrix is set to empty.
Energy | The enrgy value. |
|
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.
y | Function values to be integrated |
h | Increment between the x_i points. |
Calculates the surface Green function of a semi-infinite lead for eregy E.
The calculated Green function is stored in attribute gsurf.
varargin | Optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'OnlyInverse' | If true (default), only the inverse of the Green function is calculated. |
'CalcInverse' | If true (default), the inverse of the Green function is also calculated. |
|
inherited |
Regularize the Hamiltonians of the lead by SVD regularization.
|
inherited |
Calculates the SVD decomposition of the matrix H1.
Sorts the left and right propagating (decaying) modes.
tolerance | The tolerance to be used during the sort. |
|
inherited |
Transforms the Hamiltonians and the overlap matrices into the BdG model in the Nambu space representation according to New Journal of Physics 9 (2007) 278.
It is assumed, that the Hamiltonian is already transfromed to the grand canonical operator:
|
inherited |
Transforms the Hamiltonians and the overlap matrices to include electron spin.
Calculates the wave numbers corresponding to the propagating states at given energy.
The calculated wave numbers are stored in attribute expk. The normalization matrix is set to empty.
E | The energy value used in the calculations. |
|
inherited |
Transforms the effective Hamiltonians and the calculated surface Green operator and selfenergy by a unitary transformation.
Umtx | The matrix of the unitary transformation. |
function Lead_Keldysh::Write | ( | MemberName | , |
input | |||
) |
Sets the value of an attribute in the class.
MemberName | The name of the attribute to be set. |
input | The value to be set. |
|
inherited |
Function to load XML files (based on xerces libraries), providing octave compatibility.
filename | Absolute path to the file to be opened. (In matlab relative path is sufficient) |
|
inherited |
Function to export XML files (based on xerces libraries), providing octave compatibility.
filename | Absolute path to the file to be opened. (In matlab relative path is sufficient) |
DOM | The loaded document object model (see http://www.mathworks.com/help/matlab/ref/xmlread.html#outputarg_DOMnode for details.) |
|
protectedinherited |
Definition at line 38 of file FermiDirac.m.
|
protected |
The bias on the lead in units of the energy unit in the elements of the Hamiltonian.
Definition at line 49 of file Lead_Keldysh.m.
|
protectedinherited |
An instance of the structure coordinates.
Definition at line 58 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The unsorted group velocities.
Definition at line 46 of file EigenProblemLead.m.
|
protectedinherited |
The dual basis of the right-sided wave functions of the eigenstates, that propagates or decays in the negative direction.
Definition at line 76 of file EigenProblemLead.m.
|
protectedinherited |
The dual basis of the right-sided wave functions of the eigenstates, that propagates or decays in the positive direction.
Definition at line 73 of file EigenProblemLead.m.
|
protectedinherited |
Logical matrix containing the degenerate k subspaces.
Definition at line 85 of file EigenProblemLead.m.
|
protectedinherited |
True if MKL component is built, false otherwise.
Definition at line 32 of file CommonFunctions.m.
|
protectedinherited |
The energy value for which the TrukkosSajatertekek eigenvalue problem was solved.
Definition at line 88 of file EigenProblemLead.m.
|
protectedinherited |
The unsorted wave numbers in form exp(1i*k).
Definition at line 43 of file EigenProblemLead.m.
|
protectedinherited |
The wave numbers of the eigenstates in form exp(1i*k), that propagates or decays in the negative direction.
Definition at line 52 of file EigenProblemLead.m.
|
protectedinherited |
The wave numbers of the eigenstates, that propagates or decays in the positive direction.
Definition at line 49 of file EigenProblemLead.m.
|
protectedinherited |
The matrix of the Peierls phases in the unit cell.
Definition at line 106 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The matrix of the Peierls phases in the coupling matrix between the unit cells.
Definition at line 109 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The matrix of the Peierls phases in the transverse coupling matrix between the unit cells.
Definition at line 112 of file CreateLeadHamiltonians.m.
|
protectedinherited |
A logical value. True if a gauge transformation was incorporated into the Hamiltonians or false otherwise.
Definition at line 127 of file CreateLeadHamiltonians.m.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
The Hamiltonian of a unit cell.
Definition at line 73 of file CreateLeadHamiltonians.m.
|
protectedinherited |
Obsolete.
Definition at line 82 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The coupling Hamiltonian between the unit cells.
Definition at line 76 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The skew coupling (in the positive direction) between Hamiltonians H0 for transverse calculations.
Definition at line 91 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The skew upward (in the negative direction) coupling between Hamiltonians H0 for transverse calculations.
Definition at line 88 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The transverse coupling between the slabs for transverse calculations.
Definition at line 85 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The coupling Hamiltonian between the unit cells in the opposite direction as H1. (For complex energies they differ from each other.)
Definition at line 79 of file CreateLeadHamiltonians.m.
|
protectedinherited |
A logical value. True if the Hamiltonians were created, false otherwise.
Definition at line 115 of file CreateLeadHamiltonians.m.
|
protectedinherited |
A logical value. True if the Hamiltonians were decimated, false otherwise.
Definition at line 118 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The id number of the current lead.
Definition at line 43 of file CreateLeadHamiltonians.m.
|
protectedinherited |
|
protectedinherited |
true if the Hamiltonians were SVD transformed, false otherwise
Definition at line 37 of file SVDregularizationLead.m.
|
protectedinherited |
K0=H0-E*S0, see Eq (4) of PRB 78, 035407.
Definition at line 61 of file CreateLeadHamiltonians.m.
|
protectedinherited |
K1=H1-E*S1, see Eq (4) of PRB 78, 035407.
Definition at line 64 of file CreateLeadHamiltonians.m.
|
protectedinherited |
K1_transverse=H1_transverse-E*S1_transverse.
Definition at line 70 of file CreateLeadHamiltonians.m.
|
protectedinherited |
K1adj=H1adj-E*S1', see Eq (4) of PRB 78, 035407.
Definition at line 67 of file CreateLeadHamiltonians.m.
|
protectedinherited |
Boltzmann constant in eV/K.
Definition at line 32 of file FermiDirac.m.
|
protectedinherited |
List of sites in the unit cell that should be kept after decimation.
Definition at line 55 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The orientation of the lead. Set +1 is the "incoming" direction of the propagating states is defined in the +x or +y direction, and "-1" otherwise.
Definition at line 40 of file CreateLeadHamiltonians.m.
|
protected |
The matrix of the lesser surface Greens function of a finite ribbon.
Definition at line 43 of file Lead_Keldysh.m.
|
protected |
The matrix of the lesser Greens function of the infinite ribbon.
Definition at line 40 of file Lead_Keldysh.m.
|
protected |
The matrix of the lesser surface Greens function of the semi-infinite ribbon.
Definition at line 37 of file Lead_Keldysh.m.
|
protected |
The lesser self-energy of the semi-infinite ribbon.
Definition at line 46 of file Lead_Keldysh.m.
|
protectedinherited |
The number of the sites in the cross section.
Definition at line 46 of file CreateLeadHamiltonians.m.
|
protectedinherited |
A logical value. True if magnetic field was applied in the Hamiltonians, false otherwise.
Definition at line 124 of file CreateLeadHamiltonians.m.
|
protectedinherited |
Maximal size of full matrixes to be handled.
Definition at line 44 of file CommonFunctions.m.
|
protectedinherited |
The unsorted right-sided eigenstates.
Definition at line 37 of file EigenProblemLead.m.
|
protectedinherited |
The unsorted left-sided eigenstates.
Definition at line 40 of file EigenProblemLead.m.
|
protectedinherited |
The right-sided wave functions of the eigenstates, that propagates or decays in the negative direction.
Definition at line 64 of file EigenProblemLead.m.
|
protectedinherited |
The left-sided wave functions of the eigenstates, that propagates or decays in the negative direction.
Definition at line 70 of file EigenProblemLead.m.
|
protectedinherited |
The right sided wave functions of the eigenstates, that propagates or decays in the positive direction.
Definition at line 61 of file EigenProblemLead.m.
|
protectedinherited |
The left-sided wave numbers of the eigenstates, that propagates or decays in the positive direction.
Definition at line 67 of file EigenProblemLead.m.
|
protectedinherited |
The Chemical potential in the same unit as other energy scales in the Hamiltonians.
Definition at line 44 of file FermiDirac.m.
|
protectedinherited |
Effective number of sites after the elimination of the singular values.
Definition at line 55 of file SVDregularizationLead.m.
|
protectedinherited |
Somethimes it is needed to perform another SVD cycle to regularize the H1 matrix.
Definition at line 52 of file SVDregularizationLead.m.
|
protectedinherited |
|
protectedinherited |
A structure open_channels containing info on the open channels.
Definition at line 82 of file EigenProblemLead.m.
|
protectedinherited |
An instance of structure Opt.
Definition at line 31 of file Messages.m.
|
protectedinherited |
A logical value. True if the overlap integrals were applied, false otherwise.
Definition at line 121 of file CreateLeadHamiltonians.m.
|
protectedinherited |
An instance of the structure param.
Definition at line 37 of file CreateLeadHamiltonians.m.
|
protectedinherited |
An instance of the structure lead_param.
Definition at line 49 of file CreateLeadHamiltonians.m.
|
protectedinherited |
Name of the package.
Definition at line 38 of file CommonFunctions.m.
|
protectedinherited |
Short name of the package.
Definition at line 41 of file CommonFunctions.m.
|
protectedinherited |
The tranverse momentum for transverse computations.
Definition at line 52 of file CreateLeadHamiltonians.m.
|
protectedinherited |
true for calculating the retarded Green function, or false for the advanced Green function.
Definition at line 34 of file EigenProblemLead.m.
|
protectedinherited |
S matrix from the SVD decompozition, see Eq (41) of PRB 78, 035407.
Definition at line 43 of file SVDregularizationLead.m.
|
protectedinherited |
The overlap integrals of a unit cell.
Definition at line 94 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The overlap integrals between the unit cells.
Definition at line 97 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The overlap integrals between the slabs for transverse calculations.
Definition at line 103 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The adjungate of the overlap integrals between the unit cells.
Definition at line 100 of file CreateLeadHamiltonians.m.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
A real number corresponding to the tolerance used to sort the left and right moving (decaying) modes.
Definition at line 79 of file EigenProblemLead.m.
|
protectedinherited |
The temperature in Kelvin.
Definition at line 35 of file FermiDirac.m.
|
protectedinherited |
treshold temperature (makes difference between T=0 and T>0)
Definition at line 41 of file FermiDirac.m.
|
protectedinherited |
SVD tolerance to identify singular values.
Definition at line 49 of file SVDregularizationLead.m.
|
protectedinherited |
U matrix from the SVD decompozition, see Eq (41) of PRB 78, 035407.
Definition at line 40 of file SVDregularizationLead.m.
|
protectedinherited |
V matrix from the SVD decompozition, see Eq (41) of PRB 78, 035407.
Definition at line 46 of file SVDregularizationLead.m.
|
protectedinherited |
list of optional parameters (see http://www.mathworks.com/help/matlab/ref/varargin.html for details)
Definition at line 130 of file CreateLeadHamiltonians.m.
|
protectedinherited |
The group velocities of the eigenstates, that propagates or decays in the negative direction.
Definition at line 58 of file EigenProblemLead.m.
|
protectedinherited |
The group velocities of the eigenstates in form exp(1i*k), that propagates or decays in the positive direction.
Definition at line 55 of file EigenProblemLead.m.
|
protectedinherited |
The current version of the package.
Definition at line 35 of file CommonFunctions.m.