1 #ifndef H_DECORATOR_HEADER 2 #define H_DECORATOR_HEADER 23 Hamiltonian::const_ref get_H()
const {
return my_H;};
24 Matrix* get_m()
const {
return my_m;};
29 std::unique_ptr<pencil> get_pencil_()
const;
30 const std::string& get_pencil_name_()
const;
35 size_t layers_()
const {
return my_H->layers();};
48 virtual void Inserting(
row r,
column c, complex v)
const;
49 virtual void Adding(
row r,
column c, complex v)
const;
53 virtual void prae_create_H0()
const= 0;
54 virtual void post_create_H0()
const= 0;
55 virtual void prae_create_HI()
const= 0;
56 virtual void post_create_HI()
const= 0;
57 virtual void prae_create_HIt()
const = 0;
58 virtual void post_create_HIt()
const = 0;
61 virtual void init_Decorator() = 0;
63 Hamiltonian::ref my_H;
80 simple_Hamiltonian::const_ref get_H()
const {
return my_H;};
81 Matrix* get_m()
const {
return my_m;};
85 bool do_generalized_()
const {
return my_H->do_generalized();}
87 std::unique_ptr<pencil> get_pencil_()
const;
88 const std::string& get_pencil_name_()
const;
90 void createperiodicH0(
Matrix&)
const;
91 void createperiodicHI(
Matrix&)
const;
93 size_t layers_()
const {
return my_H->layers();};
95 int ny_layer_sh_(
size_t i)
const {
return my_H->ny_layer(i); }
96 double dx_sh_()
const {
return my_H->dx();};
97 double dy_sh_()
const {
return my_H->dy();};
98 double width_sh_()
const {
return my_H->width();};
100 virtual point_Positions::ref rxy_sh_()
const;
105 virtual void Inserting(
row r,
column c, complex v)
const;
106 virtual void Adding(
row r,
column c, complex v)
const;
110 virtual void prae_create_H0()
const= 0;
111 virtual void post_create_H0()
const= 0;
112 virtual void prae_create_HI()
const= 0;
113 virtual void post_create_HI()
const= 0;
115 void init_H_params();
116 void init_ny_dependent_H_params();
118 virtual void init_Decorator() = 0;
119 virtual void init_ny_dependent_Decorator() = 0;
121 simple_Hamiltonian::ref my_H;
The abstract base class for any Hamiltonian.
Definition: hamiltonian.hpp:44
Definition: iterators.hpp:13
int lead_system_handler() const
1=Tight binding, 2 = graphene - for modebasis
Definition: hamiltonian_decorator.hpp:76
Definition: hamiltonian_decorator.hpp:69
Definition: defect_decorator.cpp:10
complex Get(row r, column c) const
Obtain an element at a given position.
Definition: matrix.hpp:96
Base Matrix class for access to 2D number grids.
Definition: matrix.hpp:82
Definition: hamiltonian_decorator.hpp:13
The abstract base class for any periodic Hamiltonian.
Definition: hamiltonian.hpp:131
Definitions of abstract Hamiltonian base class.