NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library
cntr_bubble_decl.hpp
Go to the documentation of this file.
1 #ifndef CNTR_BUBBLE_DECL_H
2 #define CNTR_BUBBLE_DECL_H
3 
5 
6 namespace cntr {
7 
8 /*#########################################################################################
9  #
10  # ... useful routines to compute diagrams
11  #
12  # BUBBLE1: C_{c1,c2}(t1,t2) = ii * A_{a1,a2}(t1,t2) * B_{b2,b1}(t2,t1)
13  #
14  # BUBBLE2: C_{c1,c2}(t1,t2) = ii * A_{a1,a2}(t1,t2) * B_{b1,b2}(t1,t2)
15  #
16  # template GGA,GGB,GGC can be herm_matrix,herm_matrix_timestep,herm_matrix_timestep_view
17  #
18  # (implementation in cntr_diagram_utilities.hpp, easy to add further calls with timestep
19  # instead of green functions)
20  #########################################################################################*/
21 
22 
61 template <class GGC, class GGA, class GGB>
62 void Bubble1(int tstp, GGC &C, int c1, int c2, GGA &A, GGA &Acc, int a1, int a2, GGB &B,
63  GGB &Bcc, int b1, int b2);
64 
65 
101 template <class GGC, class GGA, class GGB>
102 void Bubble1(int tstp, GGC &C, int c1, int c2, GGA &A, int a1, int a2, GGB &B, int b1,
103  int b2);
104 
132 template <class GGC, class GGA, class GGB>
133 void Bubble1(int tstp, GGC &C, GGA &A, GGA &Acc, GGB &B, GGB &Bcc);
134 
158 template <class GGC, class GGA, class GGB> void Bubble1(int tstp, GGC &C, GGA &A, GGB &B);
159 
160 
161 
162 
163 
165 
204 template <class GGC, class GGA, class GGB>
205 void Bubble2(int tstp, GGC &C, int c1, int c2, GGA &A, GGA &Acc, int a1, int a2, GGB &B,
206  GGB &Bcc, int b1, int b2);
207 
243 template <class GGC, class GGA, class GGB>
244 void Bubble2(int tstp, GGC &C, int c1, int c2, GGA &A, int a1, int a2, GGB &B, int b1,
245  int b2);
246 
274 template <class GGC, class GGA, class GGB>
275 void Bubble2(int tstp, GGC &C, GGA &A, GGA &Acc, GGB &B, GGB &Bcc);
276 
301 template <class GGC, class GGA, class GGB> void Bubble2(int tstp, GGC &C, GGA &A, GGB &B);
303 
305 
306 // #if 0
307 // template<typename T>
308 // void Bubble1(int tstp, herm_matrix<T> &C,int c1,int c2, herm_matrix<T> &A,herm_matrix<T> &Acc,int a1,int a2,
309 // herm_matrix<T> &B,herm_matrix<T> &Bcc,int b1,int b2);
310 // template<typename T>
311 // void Bubble1(int tstp, herm_matrix<T> &C,int c1,int c2, herm_matrix<T> &A,int a1,int a2,herm_matrix<T> &B,int b1,int b2);
312 // template<typename T>
313 // void Bubble1(int tstp, herm_matrix<T> &C, herm_matrix<T> &A, herm_matrix<T> &Acc,herm_matrix<T> &B, herm_matrix<T> &Bcc);
314 // template<typename T>
315 // void Bubble1(int tstp, herm_matrix<T> &C, herm_matrix<T> &A,herm_matrix<T> &B);
316 // template<typename T>
317 // void Bubble1(int tstp, herm_matrix_timestep<T> &C,int c1,int c2, herm_matrix<T> &A,herm_matrix<T> &Acc,int a1,int a2,
318 // herm_matrix<T> &B,herm_matrix<T> &Bcc,int b1,int b2);
319 // template<typename T>
320 // void Bubble1(int tstp, herm_matrix_timestep<T> &C,int c1,int c2, herm_matrix<T> &A,int a1,int a2,herm_matrix<T> &B,int b1,int b2);
321 // template<typename T>
322 // void Bubble1(int tstp, herm_matrix_timestep<T> &C, herm_matrix<T> &A, herm_matrix<T> &Acc,herm_matrix<T> &B, herm_matrix<T> &Bcc);
323 // template<typename T>
324 // void Bubble1(int tstp, herm_matrix_timestep<T> &C, herm_matrix<T> &A,herm_matrix<T> &B);
325 // ///
326 // template<typename T>
327 // void Bubble2(int tstp, herm_matrix_timestep_view<T> &C,int c1,int c2, herm_matrix_timestep_view<T> &A, herm_matrix_timestep_view<T> &Acc,int a1,int a2,
328 // herm_matrix_timestep_view<T> &B, herm_matrix_timestep_view<T> &Bcc,int b1,int b2);
329 // template<typename T>
330 // void Bubble2(int tstp, herm_matrix_timestep_view<T> &C,int c1,int c2, herm_matrix_timestep_view<T> &A,int a1,int a2,
331 // herm_matrix_timestep_view<T> &B,int b1,int b2);
332 // template<typename T>
333 // void Bubble2(int tstp, herm_matrix_timestep_view<T> &C, herm_matrix_timestep_view<T> &A, herm_matrix_timestep_view<T> &Acc,
334 // herm_matrix_timestep_view<T> &B, herm_matrix_timestep_view<T> &Bcc);
335 // template<typename T>
336 // void Bubble2(int tstp, herm_matrix_timestep_view<T> &C, herm_matrix_timestep_view<T> &A,herm_matrix_timestep_view<T> &B);
337 // ////
338 // template<typename T>
339 // void Bubble2(int tstp, herm_matrix<T> &C,int c1,int c2, herm_matrix<T> &A, herm_matrix<T> &Acc,int a1,int a2,
340 // herm_matrix<T> &B, herm_matrix<T> &Bcc,int b1,int b2);
341 // template<typename T>
342 // void Bubble2(int tstp, herm_matrix<T> &C,int c1,int c2, herm_matrix<T> &A,int a1,int a2,herm_matrix<T> &B,int b1,int b2);
343 // template<typename T>
344 // void Bubble2(int tstp, herm_matrix<T> &C, herm_matrix<T> &A, herm_matrix<T> &Acc,herm_matrix<T> &B, herm_matrix<T> &Bcc);
345 // template<typename T>
346 // void Bubble2(int tstp, herm_matrix<T> &C, herm_matrix<T> &A,herm_matrix<T> &B);
347 // template<typename T>
348 // void Bubble2(int tstp, herm_matrix_timestep<T> &C,int c1,int c2, herm_matrix<T> &A, herm_matrix<T> &Acc,int a1,int a2,
349 // herm_matrix<T> &B, herm_matrix<T> &Bcc,int b1,int b2);
350 // template<typename T>
351 // void Bubble2(int tstp, herm_matrix_timestep<T> &C,int c1,int c2, herm_matrix<T> &A,int a1,int a2,herm_matrix<T> &B,int b1,int b2);
352 // template<typename T>
353 // void Bubble2(int tstp, herm_matrix_timestep<T> &C, herm_matrix<T> &A, herm_matrix<T> &Acc,herm_matrix<T> &B, herm_matrix<T> &Bcc);
354 // template<typename T>
355 // void Bubble2(int tstp, herm_matrix_timestep<T> &C, herm_matrix<T> &A,herm_matrix<T> &B);
356 // #endif
357 
358 } // namespace cntr
359 
360 #endif // CNTR_BUBBLE_DECL_H
void Bubble2(int tstp, GGC &C, int c1, int c2, GGA &A, GGA &Acc, int a1, int a2, GGB &B, GGB &Bcc, int b1, int b2)
Evaluate a bubble diagram ( ) from two-time contour functions at the time step; ...
void Bubble1(int tstp, GGC &C, int c1, int c2, GGA &A, GGA &Acc, int a1, int a2, GGB &B, GGB &Bcc, int b1, int b2)
Evaluate a bubble diagram ( ) from two-time contour functions at the time step; ...