NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ set_t0_from_mat()

template<typename T >
void cntr::set_t0_from_mat ( herm_matrix< T > &  G)

Set t=0 components of the two-time contour object from the Matsubara component.

Purpose

Set t=0 components of herm_matrix (retarded,lesser,left-mixing components) from the Matsubara component.

Parameters
G

herm_matrix to be modified.

Definition at line 400 of file cntr_utilities_impl.hpp.

References cntr::herm_matrix< T >::ntau(), cntr::herm_matrix< T >::sig(), and cntr::herm_matrix< T >::size1().

400  {
401  int m, ntau = G.ntau(), size1 = G.size1();
402  for (m = 0; m <= ntau; m++) {
403  element_set<T, LARGESIZE>(size1, G.tvptr(0, m), G.matptr(ntau - m));
404  element_smul<T, LARGESIZE>(size1, G.tvptr(0, m),
405  std::complex<T>(0, G.sig()));
406  }
407  element_set<T, LARGESIZE>(size1, G.lesptr(0, 0), G.tvptr(0, 0));
408  element_set<T, LARGESIZE>(size1, G.retptr(0, 0), G.matptr(0));
409  element_smul<T, LARGESIZE>(size1, G.retptr(0, 0), std::complex<T>(0, 1));
410  element_incr<T, LARGESIZE>(size1, G.retptr(0, 0), -1, G.lesptr(0, 0));
411 }
+ Here is the call graph for this function: