A class to evaluate the Dyson equation and to calculate the scattering matrix for equilibrium processes.
More...
A class to evaluate the Dyson equation and to calculate the scattering matrix for equilibrium processes.
Definition at line 24 of file Transport_Interface.m.
◆ Transport_Interface()
Constructor of the class.
- Parameters
-
Opt | An instance of the structure Opt. |
param | An instance of the structure param. |
varargin | Cell array of optional parameters. For details see InputParsing. |
- Returns
- An instance of the class
◆ BadInputType()
static function Messages::BadInputType |
( |
variable |
, |
|
|
type |
|
|
) |
| |
|
staticinherited |
Throws a "bad input type" warning, with using the default value.
- Parameters
-
variable | A string conatining the name of the variable. |
type | A string describing the desired type. |
◆ BadInputTypeNoDefault()
static function Messages::BadInputTypeNoDefault |
( |
variable |
, |
|
|
type |
|
|
) |
| |
|
staticinherited |
Throws a "bad input type" warning without setting it to default.
- Parameters
-
variable | A string conatining the name of the variable. |
type | A string describing the desired type. |
◆ Clear()
function Transport_Interface::Clear |
( |
MemberName |
| ) |
|
Clears the value of an attribute in the class.
- Parameters
-
MemberName | The name of the attribute to be cleared. |
◆ Conductance2()
function Transport_Interface::Conductance2 |
( |
| ) |
|
Conductance calculated by Eq (19) in PRB 73 085414.
- Returns
- Returns with the calculated conductance.
◆ Conduktance()
function Transport_Interface::Conduktance |
( |
| ) |
|
Calculates the conductance matrix from the scattering matrix.
- Returns
- Returns with the calculated conductance matrix.
◆ CreateClone()
function Transport_Interface::CreateClone |
( |
| ) |
|
Creates a clone of the present class.
- Returns
- Returns with the cloned object.
◆ Determine_Open_Channels()
function Transport_Interface::Determine_Open_Channels |
( |
| ) |
|
Determines the open channels in the leads. The data are storen within the attribute open_channels.
◆ display()
function Messages::display |
( |
message |
, |
|
|
nosilent |
|
|
) |
| |
|
inherited |
Displays output messages on the screen.
- Parameters
-
message | String containing the message to be displayed |
nosilent | Set true to override the silent option given in Opt.Silent. |
◆ DysonEq()
Invokes the function handle of the Dyson equation, and stores the calculated values in attributes G and junction_sites.
- Parameters
-
- Returns
- [1] Returns with the calculated Green operator.
-
[2] With the attribute junction_sites.
◆ ExceedIteration()
static function Messages::ExceedIteration |
( |
| ) |
|
|
staticinherited |
Throws an "iteration exceeded" warning.
◆ Get_Neff()
function Transport_Interface::Get_Neff |
( |
| ) |
|
Gets the size of the effective Hamiltonians of the leads.
- Returns
- Returns with an array of integers;
◆ GetM()
◆ getOpt()
Retrives the structure containing the calculation parameters.
- Returns
- Return an instance of structure Opt.
◆ Initialize()
function Transport_Interface::Initialize |
( |
| ) |
|
|
protected |
Initializes object attributes.
◆ InputParsing()
Parses the optional parameters for the class constructor.
- Parameters
-
◆ LeadCalc()
Invokes the function SurfaceGreenFunctionCalculator for each lead.
- Parameters
-
varargin | Cell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'shiftLeads' | A real number. If given, the on-site potentials of the sites in the lead are shifted by this value. |
'transversepotential' | A function handle pot = f( #coordinates ) or pot=f( CreateLeadHamiltonians, Energy) of the transverse potential applied in the lead. (Instead of CreateLeadHamiltonians can be used its derived class) |
'coordinates_shift' | An integer. If given, the coordinates of the sites in the lead are shifted by coordinates_shift*lattice vector. |
'gauge_field' | Function handle S = f( x,y) of the gauge transformation on the Hamiltonians of the leads. (S is a N x 1 vector, where N is the number of the points given by the x and y coordinates.) |
'createCore' | Set 1 for creating the class instances Lead but omitting any further calculations, or false (default) to continue with the calculations. |
'SelfEnergy' | Logical value. Set true to calculate the self energies of the leads. (default is false) |
'SurfaceGreensFunction' | Logical value. Set true to calculate the surface Green functions of the leads. (default is true) |
'leads' | Array of lead identification numbers for which the calculations should be performed. (Default is a list of all leads) |
'leadmodel' | A function handle Lead=f( idx, E, varargin ) of the alternative lead model with equivalent inputs and return values as Transport_Interface.SurfaceGreenFunctionCalculator and with E standing for the energy. |
'CustomHamiltonian' | An instance of class Custom_Hamiltonians or its derived class to create custom Hamiltonians in the leads. |
'Just_Create_Hamiltonians' | Logical value. Set true to create the Hamiltonians of the leads, but stop further calculations. Default value is false. |
'q' | The tranverse momentum for transverse computations. |
- Returns
- Returns with an array of the created Lead instances.
◆ LeadSave()
function Transport_Interface::LeadSave |
( |
| ) |
|
Saves the Hamiltonians of each lead.
◆ Read()
function Transport_Interface::Read |
( |
MemberName |
| ) |
|
Query for the value of an attribute in the class.
- Parameters
-
MemberName | The name of the attribute. |
- Returns
- Returns with the value of the attribute.
◆ replaceLead()
function Transport_Interface::replaceLead |
( |
Lead_tmp |
, |
|
|
idx |
|
|
) |
| |
Adds/replaces a lead to/in the system.
- Parameters
-
◆ Reset()
Resets all elements in the class.
◆ ScatterCalc()
function Transport_Interface::ScatterCalc |
( |
| ) |
|
Calculates the effective (decimated) Hamiltonian of the scattering region. (Obsolete)
◆ setEnergy()
function Transport_Interface::setEnergy |
( |
Energy |
| ) |
|
Sets the energy to be used in the calculations and resets the calculated attributes.
- Parameters
-
◆ SmatrixCalc()
function Transport_Interface::SmatrixCalc |
( |
| ) |
|
Calculates the scattering matrix.
- Returns
- [1] The scattering matrix
-
[2] An array containing the number of openchannels in the leads. Obsolete, use attribute open_channels istead.
◆ SurfaceGreenFunctionCalculator()
Calculates the surface Green's function or the self energy of a Lead.
- Parameters
-
idx | the identification number of the lead in the attribute Leads (see attribute CreateLeadHamiltonians.Hanyadik_Lead). |
varargin | Cell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html): |
'shiftLeads' | A real number. If given, the on-site potentials of the sites in the lead are shifted by this value. |
'transversepotential' | A function handle pot = f( #coordinates ) or pot=f( CreateLeadHamiltonians, Energy) of the transverse potential applied in the lead. (Instead of CreateLeadHamiltonians can be used its derived class) |
'Lead' | An instance of class Lead (or its subclass) that is intended to be used in the calculations. |
'coordinates_shift' | An integer. If given, the coordinates of the sites in the lead are shifted by coordinates_shift*lattice vector. |
'gauge_field' | Function handle S = f( x,y) of the gauge transformation on the Hamiltonians of the leads. (S is a N x 1 vector, where N is the number of the points given by the x and y coordinates.) |
'createCore' | Set 1 for creating the class instances Lead but omitting any further calculations, or false (default) to continue with the calculations. |
'SelfEnergy' | Logical value. Set true to calculate the self energies of the leads. (default is false) |
'SurfaceGreensFunction' | Logical value. Set true to calculate the surface Green functions of the leads. (default is true) |
'leads' | Array of lead identification numbers for which the calculations should be performed. (Default is a list of all leads) |
'leadmodel' | A function handle Lead=f( idx, E, varargin ) of the alternative lead model with equivalent inputs and return values as Transport_Interface.SurfaceGreenFunctionCalculator and with E standing for the energy. |
'CustomHamiltonian' | An instance of class Custom_Hamiltonians or its derived class to create custom Hamiltonians in the leads. |
'Just_Create_Hamiltonians' | Logical value. Set true to create the Hamiltonians of the leads, but stop further calculations. Default value is false. |
'q' | The tranverse momentum for transverse computations. |
- Returns
- Returns with the created Lead instance.
◆ Write()
function Transport_Interface::Write |
( |
MemberName |
, |
|
|
input |
|
|
) |
| |
Sets the value of an attribute in the class.
- Parameters
-
MemberName | The name of the attribute to be set. |
input | The value to be set. |
◆ Conductance_Matrix
Property Transport_Interface::Conductance_Matrix |
|
protected |
◆ CreateH
Property Transport_Interface::CreateH |
|
protected |
◆ Dysonfunc
Property Transport_Interface::Dysonfunc |
|
protected |
Property Transport_Interface::E |
|
protected |
Property Transport_Interface::G |
|
protected |
◆ junction_sites
Property Transport_Interface::junction_sites |
|
protected |
◆ Leads
Property Transport_Interface::Leads |
|
protected |
◆ nyitott_csatornak
Property Transport_Interface::nyitott_csatornak |
|
protected |
◆ open_channels
Property Transport_Interface::open_channels |
|
protected |
◆ Opt
◆ param
Property Transport_Interface::param |
|
protected |
◆ PeierlsTransform
Property Transport_Interface::PeierlsTransform |
|
protected |
◆ Smatrix
Property Transport_Interface::Smatrix |
|
protected |
◆ varargin
Property Transport_Interface::varargin |
|
protected |
The documentation for this class was generated from the following file: