Favago Transport Programming Interface

Introduction

Interfaces

root/

root/utils

Data structures

Examples







CombineRibbons

  Copyright (C) 2009-2015 Peter Rakyta, Ph.D.
  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.
  You should have received a copy of the GNU General Public License
  along with this program.  If not, see http://www.gnu.org/licenses/.

Description

Returns an interface to combine multiple ribbons of equal width from the same material.

Syntax

interface = CombineRibbons(varargin)

Parameters
varargin Optional parameters given by a sequence ...'name', value,... . Possible parameter names are the following:
  • filenameIn

    Input filename for the xml input structure.
  • filenameOut

    Output filename for the xml input structure.
  • E

    The energy used in the calculations.
  • EF

    The Fermi energy in eV.
  • Ribbons

    The list of interface Ribbon instances to be combined.
  • silent

    Set true for suppress the displaying of the output messages.

Attributes

  • WS

    An instance of the class handle ws_CombineRibbons.
  • ribbon

    An instance of the interface Ribbon to be used in transport calculations through the combined ribbon structure.
  • WS_ribbon

    An instance of the class handle ws_Ribbon related to the attribute ribbon.
  • gfin

    The surface Greens function of the combined ribbons.
  • gfininv

    The inverse of the surface Greens function of the combined ribbons.
  • coordinates

    An instance of the structure coordinates containing the coordinates of the surface sites of the combined ribbon structure.
  • CommonFunctionsHandle

    An instance of the interface CommonFunctions.

Methods

CombineRibbons::Transport

Calculates the conductance through the combined ribbon strucutre. Use for development purpose only.

Syntax

[Conductance,ny,DeltaC] = interface.Transport(Energy)

Parameters
Energy The energy to be used in the calculations.

Return
Conductance The calculated conductance in the units of $$2h/e$$.
ny The number of the open channels in the leads.
DeltaC The standard deviation of the calculated transmission probabilities.






CombineRibbons::create_combined_GreensFunction

Calculates the surface Greens function of the combined ribbon structure. The calculated surface Greens function or the inverse of the Greens function are stored in the attributes gfin and gfininv, respectively.

Syntax

interface.create_combined_GreensFunction( varargin )

Parameters
varargin Optional parameters given by a sequence ...'name', value,... . Possible parameter names are the following:
  • E

    The energy to be used in the calculations. If not given, then the previously set energy is used in the calculations.
  • onlygfininverz

    Logical value. Set true to calculate only the inverse of the surface Greens function gfininv, or false (default) to calculate gfin as well. In the latter case the attribute gfininv is set to empty at the end.






CombineRibbons::addRibbon

Use this function to add another ribbon to the combined ribbon structure.

Syntax

interface.addRibbon( ribbon2add, varargin )

Parameters
ribbon2add An instance of the interface Ribbon to be added to the ribbon structure.
varargin Optional parameters given by a sequence ...'name', value,... . Possible parameter names are the following:
  • shiftcoordinates

    Logical value. Set true (default) to automatically shift the coordinates of the interface ribbon2add to match the corrdinates of the ribbon interfaces listed in the attribute Ribbons.






CombineRibbons::getGfininv

Reads out the attribute gfininv.

Syntax

ret = interface.getGfininv( )

Return
ret The inverse Greens function gfininv.






CombineRibbons::getTotalHeight

Calculates the total height of the combined ribbon structure, including the interface regions between the ribbons.

Syntax

ret = interface.getTotalHeight()

Return
ret The total height (in units of the 1D lattice vector) of the combined ribbon structure.






CombineRibbons::getHeights

Returns a vector containing the individual heights of the ribbons in the structure (without the interface regions between them).

Syntax

ret = interface.getHeights( )

Return
ret The vector containing the individual heights of the ribbons in the structure.






CombineRibbons::setHandlesForMagneticField

Sets the function handles of the vector potentials and gauge fields for applying the magnetic field in the ribbon interfaces listed in the attribute Ribbons.

Syntax

interface.setHandlesForMagneticField( vavargin )

Parameters
varargin Optional parameters given by a sequence ...'name', value,... . Possible parameter names are the following:
  • scatter

    Function handle of the vector potential to be used in the scattering region.
  • lead

    Function handle of the vector potential to be used in the leads.
  • gauge_field

    Function handle of the gauge transformation.






CombineRibbons::GetWorkspace

Return the handle class ws_ribbon of the workspace of the interface Ribbon. Changes in fields of the workspace are not always safe, since the reinitialization of the interface is not performed.

Syntax

interface.GetWorkspace( )

Return
ret An instance of handle class ws_ribbon.