QNANO
Slater_Koster_From_TB_Parameter.h
1 #ifndef QNANO_NEW_SLATER_KOSTER_FROM_TB_PARAMETER
2 #define QNANO_NEW_SLATER_KOSTER_FROM_TB_PARAMETER
3 
4 #include "orbitals/Select_Orbitals_List.h"
5 #include "orbitals/Slater_Koster.h"
6 #include "tightbinding/TB_Parameter_List.h"
7 
8 
11 public:
12  typedef double (*fct_type) (std::pair<const TB_Parameter *, int>, double, double, double, double);
13  typedef double (*fct_type_noHarrison) (std::pair<const TB_Parameter *, int>, double, double, double);
14  typedef double (*fct_type_diag) (std::pair<const TB_Parameter *, int>);
15 
16  static double s_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
17  static double s_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
18 
19 // s-p terms:
20  static double s_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
21  static double s_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
22 
23  static double s_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
24  static double s_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
25 
26  static double s_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
27  static double s_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
28 
29 //p-s terms
30  static double px_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
31  static double px_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
32 
33  static double py_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
34  static double py_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
35 
36  static double pz_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
37  static double pz_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
38 
39 //sstar-s/p terms:
40  static double sstar_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
41  static double sstar_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
42 
43  static double s_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
44  static double s_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
45 
46  static double sstar_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
47  static double sstar_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
48 
49  static double sstar_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
50  static double sstar_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
51 
52  static double sstar_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
53  static double sstar_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
54 
55  static double sstar_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
56  static double sstar_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
57 
58  static double px_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
59  static double px_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
60 
61  static double py_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
62  static double py_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
63 
64  static double pz_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
65  static double pz_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
66 
67 //p-p terms
68  static double px_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
69  static double px_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
70 
71  static double px_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
72  static double px_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
73 
74  static double px_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
75  static double px_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
76 
77  static double py_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
78  static double py_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
79 
80  static double py_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
81  static double py_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
82 
83  static double py_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
84  static double py_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
85 
86  static double pz_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
87  static double pz_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
88 
89  static double pz_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
90  static double pz_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
91 
92  static double pz_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
93  static double pz_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
94 
95 // dxy:
96  static double s_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
97  static double s_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
98 
99  static double sstar_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
100  static double sstar_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
101 
102  static double dxy_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
103  static double dxy_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
104 
105  static double dxy_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
106  static double dxy_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
107 
108  static double px_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
109  static double px_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
110 
111  static double py_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
112  static double py_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
113 
114  static double pz_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
115  static double pz_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
116 
117  static double dxy_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
118  static double dxy_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
119 
120  static double dxy_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
121  static double dxy_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
122 
123  static double dxy_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
124  static double dxy_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
125 
126 // dyz:
127  static double s_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
128  static double s_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
129 
130  static double sstar_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
131  static double sstar_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
132 
133  static double dyz_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
134  static double dyz_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
135 
136  static double dyz_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
137  static double dyz_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
138 
139  static double px_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
140  static double px_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
141 
142  static double py_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
143  static double py_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
144 
145  static double pz_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
146  static double pz_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
147 
148  static double dyz_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
149  static double dyz_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
150 
151  static double dyz_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
152  static double dyz_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
153 
154  static double dyz_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
155  static double dyz_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
156 
157 //dxz:
158  static double s_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
159  static double s_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
160 
161  static double sstar_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
162  static double sstar_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
163 
164  static double dxz_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
165  static double dxz_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
166 
167  static double dxz_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
168  static double dxz_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
169 
170  static double px_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
171  static double px_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
172 
173  static double py_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
174  static double py_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
175 
176  static double pz_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
177  static double pz_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
178 
179  static double dxz_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
180  static double dxz_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
181 
182  static double dxz_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
183  static double dxz_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
184 
185  static double dxz_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
186  static double dxz_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
187 
188 //dx2y2:
189  static double s_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
190  static double s_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
191 
192  static double sstar_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
193  static double sstar_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
194 
195  static double dx2y2_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
196  static double dx2y2_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
197 
198  static double dx2y2_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
199  static double dx2y2_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
200 
201  static double px_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
202  static double px_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
203 
204  static double py_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
205  static double py_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
206 
207  static double pz_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
208  static double pz_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
209 
210  static double dx2y2_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
211  static double dx2y2_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
212 
213  static double dx2y2_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
214  static double dx2y2_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
215 
216  static double dx2y2_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
217  static double dx2y2_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
218 
219 //dz2:
220  static double s_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
221  static double s_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
222 
223  static double sstar_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
224  static double sstar_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
225 
226  static double dz2_s_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
227  static double dz2_s(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
228 
229  static double dz2_sstar_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
230  static double dz2_sstar(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
231 
232  static double px_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
233  static double px_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
234 
235  static double py_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
236  static double py_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
237 
238  static double pz_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
239  static double pz_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
240 
241  static double dz2_px_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
242  static double dz2_px(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
243 
244  static double dz2_py_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
245  static double dz2_py(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
246 
247  static double dz2_pz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
248  static double dz2_pz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
249 
250 //d-d diag:
251  static double dxy_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
252  static double dxy_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
253 
254  static double dyz_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
255  static double dyz_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
256 
257  static double dxz_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
258  static double dxz_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
259 
260  static double dx2y2_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
261  static double dx2y2_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
262 
263  static double dz2_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
264  static double dz2_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
265 
266 //d-d offdiags:
267  static double dxy_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
268  static double dxy_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
269 
270  static double dxy_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
271  static double dxy_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
272 
273  static double dxy_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
274  static double dxy_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
275 
276  static double dxy_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
277  static double dxy_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
278 
279 //
280  static double dyz_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
281  static double dyz_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
282 
283  static double dyz_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
284  static double dyz_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
285 
286  static double dyz_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
287  static double dyz_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
288 
289  static double dyz_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
290  static double dyz_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
291 
292 //
293  static double dxz_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
294  static double dxz_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
295 
296  static double dxz_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
297  static double dxz_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
298 
299  static double dxz_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
300  static double dxz_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
301 
302  static double dxz_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
303  static double dxz_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
304 
305 //
306  static double dx2y2_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
307  static double dx2y2_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
308 
309  static double dx2y2_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
310  static double dx2y2_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
311 
312  static double dx2y2_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
313  static double dx2y2_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
314 
315  static double dx2y2_dz2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
316  static double dx2y2_dz2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
317 
318 //
319  static double dz2_dxy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
320  static double dz2_dxy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
321 
322  static double dz2_dyz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
323  static double dz2_dyz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
324 
325  static double dz2_dxz_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
326  static double dz2_dxz(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
327 
328  static double dz2_dx2y2_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
329  static double dz2_dx2y2(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
330 
331  static double dummy(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N, double d0overd);
332  static double dummy_noHarrison(std::pair<const TB_Parameter *, int> par_typ, double L, double M, double N);
333 
334 
335 //Diagonal elements:
336  static double diag_s(std::pair<const TB_Parameter *, int> par_typ);
337  static double diag_px(std::pair<const TB_Parameter *, int> par_typ);
338  static double diag_py(std::pair<const TB_Parameter *, int> par_typ);
339  static double diag_pz(std::pair<const TB_Parameter *, int> par_typ);
340  static double diag_sstar(std::pair<const TB_Parameter *, int> par_typ);
341  static double diag_dxy(std::pair<const TB_Parameter *, int> par_typ);
342  static double diag_dyz(std::pair<const TB_Parameter *, int> par_typ);
343  static double diag_dxz(std::pair<const TB_Parameter *, int> par_typ);
344  static double diag_dx2y2(std::pair<const TB_Parameter *, int> par_typ);
345  static double diag_dz2(std::pair<const TB_Parameter *, int> par_typ);
346 
347 
348  static const fct_type hoppings[20][20];
349  static fct_type get_hopping(size_t o0, size_t o1);
350 
351  static const fct_type_noHarrison hoppings_noHarrison[20][20];
352  static fct_type_noHarrison get_hopping_noHarrison(size_t o0, size_t o1);
353 
354  static const fct_type_diag diags[20];
355  static fct_type_diag get_diag(size_t o0);
356 
357 
358 };
359 
360 #endif
Associate Orbitals to Slater-Koster matrix elements.
Definition: Slater_Koster_From_TB_Parameter.h:10