NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ set_to_data() [3/3]

template<typename T >
void cntr::herm_matrix_timestep_view< T >::set_to_data ( herm_matrix_timestep< T > &  g)

Reset the pointers of herm_matrix_timestep_view class to the pointer given by herm_matrix_timestep g at timestep tstp

Purpose

Initializes and reset the herm_matrix_timestep_view class, where data pointer are set to g at timestep tstp. If \( tstp==-1 \) the pointer of data is set to the first element of mat and for \( tstp>-1 \) to the first element of ret. Number of time steps is set to nt, number of points on the imaginary branch to ntau, matrix rank size1 and bosonic/fermionic symmetry sig for time slice tstp. No data, only pointers are copied. Works for scalar or square-matrix contour objects

Parameters
g

The herm_matrix_timestep according to where the pointer of the class members should be reset

Definition at line 1126 of file cntr_herm_matrix_timestep_view_impl.hpp.

References cntr::herm_matrix_timestep< T >::lesptr(), cntr::herm_matrix_timestep< T >::matptr(), cntr::herm_matrix_timestep< T >::ntau(), cntr::herm_matrix_timestep< T >::retptr(), cntr::herm_matrix_timestep< T >::sig(), cntr::herm_matrix_timestep< T >::size1(), cntr::herm_matrix_timestep< T >::size2(), and cntr::herm_matrix_timestep< T >::tvptr().

1126  {
1127  tstp_ = g.tstp_;
1128  ntau_ = g.ntau();
1129  size1_ = g.size1();
1130  size2_ = g.size2();
1131  element_size_ = size1_ * size2_;
1132  sig_ = g.sig();
1133  if (tstp_ == -1) {
1134  mat_ = g.matptr(0);
1135  ret_ = 0;
1136  les_ = 0;
1137  tv_ = 0;
1138  } else if (tstp_ >= 0) {
1139  mat_ = 0;
1140  ret_ = g.retptr(0);
1141  tv_ = g.tvptr(0);
1142  les_ = g.lesptr(0);
1143  }
1144 }
+ Here is the call graph for this function: