NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ set_tk_from_mat()

template<typename T >
void cntr::set_tk_from_mat ( herm_matrix< T > &  G,
int  kt 

Set components of herm_matrix at t=0,1,..kt from the Matsubara component.


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

This function put contant values for t=0,1,..kt for each components.

herm_matrix to be modified


the time up to which the values are set.

Definition at line 433 of file cntr_utilities_impl.hpp.

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

433  {
434  int m,n,ntau=G.ntau(),size1=G.size1();
435  for(n=0;n<=kt;n++){
436  for(m=0;m<=ntau;m++){
437  element_set<T,LARGESIZE>(size1,G.tvptr(n,m),G.matptr(ntau-m));
438  element_smul<T,LARGESIZE>(size1,G.tvptr(n,m),std::complex<T>(0,G.sig()));
439  }
440  element_set<T,LARGESIZE>(size1,G.lesptr(n,n),G.tvptr(0,0));
441  element_set<T,LARGESIZE>(size1,G.retptr(n,n),G.matptr(0));
442  element_smul<T,LARGESIZE>(size1,G.retptr(n,n),std::complex<T>(0,1));
443  element_incr<T,LARGESIZE>(size1,G.retptr(n,n),-1,G.lesptr(0,0));
444  }
445 }
+ Here is the call graph for this function: