antidot
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 perform transport calculations on an antidot (i.e., a hollow in a ribbon).
Syntax
interface = antidot(varargin)
Parameters |
varargin
|
Optional parameters given by a sequence ...'name', value,... . Possible parameter names are the following:
width Integer. Gives the number of the atomic sites in the cross section of the ribbon.
height Integer. Gives the height of the ribbon in units of the lattice vector.
B The strength of the magnetic field in the units of Tesla.
hole An instance of structure hole.
scatterers An instance of structure scatterers.
radius The radius of the hole in units of lattice constant. (Obsolete)
PNpotential The height of the pn potential across the ribbon.
PNeta The width of the pn potential step in units of the total width of the ribbon. ($$0 less PNeta less 1$$)
filenameIn Input filename for the xml input structure.
filenameOut Output filename for the xml input structure.
silent Set true for suppress the displaying of the output messages.
|
Attributes
Exported interfaces
Methods
antidot::Transport
Calculates the conductance of an antidot connected to the leads in the "contact/scattering center/contact" arrangement.
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.
|
antidot::CalcWavefnc
Calculates the energies and wave functions of the bound states for antidot and dot systems.
Syntax
ret = interface.CalcWavefnc(Energy, closefigure, varargin)
Parameters |
Energy
|
The energy to be used in the calculations.
|
closefigure
|
If true, the created figure is closed at the end of the calculations.
|
varargin
|
Optional parameters given by a sequance ...'name', value,... . Possible parameters are the following:
toPlot Set true (default) for plotting the wave function, or false otherwise.
Einhomegac Set true if the Energy is given in units of $$\hbar\omega_c$$, or false (default) otherwise.
filterHole Set true (default) for separating antidot bound states from the edge states, or false otherwise.
db The number of the calculated energy eigenvalues. Default is $$db=30$$.
infinitemass Set true for using the infinite mass boundary condition, or false (default) otherwise.
dotCalc Set true for a dot, or false (default) otherwise.
delta Every $$db$$th point of the wave function becomes plotted. Default is $$db=4$$.
smoothedge Set true for using a smooth edge in the calculations, or false (default) otherwise.
|
Return |
ret
|
A structure containing the calculated results. The fields of the structure are the following:
eigvals The list of the calculated energy eigenvalues.
eigvecs The list of the calculated wave functions.
xcoords The meshgrid of the $$x$$ coordinates.
ycoords The meshgrid of the $$y$$ coordinates.
|
antidot::create_hole_Hamiltonian
Creates the Hamiltonian for the antidot/dot.
Syntax
[Hscatter, wavefunction_indexes] = interface.create_hole_Hamiltonian( varargin )
Parameters |
varargin
|
Optional parameters given by a sequance ...'name', value,... . Possible parameters are the following:
infinitemass Set true for using the infinite mass boundary condition, or false (default) otherwise.
dotCalc Set true for a dot, or false (default) otherwise.
smoothedge Set true for using a smooth edge in the calculations, or false (default) otherwise.
|
Return |
Hscatter
|
The matrix representation of the created Hamiltonian.
|
wavefunction_indexes
|
The list of the sites included in the antidot/dot system.
|
antidot::CreateHandlesForMagneticField
Creates function handles of the vector potentials and apply the magnetic filed in the ribbon Hamiltonians.
Syntax
interface.CreateHandlesForMagneticField()
antidot::getHolePoints
Determines the sites that should be cut off from the ribbon in order to create the hole. The hole_edge_points attribute hole_edge_points is also set to the calculated output.
Syntax
hole_edge_points = interface.getHolePoints()
Return |
hole_edge_points
|
A matrix with culomns $$z$$ (slab index), $$zpoints_min$$, $$zpoints_max$$ (lower and upper bounds of the sites in the slab $$z$$).
|
antidot::create_scatter_GreensFunction
Calculates the surface Greens function of the antidot. Sets the attributes gfin and gfininv to the calculated results.
Syntax
interface.create_scatter_GreensFunction()
antidot::GetWorkspace
Return a class handle ws_antidot of the workspace of the interface antidot. 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 class handle ws_antidot.
|
|