![]() |
Eötvös Quantum Utilities
v4.9.146
Providing the Horsepowers in the Quantum Realm
|
Class to create and store Hamiltonian of the translational invariant leads. 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 | CalcSpektrum (varargin) |
| Calculates the band structure of the lead. More... | |
| function | Clear (MemberName) |
| Clears the value of an attribute in the interface. More... | |
| function | CreateClone (varargin) |
| Creates a clone of the present class. More... | |
| function | CreateHamiltonians (varargin) |
| Creates the Hamiltonians H_0 and H_1 of the lead. More... | |
| function | CreateLeadHamiltonians (Opt, param, varargin) |
| Constructor of the class. More... | |
| function | display (message, nosilent) |
| Displays output messages on the screen. More... | |
| function | getOpt () |
| Retrives the structure containing the calculation parameters. More... | |
| function | isSuperconducting () |
| Test, whether the lead is in the superconducting phase or not. More... | |
| function | MomentumDependentHamiltonian (k, q) |
| Construct a momentum dependent (Fourier-transformed) Hamiltonian. More... | |
| function | Read (MemberName) |
| Query for the value of an attribute in the interface. More... | |
| function | Reset () |
| Resets all elements in the object. More... | |
| function | saveLeads () |
| Save Lead Hamiltonians into a file 'Hamiltoni_Lead_' + num2str(Hanyadik_Lead) + '.mat'. 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 | 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 | Write (MemberName, input) |
| Sets the value of an attribute in the interface. 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 | ExceedIteration () |
| Throws an "iteration exceeded" warning. More... | |
Protected Member Functions | |
| function | Initialize () |
| Initializes object properties. More... | |
| function | InputParsing (varargin) |
| Parses the optional parameters for the class constructor. More... | |
| function | setM () |
| Updates the number of sites in the cross section. More... | |
Protected Attributes | |
| Property | coordinates |
| An instance of the structure coordinates. 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 | 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 | 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 | 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 | 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 | 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 | q |
| The tranverse momentum for transverse computations. 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 | varargin |
| list of optional parameters (see http://www.mathworks.com/help/matlab/ref/varargin.html for details) More... | |
Class to create and store Hamiltonian of the translational invariant leads.
The notations and the structure of the Hamiltonian is defined accroding to the following image:
EQuUs v4.8 or later
Definition at line 29 of file CreateLeadHamiltonians.m.
Constructor of the class.
| Opt | An instance of the structure Opt. |
| param | An instance of structure param. |
| varargin | Cell array of optional parameters. See InputParsing for details. |
| function CreateLeadHamiltonians::AddPotential | ( | V | ) |
Adds on-site potential to the Hamiltonian H0.
| V | The potential calculated on the sites. |
| function CreateLeadHamiltonians::ApplyOverlapMatrices | ( | E | ) |
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. |
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. |
| function CreateLeadHamiltonians::Clear | ( | MemberName | ) |
Clears the value of an attribute in the interface.
| MemberName | The name of the attribute to be cleared. |
Creates a clone of the present class.
| 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. |
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 |
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. |
|
staticinherited |
Throws an "iteration exceeded" warning.
|
inherited |
Retrives the structure containing the calculation parameters.
|
protected |
Initializes object properties.
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. |
| function CreateLeadHamiltonians::isSuperconducting | ( | ) |
Test, whether the lead is in the superconducting phase or not.
Construct a momentum dependent (Fourier-transformed) Hamiltonian.
| k | The longitudinal momentum times the lattice constant. |
| q | The transverse momentum times the lattice constant. |
| function CreateLeadHamiltonians::Read | ( | MemberName | ) |
Query for the value of an attribute in the interface.
| MemberName | The name of the attribute to be set. |
| function CreateLeadHamiltonians::Reset | ( | ) |
Resets all elements in the object.
| function CreateLeadHamiltonians::saveLeads | ( | ) |
Save Lead Hamiltonians into a file 'Hamiltoni_Lead_' + num2str(Hanyadik_Lead) + '.mat'.
|
protected |
Updates the number of sites in the cross section.
| function CreateLeadHamiltonians::ShiftCoordinates | ( | shift | ) |
Shifts the coordinates of the sites by an integer multiple of the lattice vector Coordinates.a.
| shift | Integer by which the coordinates are shifted. |
| function CreateLeadHamiltonians::ShiftLead | ( | Energy | ) |
Shifts the on-site energies in the leads by a given energy.
| Energy | The enrgy value. |
| function CreateLeadHamiltonians::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.
It is assumed, that the Hamiltonian is already transfromed to the grand canonical operator:
| function CreateLeadHamiltonians::Transform2Spin | ( | ) |
Transforms the Hamiltonians and the overlap matrices to include electron spin.
| function CreateLeadHamiltonians::Write | ( | MemberName | , |
| input | |||
| ) |
Sets the value of an attribute in the interface.
| MemberName | The name of the attribute to be set. |
| input | The value to be set. |
|
protected |
An instance of the structure coordinates.
Definition at line 58 of file CreateLeadHamiltonians.m.
|
protected |
The matrix of the Peierls phases in the unit cell.
Definition at line 106 of file CreateLeadHamiltonians.m.
|
protected |
The matrix of the Peierls phases in the coupling matrix between the unit cells.
Definition at line 109 of file CreateLeadHamiltonians.m.
|
protected |
The matrix of the Peierls phases in the transverse coupling matrix between the unit cells.
Definition at line 112 of file CreateLeadHamiltonians.m.
|
protected |
A logical value. True if a gauge transformation was incorporated into the Hamiltonians or false otherwise.
Definition at line 127 of file CreateLeadHamiltonians.m.
|
protected |
The Hamiltonian of a unit cell.
Definition at line 73 of file CreateLeadHamiltonians.m.
|
protected |
Obsolete.
Definition at line 82 of file CreateLeadHamiltonians.m.
|
protected |
The coupling Hamiltonian between the unit cells.
Definition at line 76 of file CreateLeadHamiltonians.m.
|
protected |
The skew coupling (in the positive direction) between Hamiltonians H0 for transverse calculations.
Definition at line 91 of file CreateLeadHamiltonians.m.
|
protected |
The skew upward (in the negative direction) coupling between Hamiltonians H0 for transverse calculations.
Definition at line 88 of file CreateLeadHamiltonians.m.
|
protected |
The transverse coupling between the slabs for transverse calculations.
Definition at line 85 of file CreateLeadHamiltonians.m.
|
protected |
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.
|
protected |
A logical value. True if the Hamiltonians were created, false otherwise.
Definition at line 115 of file CreateLeadHamiltonians.m.
|
protected |
A logical value. True if the Hamiltonians were decimated, false otherwise.
Definition at line 118 of file CreateLeadHamiltonians.m.
|
protected |
The id number of the current lead.
Definition at line 43 of file CreateLeadHamiltonians.m.
|
protected |
K0=H0-E*S0, see Eq (4) of PRB 78, 035407.
Definition at line 61 of file CreateLeadHamiltonians.m.
|
protected |
K1=H1-E*S1, see Eq (4) of PRB 78, 035407.
Definition at line 64 of file CreateLeadHamiltonians.m.
|
protected |
K1_transverse=H1_transverse-E*S1_transverse.
Definition at line 70 of file CreateLeadHamiltonians.m.
|
protected |
K1adj=H1adj-E*S1', see Eq (4) of PRB 78, 035407.
Definition at line 67 of file CreateLeadHamiltonians.m.
|
protected |
List of sites in the unit cell that should be kept after decimation.
Definition at line 55 of file CreateLeadHamiltonians.m.
|
protected |
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 number of the sites in the cross section.
Definition at line 46 of file CreateLeadHamiltonians.m.
|
protected |
A logical value. True if magnetic field was applied in the Hamiltonians, false otherwise.
Definition at line 124 of file CreateLeadHamiltonians.m.
|
protectedinherited |
An instance of structure Opt.
Definition at line 31 of file Messages.m.
|
protected |
A logical value. True if the overlap integrals were applied, false otherwise.
Definition at line 121 of file CreateLeadHamiltonians.m.
|
protected |
An instance of the structure param.
Definition at line 37 of file CreateLeadHamiltonians.m.
|
protected |
An instance of the structure lead_param.
Definition at line 49 of file CreateLeadHamiltonians.m.
|
protected |
The tranverse momentum for transverse computations.
Definition at line 52 of file CreateLeadHamiltonians.m.
|
protected |
The overlap integrals of a unit cell.
Definition at line 94 of file CreateLeadHamiltonians.m.
|
protected |
The overlap integrals between the unit cells.
Definition at line 97 of file CreateLeadHamiltonians.m.
|
protected |
The overlap integrals between the slabs for transverse calculations.
Definition at line 103 of file CreateLeadHamiltonians.m.
|
protected |
The adjungate of the overlap integrals between the unit cells.
Definition at line 100 of file CreateLeadHamiltonians.m.
|
protected |
list of optional parameters (see http://www.mathworks.com/help/matlab/ref/varargin.html for details)
Definition at line 130 of file CreateLeadHamiltonians.m.
1.8.16