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/.
A class describing the interface region between the scattering region and a lead.
EQuUs v4.8 or later
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 |
- Effective Hamiltonian of the interface region
- Hinterface -E*Sinterface
- Hamiltonian of the interface region.
- Hcoupling-E*Scoupling.
- Hcouplingadj-E*Scoupling'.
- Coupling Hamiltonian from the interface region to the scattering region.
- Coupling Hamiltonian from the scattering region to the interface region.
- Overlap integrals corresponding to Hcoupling.
- Overlap integrals corresponding to Hinterface.
- Coordinates of the surface sites of the scattering region.
- ApplyOverlapMatrices
- Transform2BdG
- Calc_Effective_Hamiltonians
- Get_Effective_Hamiltonians
- Unitary_Transform
- SVD_transform
- Decimate_Hamiltonians
- Get_Neff
- CreateClone
- Reset
- Write
- Read
- Clear
InterfaceRegion::ApplyOverlapMatrices
Applies the overlap matrices to the Hamiltonians: K = H-ES.
object.ApplyOverlapMatrices()
Parameters | |
---|---|
E | The energy value in K=H-ES |
InterfaceRegion::Transform2BdG
Transforms the Hamiltonians and the overlap matrices into the BdG model.
object.Transform2BdG()
InterfaceRegion::Calc_Effective_Hamiltonians
Calculates the effective Hamiltonians according to Eq (48) of of PRB 78, 035407.
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
Gets the effective Hamiltonians of the interface region.
[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
Transforms the effective Hamiltonians by a unitary transformation.
object.Unitary_Transform( Umtx )
Parameters | |
---|---|
Umtx | The unitary matrix to be used in the transformations. |
InterfaceRegion::SVD_transform
Transforms the Hamiltonians of the interface region according to the SVD regularization in the lead.
object.SVD_transform( Lead )
Parameters | |
---|---|
Lead | An instance of SVDregularizationLead (or its subclass) providing a source for the SVD matrices. |
InterfaceRegion::Get_Neff
Gets the effective number of sites after the elimination of the singular values.
Neff = object.Get_Neff( )
Return | |
---|---|
Neff | Returns with the effective number of sites |
InterfaceRegion::CreateClone
Creates a clone of the present class.
ret = object.CreateClone( )
Return | |
---|---|
ret | An instance of class InterfaceRegion |
InterfaceRegion::Reset
Resets all attributes in the class.
object.Reset()
InterfaceRegion::Write
Sets the value of an attribute in the class.
object.Write(MemberName, input)
Parameters | |
---|---|
MemberName | The name of the attribute to be set. |
input | The value to be set. |
InterfaceRegion::Read
Query for the value of an attribute in the class.
ret = object.Read(MemberName)
Parameters | |
---|---|
MemberName | The name of the attribute. |
Return | |
---|---|
ret | The value of the attribute. |
InterfaceRegion::Clear
Clears the value of an attribute in the class.
object.Clear(MemberName)
Parameters | |
---|---|
MemberName | The name of the attribute. |
- Log in to post comments