1 #ifndef QNANO_NEW_TB_MODEL_SLATER_KOSTER_DEFINED_ 2 #define QNANO_NEW_TB_MODEL_SLATER_KOSTER_DEFINED_ 4 #include "tightbinding/TB_Model.h" 5 #include "structure/Atom_List.h" 6 #include "structure/Neighbor_List.h" 7 #include "structure/Potential.h" 8 #include "structure/Periodic_Vecs.h" 9 #include "tightbinding/TB_Parameter_List.h" 10 #include "tightbinding/TB_Hopping_Parameter_List.h" 11 #include "orbitals/Select_Orbitals_List.h" 12 #include "tightbinding/Slater_Koster_From_TB_Parameter.h" 13 #include "tightbinding/Slater_Koster_From_TB_Hopping_Parameter.h" 14 #include "tightbinding/Surface_Passivation_Block_sp.h" 15 #include "tightbinding/Select_Diagonal_Corrections.h" 16 #include "tools/Organize_Blocks.h" 17 #include "tools/QNANO_Constants.h" 38 std::vector<std::vector<double> > potential_scale_for_orbital;
45 bool use_peierls, use_free_Zeeman;
54 bool without_spinorbit, passivate_sp, without_strain_correction;
55 bool passivate_graphene;
56 double graphene_passivation_factor;
59 void setup_blocksizes();
60 void setup_potential_scale_for_orbital(
Parameter_Map ¶m_map);
61 virtual size_t get_nr_at()
const{
return atlist.size();}
63 double peierls_phase(
const Vec3d &R1,
const Vec3d &D)
const;
65 void add_from_Surface_Passivation_Block_sp( std::vector< col_val > & col_val_vec,
double *diags,
const Select_Orbitals &orbs,
const Surface_Passivation_Block_sp &surface_passivation_block_sp,
double avg_Surface_shift,
size_t baseindex)
const;
Definition: Periodic_Vecs.h:9
Definition: Parameter_Map.h:12
Definition: Surface_Passivation_Block_sp.h:7
Atom_List atlist
List of atoms:
Definition: TB_Model_Slater_Koster.h:22
Definition: Select_Orbitals.h:11
Class to store positions and to handle operations on 3d vectors.
Definition: Vec3d.h:9
Definition: TB_Hopping_Parameter_List.h:11
Structure to store values for the potational on each atom of a given structure.
Definition: Potential.h:8
Definition: Atom_List.h:9
virtual void setup(Parameter_Map ¶m_map)
Definition: TB_Model_Slater_Koster.cc:12
Neighbor_List neilist_unrelaxed
List of neighbors with unrelaxed distance vectors; use for strain correction.
Definition: TB_Model_Slater_Koster.h:26
Definition: Neighbor_List.h:12
Definition: TB_Parameter_List.h:8
Select_Orbitals_List select
Secification of how many orbitals to use on which atom.
Definition: TB_Model_Slater_Koster.h:31
void get_row_passivate_graphene(std::vector< col_val > &col_val_vec, const int atom_index)
Definition: TB_Model_Slater_Koster.cc:491
Potential potential
Potential.
Definition: TB_Model_Slater_Koster.h:36
Definition: Organize_Blocks.h:86
Periodic_Vecs periodic_vec
Vectors for periodic boundary conditions.
Definition: TB_Model_Slater_Koster.h:34
virtual void get_Matrix_row_block(std::vector< col_val > &col_val_vec, const int atom_index)
Number of blocks.
Definition: TB_Model_Slater_Koster.cc:226
Neighbor_List neilist
List of neighbors:
Definition: TB_Model_Slater_Koster.h:24
virtual size_t get_nr_at() const
How many atoms.
Definition: TB_Model_Slater_Koster.h:61
Definition: Select_Orbitals_List.h:10
Definition: TB_Model.h:38
Definition: TB_Model_Slater_Koster.h:19