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 | Private Member Functions | Private Attributes
CombineRibbons Class Reference

An object for combining multiple ribbon parts of equal width and from the same material in a two terminal setup. More...

Inheritance diagram for CombineRibbons:
Inheritance graph
[legend]

Public Member Functions

function addRibbon (ribbon2add, varargin)
 Adds a Ribbon part to the system. More...
 
function ApplyPotentialInScatter (CreateH, scatterPotential)
 Applies the potential in the scattering region. More...
 
function CalcFiniteGreensFunction (varargin)
 Calculates the Green operator of the scattering region by the fast way (see PRB 90, 125428 (2014)). More...
 
function CalcFiniteGreensFunctionFromHamiltonian (varargin)
 Calculates the Green operator of the scattering region from the whole Hamiltonian. More...
 
function CalcSpectralFunction (Energy, varargin)
 Calculates the spectral density and the Green operator. More...
 
function CombineRibbons (varargin)
 Constructor of the class. More...
 
function CreateClone ()
 Creates a clone of the present object. More...
 
function CreateInterface (idx, varargin)
 Trukkos sajatertek. More...
 
function CreateInterface (idx)
 Creates the Hamiltonians for the interface regions between the leads and scattering center. More...
 
function CreateRibbon (varargin)
 apply magnetic field in scatter for finite q More...
 
function CreateScatter ()
 Initializes class CreateHamiltonians for storing and manipulate the Hamiltonian of the the scattering region. The created object is stored in attribute CreateH. More...
 
function CustomDysonFunc (varargin)
 Custom Dyson function for a two terminal arrangement on a two dimensional lattice. More...
 
function DecimationFunction (kulso_szabfokok, ginv, varargin)
 calculate the inverse Greens function 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 getCoordinates ()
 Gets the coordinates of the central region. More...
 
function getEnergy ()
 Retrives the energy value (attribute E) used in the calculations. More...
 
function getFermiEnergy ()
 Retrives the Fermi level (attribute EF) used in the calculations. More...
 
function GetFiniteGreensFunction ()
 Query fo the calculated Green operator of the scattering center. More...
 
function getOpt ()
 Retrives the structure containing the calculation parameters. More...
 
function getParam ()
 Retrives a copy of the structure param used in the current calculations. More...
 
function getProgramName ()
 Gets the name of the package. More...
 
function getProgramShortName ()
 Gets the short name of the package. More...
 
function getTotalHeight ()
 Gets the total height of the ribbon structure. More...
 
function getTransverseMomentum ()
 Retrives the value of the transverse momentum quantum number. More...
 
function getVersion ()
 Gets the current version of the package. More...
 
function IsDeployedMKL ()
 Checks whether the MKL component is deployed. More...
 
function partialInv (A, sizeInv)
 Calculates a partial inverse of a sparse matrix. More...
 
function setEnergy (Energy)
 Sets the energy for the calculations. More...
 
function setHandlesForMagneticField (varargin)
 Sets the function handles of the vector potential and gauge transformation. More...
 
function setInterfaceRegions (Interface_Regions)
 Replaces the attribute Interface_Region with the given value. More...
 
function setParam (param)
 cloning the individual attributes More...
 
function ShiftCoordinates (shift)
 Shifts the coordinates of the sites in the ribbon by an integer multiple of the lattice vector. More...
 
function Transport (Energy)
 Calculates the transport through the two terminal setup on two dimensional lattices. More...
 
function Transport (Energy, varargin)
 Calculates the transport through the two terminal setup on two dimensional lattices. 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...
 

Public Attributes

Property cCustom_Hamiltonians
 An instance of class Custom_Hamiltonians to load the Hamiltonians from external source. More...
 
Property CreateH
 An instance of class CreateHamiltonians or its subclass to manipulate the Hamiltonian of the scattering region. More...
 
Property filenameIn
 Input filename containing the computational parameters. (Obsolete) More...
 
Property filenameOut
 Output filename to export the computational parameters. More...
 
Property FL_handles
 An instance of class Transport_Interface (or its subclass) for transport calculations. More...
 
Property gauge_field
 Function handle S = f( x,y) of the gauge transformation in the scattering center. (S is a N x 1 vector, where N is the number of the points given by the x and y coordinates.) More...
 
Property height
 height (length) of the scattering region (number of unit cells) More...
 
Property Interface_Regions
 A cell array of classes InterfaceRegion to describe the interface region between the leads and the scattering region. More...
 
Property Interface_Regions_all
 the list of the interface regions between the ribbons (Surface_Green_function objects) More...
 
Property interfacemodel
 function handle for individual physical model of the interface regions More...
 
Property leadmodel
 function handle for individual physical model of the leads More...
 
Property PeierlsTransform_Leads
 An instance of class Peierls object to describe the peirls substitution in the leads. More...
 
Property PeierlsTransform_Scatter
 An instance of class Peierls object to describe the peirls substitution in the scattering region. More...
 
Property Ribbons
 the list of the ribbon interface to be combained (Ribbon objects) More...
 
Property Scatter_UC
 An instance of class Lead (or its subclass) describing the unit cell of the scattering region. More...
 
Property shift
 the shift of the coordinates of the sites (two component vector) More...
 
Property silent
 if true, no output messages are print More...
 
Property 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) More...
 
Property width
 width of the scattering region (number of the nonsingular atomic sites in the cross section) More...
 
Property WorkingDir
 A string of the working directory. More...
 

Protected Member Functions

function ApplyTransversePotential (Scatter_UC)
 applying transverse potential More...
 
function attachRibbon (ribbon_tmp, varargin)
 Attach the next ribbon to the ribbon sequence for the calculation of the surface Greens function. More...
 
function calculate_lead_attach_points ()
 Determines the site indexes at which the leads are connected to the scattering center. More...
 
function checkwidth (ribbon_tmp)
 Checks the width of the added ribbon. More...
 
function CreateHandles ()
 Initializes the attributes of the class. More...
 
function createInterfaceRegions ()
 Creates instances of class Surface_Green_function describing an interface region between the leads and the ribbon parts. The created interface is stored within the attribute Interface_Regions_all. More...
 
function CreateNTerminalHamiltonians ()
 calculating the potential if the scattering potential has one input arguments obtaining coordinates of the scattering region More...
 
function createShape ()
 Creates the geometry data of the ribbon shaped scattering region. More...
 
function createSurface_sc (idx)
 Creates the copuling Hamiltonians between the scattering and interface region. More...
 
function getHeights ()
 Returns an array of the heights of the ribbon parts. More...
 
function setFermiEnergy ()
 Sets the Fermi energy on the atomic sites for the calculations (use the same units as the elements of the Hamiltonian). More...
 

Protected Attributes

Property CustomHamiltoniansHandle
 Function handle to create custom Hamiltonians. Has the same inputs ans outputs as Custom_Hamiltonians.LoadHamiltonians. More...
 
Property DeployedMKL
 True if MKL component is built, false otherwise. More...
 
Property E
 The energy used in the calculations. More...
 
Property EF
 The Fermi energy. Attribute E is measured from this value. (Use for equilibrium calculations in the zero temperature limit.) More...
 
Property G
 Green operator of the scattering region. More...
 
Property Ginv
 The inverse of the Green operator G. More...
 
Property MaxSize
 Maximal size of full matrixes to be handled. More...
 
Property Opt
 An instance of structure Opt. More...
 
Property param
 An instance of strucutre param. More...
 
Property ProgramName
 Name of the package. More...
 
Property ProgramShortName
 Short name of the package. More...
 
Property q
 The transverse momentum quantum number. More...
 
Property version
 The current version of the package. More...
 

Private Member Functions

function InputParsing (varargin)
 Parses the optional parameters for the class constructor. More...
 

Private Attributes

Property coordinates
 An instance of structure coordinates. More...
 

Detailed Description

An object for combining multiple ribbon parts of equal width and from the same material in a two terminal setup.

Definition at line 20 of file CombineRibbons.m.

Constructor & Destructor Documentation

◆ CombineRibbons()

function CombineRibbons::CombineRibbons ( varargin  )

Constructor of the class.

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

Member Function Documentation

◆ addRibbon()

function CombineRibbons::addRibbon ( ribbon2add  ,
varargin   
)

Adds a Ribbon part to the system.

Parameters
ribbon2addAn instance of the ribbon class.
vararginCell array of optional parameters:.

◆ ApplyPotentialInScatter()

function NTerminal::ApplyPotentialInScatter ( CreateH  ,
scatterPotential   
)
inherited

Applies the potential in the scattering region.

Parameters
CreateHAn instance of class CreateHamiltonians containing the Hamiltonian of the scattering center.
scatterPotentialA function handle pot=f( coordinates ) or pot=f( CreateHamiltonians, Energy) for the potential to be applied in the Hamiltonian (used when FiniteGreensFunctionFromHamiltonian=true).

◆ ApplyTransversePotential()

function Ribbon::ApplyTransversePotential ( Scatter_UC  )
protectedinherited

applying transverse potential

applying magnetic field In superconducting lead one must not include nonzero magnetic field. Hamiltonians in transverse computations must remain traslational invariant. Apply the tranvesre potential in the Hamiltonians

Parameters
Scatter_UCAn instance of class Lead containing the Hamiltonians.

◆ attachRibbon()

function CombineRibbons::attachRibbon ( ribbon_tmp  ,
varargin   
)
protected

Attach the next ribbon to the ribbon sequence for the calculation of the surface Greens function.

Parameters
ribbon_tmpAn instance of the ribbon class.
vararginCell array of optional parameters:.

◆ BadInputType()

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()

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.

◆ CalcFiniteGreensFunction()

function CombineRibbons::CalcFiniteGreensFunction ( varargin  )

Calculates the Green operator of the scattering region by the fast way (see PRB 90, 125428 (2014)).

Parameters
vararginCell array of optional parameters:.

◆ CalcFiniteGreensFunctionFromHamiltonian()

function CombineRibbons::CalcFiniteGreensFunctionFromHamiltonian ( varargin  )

Calculates the Green operator of the scattering region from the whole Hamiltonian.

Parameters
vararginCell array of optional parameters:.

◆ CalcSpectralFunction()

function NTerminal::CalcSpectralFunction ( Energy  ,
varargin   
)
inherited

Calculates the spectral density and the Green operator.

Parameters
EnergyThe energy value.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'constant_channels'Logical value. Set true (default) to keep constant the number of the open channels in the leads for each energy value, or false otherwise.
'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).
'decimateDyson'Logical value. Set true (default) to decimate the sites of the scattering region in the Dyson equation.
'PotInScatter'Obsolete parameter. Use 'scatterPotential' instead.
'scatterPotential'A function handle pot=f( coordinates ) or pot=f( CreateHamiltonians, Energy) for the potential to be applied in the Hamiltonian (used when FiniteGreensFunctionFromHamiltonian=true).
'selfEnergy'Logical value. Set true to use the self energies of the leads in the Dyson equation, or false (default) to use the surface Green function instead.
Returns
[1] The spectral density.
[2] The Green operator.

◆ calculate_lead_attach_points()

function Ribbon::calculate_lead_attach_points ( )
protectedinherited

Determines the site indexes at which the leads are connected to the scattering center.

◆ checkMEXfile()

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.

◆ checkwidth()

function CombineRibbons::checkwidth ( ribbon_tmp  )
protected

Checks the width of the added ribbon.

Parameters
ribbon_tmpAn instance of class Ribbon
Returns
Returns with true if the width of the added ribbon is consitent with the previous ones.

◆ CreateClone()

function CombineRibbons::CreateClone ( )

Creates a clone of the present object.

Returns
Returns with the cloned object.

◆ CreateHandles()

function Ribbon::CreateHandles ( )
protectedinherited

Initializes the attributes of the class.

◆ CreateInterface() [1/2]

function Ribbon::CreateInterface ( idx  ,
varargin   
)
inherited

Trukkos sajatertek.

group velocity Creates the Hamiltonians for the interface regions between the leads and scattering center.

Parameters
idxIdentification number of the interface region.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'UseHamiltonian'Logical value. Set true if the interface region should be created to match to the whole Hamiltonian of the scattering center, false (default) if only the surface Green operator of the scattering center is used in the calculations.

◆ CreateInterface() [2/2]

function NTerminal::CreateInterface ( idx  )
inherited

Creates the Hamiltonians for the interface regions between the leads and scattering center.

Parameters
idxIdentification number of the interface region.

◆ createInterfaceRegions()

function CombineRibbons::createInterfaceRegions ( )
protected

Creates instances of class Surface_Green_function describing an interface region between the leads and the ribbon parts. The created interface is stored within the attribute Interface_Regions_all.

◆ CreateNTerminalHamiltonians()

function NTerminal::CreateNTerminalHamiltonians ( )
protectedinherited

calculating the potential if the scattering potential has one input arguments obtaining coordinates of the scattering region

calculating the potential from the coordinates calculating the potential if the scattering potential has two input arguments obtaining coordinates of the scattering region that might have been changed inside the scatterPotential function Extracts the Hamiltonians from the external source.

◆ CreateRibbon()

function Ribbon::CreateRibbon ( varargin  )
inherited

apply magnetic field in scatter for finite q

apply custom potential in the scattering center gauge transformation of the vector potential in the effective Hamiltonians gauge transformation on the inverse Green's function Creates the Hamiltonians for the ribbon shaped scattering region.

Parameters
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'justHamiltonians'Logical value. Set true to create the Hamiltonian of the unit cell without performing any further calculations. (default value is 'false')

◆ CreateScatter()

function Ribbon::CreateScatter ( )
inherited

Initializes class CreateHamiltonians for storing and manipulate the Hamiltonian of the the scattering region. The created object is stored in attribute CreateH.

◆ createShape()

function Ribbon::createShape ( )
protectedinherited

Creates the geometry data of the ribbon shaped scattering region.

◆ createSurface_sc()

function Ribbon::createSurface_sc ( idx  )
protectedinherited

Creates the copuling Hamiltonians between the scattering and interface region.

Parameters
idxThe identification number of the interface region. (Integer value.)
Returns
An instance of class Lead describing the copuling between the scattering and interface region

◆ CustomDysonFunc()

function Ribbon::CustomDysonFunc ( varargin  )
inherited

Custom Dyson function for a two terminal arrangement on a two dimensional lattice.

Parameters
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'gfininv'The inverse of the Greens function of the scattering region. For default the inverse of the attribute G is used.
'constant_channels'Logical value. Set true (default) to keep constant the number of the open channels in the leads for each energy value, or false otherwise.
'onlyGinverz'Logical value. Set true to calculate only the inverse of the total Green operator, or false (default) to calculate G as well.
'recalculateSurface'A vector of the identification numbers of the lead surfaces to be recalculated.
'decimate'Logical value. Set true (default) to eliminate all inner sites in the Greens function and keep only the selected sites. Set false to omit the decimation procedure.
'kulso_szabfokok'Array of sites to be kept after the decimation procedure. (Use parameter 'keep_sites' instead)
'selfEnergy'Logical value. Set true to use the self energies of the leads in the Dyson equation, or false (default) to use the surface Green function instead.
'keep_sites'Name of sites to be kept in the resulted Green function (Possible values are: 'scatter', 'interface', 'lead').
'UseHamiltonian'Set true if the interface region is matched to the whole Hamiltonian of the scattering center, or false (default) if the surface Green operator of the scattering center is used in the calculations.
Returns
[1] The calculated Greens function.
[2] The inverse of the Green operator.
[3] An instance of structure junction_sites describing the sites in the calculated Green operator.

◆ DecimationFunction()

function NTerminal::DecimationFunction ( kulso_szabfokok  ,
ginv  ,
varargin   
)
inherited

calculate the inverse Greens function

getting dimensions Performs the decimation procedure on the inverse Green operator.

Parameters
kulso_szabfokokArray of sites to be kept after the decimation.
ginvThe inverse of the Green operator.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'coordinates'An instance of the structure coordinates containing the coordinates of the sites.
Returns
[1] The matrix of the decimated inverse Greens operator.
[2] An instance of structure coordinates containing the sites remained after the decimation.

◆ diagInv()

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

◆ display()

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.

◆ eig()

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()

static function Messages::ExceedIteration ( )
staticinherited

Throws an "iteration exceeded" warning.

◆ getCoordinates()

function CombineRibbons::getCoordinates ( )

Gets the coordinates of the central region.

Returns
coordinates Coordinates of the surface sites of the central region.
coordinates_interface Coordinates of the interface region.

◆ getEnergy()

function NTerminal::getEnergy ( )
inherited

Retrives the energy value (attribute E) used in the calculations.

Returns
The energy value

◆ getFermiEnergy()

function NTerminal::getFermiEnergy ( )
inherited

Retrives the Fermi level (attribute EF) used in the calculations.

Returns
The Femi level

◆ GetFiniteGreensFunction()

function NTerminal::GetFiniteGreensFunction ( )
inherited

Query fo the calculated Green operator of the scattering center.

Returns
[1] The Green operator.
[2] The inverse Green operator.

◆ getHeights()

function CombineRibbons::getHeights ( )
protected

Returns an array of the heights of the ribbon parts.

Returns
Returns Returns an array of the heights of the ribbon parts.

◆ getOpt()

function Messages::getOpt ( )
inherited

Retrives the structure containing the calculation parameters.

Returns
Return an instance of structure Opt.

◆ getParam()

function NTerminal::getParam ( )
inherited

Retrives a copy of the structure param used in the current calculations.

Returns
param An instance of structure param.

◆ getProgramName()

function CommonFunctions::getProgramName ( )
inherited

Gets the name of the package.

Returns
Returns the name of the package.

◆ getProgramShortName()

function CommonFunctions::getProgramShortName ( )
inherited

Gets the short name of the package.

Returns
Returns the short name of the package.

◆ getTotalHeight()

function CombineRibbons::getTotalHeight ( )

Gets the total height of the ribbon structure.

Returns
Returns with the total height (length) of the scattering region in units of the lattice vector.

◆ getTransverseMomentum()

function NTerminal::getTransverseMomentum ( )
inherited

Retrives the value of the transverse momentum quantum number.

Returns
q The transverse momentum quantum number.

◆ getVersion()

function CommonFunctions::getVersion ( )
inherited

Gets the current version of the package.

Returns
Returns the current version of the package.

◆ InputParsing()

function CombineRibbons::InputParsing ( varargin  )
private

Parses the optional parameters for the class constructor.

Parameters
vararginCell array of optional parameters:
'Ribbons'Cell array of classes Ribbon to be combined.

◆ inv_SVD()

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()

function CommonFunctions::IsDeployedMKL ( )
inherited

Checks whether the MKL component is deployed.

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

◆ isOctave()

static function CommonFunctions::isOctave ( )
staticinherited

Checks whether the running environment is matlab or octave.

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

◆ partialInv()

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

◆ setEnergy()

function CombineRibbons::setEnergy ( Energy  )

Sets the energy for the calculations.

Parameters
EnergyThe value of the energy in the same units as the Hamiltonian.

◆ setFermiEnergy()

function Ribbon::setFermiEnergy ( )
protectedinherited

Sets the Fermi energy on the atomic sites for the calculations (use the same units as the elements of the Hamiltonian).

◆ setHandlesForMagneticField()

function CombineRibbons::setHandlesForMagneticField ( varargin  )

Sets the function handles of the vector potential and gauge transformation.

Parameters
vararginCell array of optional parameters:. %

◆ setInterfaceRegions()

function NTerminal::setInterfaceRegions ( Interface_Regions  )
inherited

Replaces the attribute Interface_Region with the given value.

Parameters
Interface_RegionsA two component array of classes InterfaceRegion

◆ setParam()

function NTerminal::setParam ( param  )
inherited

cloning the individual attributes

setting the gauge field Sets the structure param in the attributes.

Parameters
paramAn instance of structure param.

◆ ShiftCoordinates()

function Ribbon::ShiftCoordinates ( shift  )
inherited

Shifts the coordinates of the sites in the ribbon by an integer multiple of the lattice vector.

The coordinates of the Leads are automatically adjusted later

Parameters
shiftAn integer value.

◆ SimphsonInt()

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.

◆ Transport() [1/2]

function CombineRibbons::Transport ( Energy  )

Calculates the transport through the two terminal setup on two dimensional lattices.

Use for development pupose only.

Parameters
EnergyThe energy value.
vararginCell array of optional parameters:.
Returns
Conductance The conductance tensor
ny Array of the open channel in the leads.
DeltaC Error of the unitarity.
S The scattering matrix.

◆ Transport() [2/2]

function Ribbon::Transport ( Energy  ,
varargin   
)
inherited

Calculates the transport through the two terminal setup on two dimensional lattices.

Use for development pupose only.

Parameters
EnergyThe energy value.
vararginCell array of optional parameters (https://www.mathworks.com/help/matlab/ref/varargin.html):
'constant_channels'Logical value. Set true (default) to keep constant the number of the open channels in the leads for each energy value, or false otherwise.
'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).
'decimateDyson'Logical value. Set true (default) to decimate the sites of the scattering region in the Dyson equation.
'PotInScatter'Obsolete parameter. Use 'scatterPotential' instead.
'scatterPotential'A function handle pot=f( coordinates ) or pot=f( CreateHamiltonians, Energy) for the potential to be applied in the Hamiltonian (used when FiniteGreensFunctionFromHamiltonian=true).
'selfEnergy'Logical value. Set true to use the self energies of the leads in the Dyson equation, or false (default) to use the surface Green function instead.
'Smatrix'Set true (default) to calculate the conductance by using the scattering matrix via Transport_Interface.Conduktance, or false to use function Transport_Interface.Conductance2. (The latter one also works with complex energies.)
Returns
[1] Conductivity The calculated conductivity.
[2] aspect_ratio The aspect ratio W/L of the junction.
[3] Conductance The conductance tensor
[4] ny Array of the open channel in the leads.
[5] DeltaC Error of the unitarity.
[6] S The scattering matrix.

◆ xmlread()

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()

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

◆ cCustom_Hamiltonians

Property NTerminal::cCustom_Hamiltonians
inherited

An instance of class Custom_Hamiltonians to load the Hamiltonians from external source.

Definition at line 104 of file NTerminal.m.

◆ coordinates

Property CombineRibbons::coordinates
private

An instance of structure coordinates.

Definition at line 27 of file CombineRibbons.m.

◆ CreateH

Property NTerminal::CreateH
inherited

An instance of class CreateHamiltonians or its subclass to manipulate the Hamiltonian of the scattering region.

Definition at line 71 of file NTerminal.m.

◆ CustomHamiltoniansHandle

Property NTerminal::CustomHamiltoniansHandle
protectedinherited

Function handle to create custom Hamiltonians. Has the same inputs ans outputs as Custom_Hamiltonians.LoadHamiltonians.

Definition at line 64 of file NTerminal.m.

◆ DeployedMKL

Property CommonFunctions::DeployedMKL
protectedinherited

True if MKL component is built, false otherwise.

Definition at line 32 of file CommonFunctions.m.

◆ E

Property NTerminal::E
protectedinherited

The energy used in the calculations.

Definition at line 55 of file NTerminal.m.

◆ EF

Property NTerminal::EF
protectedinherited

The Fermi energy. Attribute E is measured from this value. (Use for equilibrium calculations in the zero temperature limit.)

Definition at line 58 of file NTerminal.m.

◆ filenameIn

Property NTerminal::filenameIn
inherited

Input filename containing the computational parameters. (Obsolete)

Definition at line 95 of file NTerminal.m.

◆ filenameOut

Property NTerminal::filenameOut
inherited

Output filename to export the computational parameters.

Definition at line 98 of file NTerminal.m.

◆ FL_handles

Property NTerminal::FL_handles
inherited

An instance of class Transport_Interface (or its subclass) for transport calculations.

Definition at line 74 of file NTerminal.m.

◆ G

Property NTerminal::G
protectedinherited

Green operator of the scattering region.

Definition at line 49 of file NTerminal.m.

◆ gauge_field

Property NTerminal::gauge_field
inherited

Function handle S = f( x,y) of the gauge transformation in the scattering center. (S is a N x 1 vector, where N is the number of the points given by the x and y coordinates.)

Definition at line 86 of file NTerminal.m.

◆ Ginv

Property NTerminal::Ginv
protectedinherited

The inverse of the Green operator G.

Definition at line 52 of file NTerminal.m.

◆ height

Property Ribbon::height
inherited

height (length) of the scattering region (number of unit cells)

Definition at line 51 of file Ribbon.m.

◆ Interface_Regions

Property NTerminal::Interface_Regions
inherited

A cell array of classes InterfaceRegion to describe the interface region between the leads and the scattering region.

Definition at line 77 of file NTerminal.m.

◆ Interface_Regions_all

Property CombineRibbons::Interface_Regions_all

the list of the interface regions between the ribbons (Surface_Green_function objects)

Definition at line 37 of file CombineRibbons.m.

◆ interfacemodel

Property NTerminal::interfacemodel
inherited

function handle for individual physical model of the interface regions

Definition at line 92 of file NTerminal.m.

◆ leadmodel

Property NTerminal::leadmodel
inherited

function handle for individual physical model of the leads

Definition at line 89 of file NTerminal.m.

◆ MaxSize

Property CommonFunctions::MaxSize
protectedinherited

Maximal size of full matrixes to be handled.

Definition at line 44 of file CommonFunctions.m.

◆ Opt

Property Messages::Opt
protectedinherited

An instance of structure Opt.

Definition at line 31 of file Messages.m.

◆ param

Property NTerminal::param
protectedinherited

An instance of strucutre param.

Definition at line 46 of file NTerminal.m.

◆ PeierlsTransform_Leads

Property NTerminal::PeierlsTransform_Leads
inherited

An instance of class Peierls object to describe the peirls substitution in the leads.

Definition at line 83 of file NTerminal.m.

◆ PeierlsTransform_Scatter

Property NTerminal::PeierlsTransform_Scatter
inherited

An instance of class Peierls object to describe the peirls substitution in the scattering region.

Definition at line 80 of file NTerminal.m.

◆ ProgramName

Property CommonFunctions::ProgramName
protectedinherited

Name of the package.

Definition at line 38 of file CommonFunctions.m.

◆ ProgramShortName

Property CommonFunctions::ProgramShortName
protectedinherited

Short name of the package.

Definition at line 41 of file CommonFunctions.m.

◆ q

Property NTerminal::q
protectedinherited

The transverse momentum quantum number.

Definition at line 61 of file NTerminal.m.

◆ Ribbons

Property CombineRibbons::Ribbons

the list of the ribbon interface to be combained (Ribbon objects)

Definition at line 34 of file CombineRibbons.m.

◆ Scatter_UC

Property Ribbon::Scatter_UC
inherited

An instance of class Lead (or its subclass) describing the unit cell of the scattering region.

Definition at line 42 of file Ribbon.m.

◆ shift

Property Ribbon::shift
inherited

the shift of the coordinates of the sites (two component vector)

Definition at line 54 of file Ribbon.m.

◆ silent

Property NTerminal::silent
inherited

if true, no output messages are print

Definition at line 107 of file NTerminal.m.

◆ transversepotential

Property Ribbon::transversepotential
inherited

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)

Definition at line 45 of file Ribbon.m.

◆ version

Property CommonFunctions::version
protectedinherited

The current version of the package.

Definition at line 35 of file CommonFunctions.m.

◆ width

Property Ribbon::width
inherited

width of the scattering region (number of the nonsingular atomic sites in the cross section)

Definition at line 48 of file Ribbon.m.

◆ WorkingDir

Property NTerminal::WorkingDir
inherited

A string of the working directory.

Definition at line 101 of file NTerminal.m.


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