NESSi  v1.0.2
The NonEquilibrium Systems Simulation Library

◆ incr_timestep() [5/6]

template<typename T>
template<typename T >
void cntr::herm_matrix_timestep_view< T >::incr_timestep ( herm_matrix_timestep_view< T > &  g,
CPLX  alpha 
)

Increase the value of the herm_matrix_timestep_view for \(\alpha g(t) \)

Purpose

Increase the value of herm_matrix_timestep_view for a value of \(\alpha g(t)\), where \( g(t)\) is a herm_matrix_timestep_view and \(\alpha\) is a complex number If \(t>-1\) then ret,les,tv components are set, otherwise mat. Works for scalar or square-matrix contour objects.

Parameters
g

The herm_matrix_timestep_view which is added

alpha

Constant multiplication factor

Definition at line 1403 of file cntr_herm_matrix_timestep_view_impl.hpp.

1404  {
1405  assert(tstp_==g.tstp_ && ntau_ ==g.ntau_ && size1_ == g.size1_ && size2_ == g.size2_);
1406 
1407  int i, len;
1408  CPLX *x, *x0;
1409  if (tstp_ == -1) {
1410  len = (ntau_ + 1) * element_size_;
1411  x0 = mat_;
1412  x = g.mat_;
1413  HERM_MATRIX_INCR_TSTP
1414  } else {
1415  len = (tstp_ + 1) * element_size_;
1416  x0 = ret_;
1417  x = g.ret_;
1418  HERM_MATRIX_INCR_TSTP
1419  x0 = les_;
1420  x = g.les_;
1421  HERM_MATRIX_INCR_TSTP
1422  len = (ntau_ + 1) * element_size_;
1423  x0 = tv_;
1424  x = g.tv_;
1425  HERM_MATRIX_INCR_TSTP
1426  }
1427 }