2 % Copyright (C) 2018 Peter Rakyta, Ph.D.
4 % This program is free software: you can redistribute it and/or modify
5 % it under the terms of the GNU General Public License as published by
6 % the Free Software Foundation, either version 3 of the License, or
7 % (at your option) any later version.
9 % This program is distributed in the hope that it will be useful,
10 % but WITHOUT ANY WARRANTY; without even the implied warranty of
11 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 % GNU General Public License
for more details.
14 % You should have received a copy of the GNU General Public License
15 % along with
this program. If not, see http:
20 %> @brief Base
class to construct a structure containing physical parameters of the scattering region
for DFT calculations.
22 %> @brief Base
class to construct a structure containing physical parameters of the scattering region for DFT calculations.
24 %> EQuUs v4.9.145 or later
29 %> The superconducting pair potential
31 %> An instance of structure @
shape describing the geometry of the scattering region.
33 %> String containing the filename of the external Hamiltonain source (see
Custom_Hamiltonians for details)
35 %> Cell array of structure @
Atom.
37 %> Fermi energy from the calculation that gave us the Hamiltonian (e.g.: DFT)
39 %> Number of the element in the periodic table
41 %> The chemical symbol of the atom
43 %> Lattice vectors of the bulk structure if it is one
45 %> The number of spins in the representations:
46 %Non Spinpolarized = 1
47 %Collinear Spinpolarized = 2
48 %Non Collinear Spinpolarized 4
57 methods (Access=public)
59 %% Contructor of the class
60 %> @brief Constructor of the class.
61 %> @return An instance of the class
64 % initializing class members
65 obj.pair_potential = [];
70 obj.ElementNumber = 0;
71 obj.ElementSymbol = '';
72 obj.LatticeVectors = [1 0 0; 0 1 0; 0 0 1];
80 %> @brief Copy the attributes of the input structure into the present
object.
81 %> @
param An instance of class identical to the present class or its superclass.
82 %> @return Returns with the modified class
83 function obj = CopyParameters(obj, param_scatter_in )
85 % checking the type of the class
86 class_type_obj = class( obj );
87 class_type_input = class( param_scatter_in );
89 if ~strcmpi( class_type_input, class_type_obj )
90 supClasses = superclasses(obj);
91 if sum( strcmp( supClasses, class_type_input ) ) == 0
92 error(['EQuUs:Structures:', class(obj), ':CopyParameters'], 'Invalid type of the input parameter');
96 % copy the attribute from the input
97 fieldnames_input = fieldnames( param_scatter_in );
98 for idx = 1:length(fieldnames_input)
99 fieldname = fieldnames_input{idx};
100 obj.(fieldname) = param_scatter_in.(fieldname);
106 end %
public methods end
Structure Atom contains the atomic identifiers of the sites.
Structure shape contains data about the geometry of the scattering region.
function Transport(Energy, B)
Calculates the conductance at a given energy value.
A class to import custom Hamiltonians provided by other codes or created manually
Base class to construct a structure containing physical parameters of the scattering region for DFT c...
Structure param contains data structures describing the physical parameters of the scattering center ...
Structure containing the coordinates and other quantum number identifiers of the sites in the Hamilto...
function structures(name)