InterfaceRegion

  Copyright (C) 2016 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

A class describing the interface region between the scattering region and a lead.

Available

EQuUs v4.8 or later

Class references

Syntax

object = InterfaceRegion(Opt, param, varargin)

Parameters
Opt An instance of the structure Opt.
param An instance of structure param containing the physical parameters.
varargin Optional parameters given by a sequence ...'name', value,... . Possible parameters are identical to the optional parameters of class CreateLeadHamiltonians

Attributes

  • K00

    Effective Hamiltonian of the interface region
  • Kinterface

    Hinterface -E*Sinterface
  • Hinterface

    Hamiltonian of the interface region.
  • Kcoupling

    Hcoupling-E*Scoupling.
  • Kcouplingadj

    Hcouplingadj-E*Scoupling'.
  • Hcoupling

    Coupling Hamiltonian from the interface region to the scattering region.
  • Hcouplingadj

    Coupling Hamiltonian from the scattering region to the interface region.
  • Scoupling

    Overlap integrals corresponding to Hcoupling.
  • Sinterface

    Overlap integrals corresponding to Hinterface.
  • coordinates2

    Coordinates of the surface sites of the scattering region.

Methods (public)

InterfaceRegion::ApplyOverlapMatrices

Description

Applies the overlap matrices to the Hamiltonians: K = H-ES.

Syntax

object.ApplyOverlapMatrices()

Parameters
E The energy value in K=H-ES



InterfaceRegion::Transform2BdG

Description

Transforms the Hamiltonians and the overlap matrices into the BdG model.

Syntax

object.Transform2BdG()




InterfaceRegion::Calc_Effective_Hamiltonians

Description

Calculates the effective Hamiltonians according to Eq (48) of of PRB 78, 035407.

Syntax

object.Calc_Effective_Hamiltonians( E, varargin )

Parameters
E The energy value in K=H-ES
varargin Optional parameters given by a sequence ...'name', value,... . Possible parameters are:



InterfaceRegion::Get_Effective_Hamiltonians

Description

Gets the effective Hamiltonians of the interface region.

Syntax

[K0_eff, K1_eff, K1adj_eff, Kcoupling, Kcouplingadj] = object.Get_Effective_Hamiltonians( )

Return
K0_eff The effective Hamiltonian of the unit cell
K1_eff The effective coupling between the unit cells
K1adj_eff The adjungate of the effective coupling between the unit cells
Kcoupling The effective coupling between the lead and the scattering region
Kcouplingadj The adjungate of the effective coupling between the lead and the scattering region



InterfaceRegion::Unitary_Transform

Description

Transforms the effective Hamiltonians by a unitary transformation.

Syntax

object.Unitary_Transform( Umtx )

Parameters
Umtx The unitary matrix to be used in the transformations.



InterfaceRegion::SVD_transform

Description

Transforms the Hamiltonians of the interface region according to the SVD regularization in the lead.

Syntax

object.SVD_transform( Lead )

Parameters
Lead An instance of SVDregularizationLead (or its subclass) providing a source for the SVD matrices.



InterfaceRegion::Get_Neff

Description

Gets the effective number of sites after the elimination of the singular values.

Syntax

Neff = object.Get_Neff( )

Return
Neff Returns with the effective number of sites



InterfaceRegion::CreateClone

Description

Creates a clone of the present class.

Syntax

ret = object.CreateClone( )

Return
ret An instance of class InterfaceRegion



InterfaceRegion::Reset

Description

Resets all attributes in the class.

Syntax

object.Reset()




InterfaceRegion::Write

Description

Sets the value of an attribute in the class.

Syntax

object.Write(MemberName, input)

Parameters
MemberName The name of the attribute to be set.
input The value to be set.



InterfaceRegion::Read

Description

Query for the value of an attribute in the class.

Syntax

ret = object.Read(MemberName)

Parameters
MemberName The name of the attribute.

Return
ret The value of the attribute.



InterfaceRegion::Clear

Description

Clears the value of an attribute in the class.

Syntax

object.Clear(MemberName)

Parameters
MemberName The name of the attribute.